From ba7201ae552ac73418039d35ee0ecd1d79c2d03c Mon Sep 17 00:00:00 2001 From: armoha Date: Sat, 11 Sep 2021 17:48:56 +0900 Subject: [PATCH 1/5] Separate expr --- eudplib/epscript/cpp/parser/epparser.lemon | 223 +- eudplib/epscript/cpp/parser/epparser.out | 27653 ++++++++++++------- 2 files changed, 17132 insertions(+), 10744 deletions(-) diff --git a/eudplib/epscript/cpp/parser/epparser.lemon b/eudplib/epscript/cpp/parser/epparser.lemon index 591b5267..2d5df015 100644 --- a/eudplib/epscript/cpp/parser/epparser.lemon +++ b/eudplib/epscript/cpp/parser/epparser.lemon @@ -466,7 +466,7 @@ exprList_nonEmpty(A) ::= funcexpr(B) LSQBRACKET LSQBRACKET numList_nonEmpty(C) R } -expr(A) ::= funcexpr(B) LSQBRACKET LSQBRACKET NUMBER(C) RSQBRACKET RSQBRACKET. [SUBSCRIPT] { +nonConstExpr(A) ::= funcexpr(B) LSQBRACKET LSQBRACKET NUMBER(C) RSQBRACKET RSQBRACKET. [SUBSCRIPT] { C->data = B->data + "[" + C->data + "]"; delete B; A = mkTokenTemp(C); @@ -480,24 +480,24 @@ exprList(A) ::= . { A = genEmpty(); } exprList(A) ::= exprList_nonEmpty(B). { A = B; } // Related to expressions -expr(A) ::= NUMBER(B). { A = B; } -expr(A) ::= KILLS(B). { +constExpr(A) ::= NUMBER(B). { A = B; } +constExpr(A) ::= KILLS(B). { B->data = "4"; A = B; } -expr(A) ::= NAME(B). { +nonConstExpr(A) ::= NAME(B). { checkIsRValue(B->data, B->line); A = B; } -expr(A)::= expr(B) PERIOD NAME(C). [MEMBER] { +nonConstExpr(A)::= nonConstExpr(B) PERIOD NAME(C). [MEMBER] { B->data = B->data + "." + C->data; delete C; A = mkTokenTemp(B); } -expr(A)::= expr(B) LSQBRACKET expr(C) RSQBRACKET. [SUBSCRIPT] { +nonConstExpr(A)::= nonConstExpr(B) LSQBRACKET expr(C) RSQBRACKET. [SUBSCRIPT] { B->data = B->data + "[" + C->data + "]"; delete C; A = mkTokenTemp(B); @@ -563,37 +563,57 @@ lambdaExprStart(A) ::= FUNCTION LPAREN typedNameList(args) RPAREN fdef_rettypes( A->data = funcname; } -expr(A) ::= lambdaExprStart(B) stmt. { +constExpr(A) ::= lambdaExprStart(B) stmt. { ps->gen.unindent(true); ps->closure.popScope(); A = mkTokenTemp(B); } +expr(A) ::= constExpr(B). { A = B; } +expr(A) ::= nonConstExpr(B). { A = B; } // Function calls -fArg(A) ::= expr(B). { A = B; } -fArg(A) ::= STRING(B). { A = B; } -fArg(A) ::= NAME(B) ASSIGN expr(C). { // Keyword argument +fNonConstArg(A) ::= nonConstExpr(B). { A = B; } +fConstArg(A) ::= constExpr(B). { A = B; } +fConstArg(A) ::= STRING(B). { A = B; } +fConstArg(A) ::= NAME(B) ASSIGN expr(C). { // Keyword argument C->data = B->data + "=" + C->data; C->type = TOKEN_TEMP; A = C; delete B; } -fArg(A) ::= NAME(B) ASSIGN STRING(C). { // Keyword argument +fConstArg(A) ::= NAME(B) ASSIGN STRING(C). { // Keyword argument C->data = B->data + "=" + C->data; C->type = TOKEN_TEMP; A = C; delete B; } +fArg(A) ::= fConstArg(B). { A = B; } +fArg(A) ::= fNonConstArg(B). { A = B; } -fArgs_nonEmpty(A) ::= fArg(B). { A = B; } -fArgs_nonEmpty(A) ::= fArgs_nonEmpty(B) COMMA fArg(C). { +fConstArgs_nonEmpty(A) ::= fConstArg(B). { A = B; } +fConstArgs_nonEmpty(A) ::= fConstArgs_nonEmpty(B) COMMA fConstArg(C). { + B->data = B->data + ", " + C->data; + B->type = TOKEN_TEMP; + A = B; + delete C; +} +fNonConstArgs_nonEmpty(A) ::= fNonConstArg(B). { A = B; } +fNonConstArgs_nonEmpty(A) ::= fConstArgs_nonEmpty(B) COMMA fNonConstArg(C). { + B->data = B->data + ", " + C->data; + B->type = TOKEN_TEMP; + A = B; + delete C; +} +fNonConstArgs_nonEmpty(A) ::= fNonConstArgs_nonEmpty(B) COMMA fArg(C). { B->data = B->data + ", " + C->data; B->type = TOKEN_TEMP; A = B; delete C; } +fArgs_nonEmpty(A) ::= fConstArgs_nonEmpty(B). { A = B; } +fArgs_nonEmpty(A) ::= fNonConstArgs_nonEmpty(B). { A = B; } fArgs(A) ::= . { A = genEmpty(); } fArgs(A) ::= fArgs_nonEmpty(B). { A = B; } @@ -611,7 +631,7 @@ funcexpr(out) ::= NAME(name) LPAREN fArgs(exprs) RPAREN. [FUNCCALL] { delete exprs; } -funcexpr(out) ::= expr(name) LPAREN fArgs(exprs) RPAREN. [FUNCCALL] { +funcexpr(out) ::= nonConstExpr(name) LPAREN fArgs(exprs) RPAREN. [FUNCCALL] { // If calling function imported from another module, add f_ prefix to function name. static std::regex prefixedFuncNameRegex("^[a-z][_a-zA-Z0-9]*"); std::string& nameStr = name->data; @@ -636,9 +656,15 @@ funcexpr(out) ::= expr(name) LPAREN fArgs(exprs) RPAREN. [FUNCCALL] { // Expressions -expr(A) ::= funcexpr(B). { A = B; } +nonConstExpr(A) ::= funcexpr(B). { A = B; } -expr(A) ::= LPAREN expr(B) RPAREN. { +constExpr(A) ::= LPAREN constExpr(B) RPAREN. { + A = genEmpty(); + A->data = "(" + B->data + ")"; + A->type = TOKEN_EXPR; + A->subToken[0] = B; +} +nonConstExpr(A) ::= LPAREN nonConstExpr(B) RPAREN. { A = genEmpty(); A->data = "(" + B->data + ")"; A->type = TOKEN_EXPR; @@ -648,53 +674,53 @@ expr(A) ::= LPAREN expr(B) RPAREN. { commaSkippable ::= COMMA. commaSkippable ::= . -expr(A) ::= LSQBRACKET exprList_nonEmpty(B) commaSkippable RSQBRACKET. { +constExpr(A) ::= LSQBRACKET exprList_nonEmpty(B) commaSkippable RSQBRACKET. { B->data = "_ARR(FlattenList([" + B->data + "]))"; A = mkTokenTemp(B); } -expr(A) ::= L2V LPAREN expr(B) RPAREN. { +nonConstExpr(A) ::= L2V LPAREN expr(B) RPAREN. { B->data = "_L2V(" + B->data + ")"; A = mkTokenTemp(B); } -expr(A) ::= MAPSTRING LPAREN STRING(B) RPAREN. { +constExpr(A) ::= MAPSTRING LPAREN STRING(B) RPAREN. { B->data = "GetStringIndex(" + B->data + ")"; A = mkTokenTemp(B); } -expr(A) ::= UNIT LPAREN STRING(B) RPAREN. { +constExpr(A) ::= UNIT LPAREN STRING(B) RPAREN. { B->data = "EncodeUnit(" + B->data + ")"; A = mkTokenTemp(B); } -expr(A) ::= SWITCH LPAREN STRING(B) RPAREN. { +constExpr(A) ::= SWITCH LPAREN STRING(B) RPAREN. { B->data = "EncodeSwitch(" + B->data + ")"; A = mkTokenTemp(B); } -expr(A) ::= LOCATION LPAREN STRING(B) RPAREN. { +constExpr(A) ::= LOCATION LPAREN STRING(B) RPAREN. { B->data = "GetLocationIndex(" + B->data + ")"; A = mkTokenTemp(B); } -expr(A) ::= STATTXTTBL LPAREN STRING(B) RPAREN. { +constExpr(A) ::= STATTXTTBL LPAREN STRING(B) RPAREN. { B->data = "EncodeTBL(" + B->data + ")"; A = mkTokenTemp(B); } -expr(A) ::= VARRAY LPAREN exprList_nonEmpty(B) commaSkippable RPAREN. { +constExpr(A) ::= VARRAY LPAREN exprList_nonEmpty(B) commaSkippable RPAREN. { B->data = "_VARR(FlattenList([" + B->data + "]))"; A = mkTokenTemp(B); } -expr(A) ::= LIST LPAREN exprList_nonEmpty(B) commaSkippable RPAREN. { +constExpr(A) ::= LIST LPAREN exprList_nonEmpty(B) commaSkippable RPAREN. { B->data = "FlattenList([" + B->data + "])"; A = mkTokenTemp(B); } // Ternary operators -expr(A) ::= expr(L) QMARK expr(B) COLON expr(C). [QMARK] { +nonConstExpr(A) ::= nonConstExpr(L) QMARK expr(B) COLON expr(C). [QMARK] { std::stringstream ss; ss << "EUDTernary"; applyNegativeOptimization(ss, L); @@ -706,38 +732,90 @@ expr(A) ::= expr(L) QMARK expr(B) COLON expr(C). [QMARK] { } // Binary operators -expr(A) ::= expr(B) PLUS expr(C). { A = binopConcat(B, "+", C); } -expr(A) ::= expr(B) MINUS expr(C). { A = binopConcat(B, "-", C); } -expr(A) ::= expr(B) MULTIPLY expr(C). { A = binopConcat(B, "*", C); } -expr(A) ::= expr(B) DIVIDE expr(C). { A = binopConcat(B, "//", C); } -expr(A) ::= expr(B) MOD expr(C). { A = binopConcat(B, "%", C); } -expr(A) ::= expr(B) LSHIFT expr(C). { +constExpr(A) ::= constExpr(B) PLUS constExpr(C). { A = binopConcat(B, "+", C); } +nonConstExpr(A) ::= constExpr(B) PLUS nonConstExpr(C). { A = binopConcat(B, "+", C); } +nonConstExpr(A) ::= nonConstExpr(B) PLUS expr(C). { A = binopConcat(B, "+", C); } +constExpr(A) ::= constExpr(B) MINUS constExpr(C). { A = binopConcat(B, "-", C); } +nonConstExpr(A) ::= constExpr(B) MINUS nonConstExpr(C). { A = binopConcat(B, "-", C); } +nonConstExpr(A) ::= nonConstExpr(B) MINUS expr(C). { A = binopConcat(B, "-", C); } +constExpr(A) ::= constExpr(B) MULTIPLY constExpr(C). { A = binopConcat(B, "*", C); } +nonConstExpr(A) ::= constExpr(B) MULTIPLY nonConstExpr(C). { A = binopConcat(B, "*", C); } +nonConstExpr(A) ::= nonConstExpr(B) MULTIPLY expr(C). { A = binopConcat(B, "*", C); } +constExpr(A) ::= constExpr(B) DIVIDE constExpr(C). { A = binopConcat(B, "//", C); } +nonConstExpr(A) ::= constExpr(B) DIVIDE nonConstExpr(C). { A = binopConcat(B, "//", C); } +nonConstExpr(A) ::= nonConstExpr(B) DIVIDE expr(C). { A = binopConcat(B, "//", C); } +constExpr(A) ::= constExpr(B) MOD constExpr(C). { A = binopConcat(B, "%", C); } +nonConstExpr(A) ::= constExpr(B) MOD nonConstExpr(C). { A = binopConcat(B, "%", C); } +nonConstExpr(A) ::= nonConstExpr(B) MOD expr(C). { A = binopConcat(B, "%", C); } +constExpr(A) ::= constExpr(B) LSHIFT constExpr(C). { C->data = "_LSH(" + B->data + "," + C->data + ")"; delete B; A = mkTokenTemp(C); } -expr(A) ::= expr(B) RSHIFT expr(C). { A = binopConcat(B, ">>", C); } -expr(A) ::= expr(B) BITAND expr(C). { A = binopConcat(B, "&", C); } -expr(A) ::= expr(B) BITOR expr(C). { A = binopConcat(B, "|", C); } -expr(A) ::= expr(B) BITXOR expr(C). { A = binopConcat(B, "^", C); } +nonConstExpr(A) ::= constExpr(B) LSHIFT nonConstExpr(C). { + C->data = "_LSH(" + B->data + "," + C->data + ")"; + delete B; + A = mkTokenTemp(C); +} +nonConstExpr(A) ::= nonConstExpr(B) LSHIFT expr(C). { + C->data = "_LSH(" + B->data + "," + C->data + ")"; + delete B; + A = mkTokenTemp(C); +} +constExpr(A) ::= constExpr(B) RSHIFT constExpr(C). { A = binopConcat(B, ">>", C); } +nonConstExpr(A) ::= constExpr(B) RSHIFT nonConstExpr(C). { A = binopConcat(B, ">>", C); } +nonConstExpr(A) ::= nonConstExpr(B) RSHIFT expr(C). { A = binopConcat(B, ">>", C); } +constExpr(A) ::= constExpr(B) BITAND constExpr(C). { A = binopConcat(B, "&", C); } +nonConstExpr(A) ::= constExpr(B) BITAND nonConstExpr(C). { A = binopConcat(B, "&", C); } +nonConstExpr(A) ::= nonConstExpr(B) BITAND expr(C). { A = binopConcat(B, "&", C); } +constExpr(A) ::= constExpr(B) BITOR constExpr(C). { A = binopConcat(B, "|", C); } +nonConstExpr(A) ::= constExpr(B) BITOR nonConstExpr(C). { A = binopConcat(B, "|", C); } +nonConstExpr(A) ::= nonConstExpr(B) BITOR expr(C). { A = binopConcat(B, "|", C); } +constExpr(A) ::= constExpr(B) BITXOR constExpr(C). { A = binopConcat(B, "^", C); } +nonConstExpr(A) ::= constExpr(B) BITXOR nonConstExpr(C). { A = binopConcat(B, "^", C); } +nonConstExpr(A) ::= nonConstExpr(B) BITXOR expr(C). { A = binopConcat(B, "^", C); } // Unary operators -expr(A) ::= PLUS expr(B). [UNARY] { B->data = "+" + B->data; A = mkTokenTemp(B); } -expr(A) ::= MINUS expr(B). [UNARY] { B->data = "-" + B->data; A = mkTokenTemp(B); } -expr(A) ::= BITNOT expr(B). [UNARY] { B->data = "~" + B->data; A = mkTokenTemp(B); } +constExpr(A) ::= PLUS constExpr(B). [UNARY] { B->data = "+" + B->data; A = mkTokenTemp(B); } +nonConstExpr(A) ::= PLUS nonConstExpr(B). [UNARY] { B->data = "+" + B->data; A = mkTokenTemp(B); } +constExpr(A) ::= MINUS constExpr(B). [UNARY] { B->data = "-" + B->data; A = mkTokenTemp(B); } +nonConstExpr(A) ::= MINUS nonConstExpr(B). [UNARY] { B->data = "-" + B->data; A = mkTokenTemp(B); } +constExpr(A) ::= BITNOT constExpr(B). [UNARY] { B->data = "~" + B->data; A = mkTokenTemp(B); } +nonConstExpr(A) ::= BITNOT nonConstExpr(B). [UNARY] { B->data = "~" + B->data; A = mkTokenTemp(B); } -expr(A) ::= expr(B) EQ expr(C). { A = binopConcat(B, "==", C); } -expr(A) ::= expr(B) NE expr(C). { A = negate(binopConcat(B, "==", C)); } +nonConstExpr(A) ::= constExpr(B) EQ expr(C). { A = binopConcat(B, "==", C); } +nonConstExpr(A) ::= nonConstExpr(B) EQ expr(C). { A = binopConcat(B, "==", C); } +nonConstExpr(A) ::= constExpr(B) NE expr(C). { A = negate(binopConcat(B, "==", C)); } +nonConstExpr(A) ::= nonConstExpr(B) NE expr(C). { A = negate(binopConcat(B, "==", C)); } -expr(A) ::= expr(B) LE expr(C). { A = binopConcat(B, "<=", C); } -expr(A) ::= expr(B) GE expr(C). { A = binopConcat(B, ">=", C); } +nonConstExpr(A) ::= constExpr(B) LE expr(C). { A = binopConcat(B, "<=", C); } +nonConstExpr(A) ::= nonConstExpr(B) LE expr(C). { A = binopConcat(B, "<=", C); } +nonConstExpr(A) ::= constExpr(B) GE expr(C). { A = binopConcat(B, ">=", C); } +nonConstExpr(A) ::= nonConstExpr(B) GE expr(C). { A = binopConcat(B, ">=", C); } -expr(A) ::= expr(B) LT expr(C). { A = negate(binopConcat(B, ">=", C)); } -expr(A) ::= expr(B) GT expr(C). { A = negate(binopConcat(B, "<=", C)); } +nonConstExpr(A) ::= constExpr(B) LT expr(C). { A = negate(binopConcat(B, ">=", C)); } +nonConstExpr(A) ::= nonConstExpr(B) LT expr(C). { A = negate(binopConcat(B, ">=", C)); } +nonConstExpr(A) ::= constExpr(B) GT expr(C). { A = negate(binopConcat(B, "<=", C)); } +nonConstExpr(A) ::= nonConstExpr(B) GT expr(C). { A = negate(binopConcat(B, "<=", C)); } -expr(A) ::= expr(B) LAND expr(C). { +nonConstExpr(A) ::= constExpr(B) LAND expr(C). { + A = genEmpty(); + A->line = C->line; + + // Generate data! + A->type = TOKEN_LAND; + A->subToken[0] = B; + A->subToken[1] = C; + + std::stringstream ss; + ss << "EUDSCAnd()"; + shortCircuitCondListGetter(ss, A, TOKEN_LAND); + ss << "()"; + A->data = ss.str(); +} +nonConstExpr(A) ::= nonConstExpr(B) LAND expr(C). { A = genEmpty(); A->line = C->line; @@ -754,7 +832,22 @@ expr(A) ::= expr(B) LAND expr(C). { } // OR operation is very costly, so we make some deliberate choice! -expr(A) ::= expr(B) LOR expr(C). { +nonConstExpr(A) ::= constExpr(B) LOR expr(C). { + A = genEmpty(); + A->line = C->line; + + // Generate data! + A->type = TOKEN_LOR; + A->subToken[0] = B; + A->subToken[1] = C; + + std::stringstream ss; + ss << "EUDSCOr()"; + shortCircuitCondListGetter(ss, A, TOKEN_LOR); + ss << "()"; + A->data = ss.str(); +} +nonConstExpr(A) ::= nonConstExpr(B) LOR expr(C). { A = genEmpty(); A->line = C->line; @@ -770,7 +863,8 @@ expr(A) ::= expr(B) LOR expr(C). { A->data = ss.str(); } -expr(A) ::= LNOT expr(B). { A = negate(B); } +constExpr(A) ::= LNOT constExpr(B). [UNARY] { A = negate(B); } +nonConstExpr(A) ::= LNOT nonConstExpr(B). [UNARY] { A = negate(B); } // Statements @@ -1225,25 +1319,50 @@ return_stmt ::= RETURN(X) exprList(exprs). { // Trigger statements -expr(A) ::= CONDITIONNAME(B) LPAREN fArgs(C) RPAREN. { +constExpr(A) ::= CONDITIONNAME(B) LPAREN fArgs(C) RPAREN. { B->data = B->data + "(" + C->data + ")"; delete C; A = mkTokenTemp(B); } -expr(A) ::= KILLS(B) LPAREN fArgs(C) RPAREN. { +constExpr(A) ::= KILLS(B) LPAREN fArgs(C) RPAREN. { B->data = B->data + "(" + C->data + ")"; delete C; A = mkTokenTemp(B); } -actionStmt ::= ACTIONNAME(A) LPAREN fArgs(B) RPAREN SEMICOLON. { +actionStmt ::= ACTIONNAME(A) LPAREN fNonConstArgs_nonEmpty(B) RPAREN SEMICOLON. { writeTraceInfo(ps->gen, A); ps->gen << "DoActions(" << A->data << "(" << B->data << "))" << std::endl; delete A; delete B; } -expr(A) ::= ACTIONNAME(B) LPAREN fArgs(C) RPAREN. { +constAction(A) ::= ACTIONNAME(B) LPAREN fConstArgs_nonEmpty(C) RPAREN SEMICOLON. { + B->data = B->data + "(" + C->data + "),\n"; + delete C; + A = mkTokenTemp(B); +} +constAction(A) ::= ACTIONNAME(B) LPAREN RPAREN SEMICOLON. { + B->data = B->data + "(),\n"; + A = mkTokenTemp(B); +} +constActionList(A) ::= constAction(B). { A = B; } +constActionList(A) ::= constActionList(B) constAction(C). { + B->data = B->data + C->data; + A = B; + delete C; +} +actionStmt ::= constActionList(A). { + writeTraceInfo(ps->gen, A); + ps->gen << "DoActions(" << std::endl; + ps->gen.indent(); + ps->gen << A->data; + ps->gen.unindent(false); + ps->gen << ")" << std::endl; + delete A; +} + +constExpr(A) ::= ACTIONNAME(B) LPAREN fArgs(C) RPAREN. { B->data = B->data + "(" + C->data + ")"; delete C; A = mkTokenTemp(B); diff --git a/eudplib/epscript/cpp/parser/epparser.out b/eudplib/epscript/cpp/parser/epparser.out index 853e7cee..1132015b 100644 --- a/eudplib/epscript/cpp/parser/epparser.out +++ b/eudplib/epscript/cpp/parser/epparser.out @@ -35,51 +35,86 @@ State 1: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -136,91 +171,100 @@ State 1: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 302 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 335 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 2: fdef_chunk ::= fdef_header * stmt @@ -249,51 +293,86 @@ State 2: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -350,91 +429,100 @@ State 2: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 306 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 339 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 3: stmt ::= * error SEMICOLON @@ -462,51 +550,86 @@ State 3: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -564,91 +687,100 @@ State 3: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 318 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 352 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 4: stmt ::= * error SEMICOLON @@ -676,51 +808,86 @@ State 4: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -778,91 +945,100 @@ State 4: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 327 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 372 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 5: stmt ::= * error SEMICOLON @@ -890,51 +1066,86 @@ State 5: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -992,91 +1203,100 @@ State 5: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 329 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 374 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 6: stmt ::= * error SEMICOLON @@ -1104,51 +1324,86 @@ State 6: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -1206,91 +1461,100 @@ State 6: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 342 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 387 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 7: stmt ::= * error SEMICOLON @@ -1318,51 +1582,86 @@ State 7: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -1420,91 +1719,100 @@ State 7: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 348 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 395 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 8: stmt ::= * error SEMICOLON @@ -1532,51 +1840,86 @@ State 8: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -1634,91 +1977,100 @@ State 8: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 350 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 398 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 9: stmt ::= * error SEMICOLON @@ -1746,51 +2098,86 @@ State 9: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -1848,91 +2235,100 @@ State 9: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 353 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 402 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 10: stmt ::= * error SEMICOLON @@ -1960,51 +2356,86 @@ State 10: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2062,91 +2493,100 @@ State 10: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 354 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 403 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 11: lbracket ::= * LBRACKET @@ -2178,51 +2618,86 @@ State 11: bodyStmtList ::= * bodyStmt bodyStmtList ::= * bodyStmtList bodyStmt bodyStmtList ::= * bodyStmtList error - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2279,91 +2754,100 @@ State 11: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 275 - vdef_stmt shift 274 - blockStmt shift 399 - bodyStmt shift 345 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 308 + vdef_stmt shift 307 + blockStmt shift 504 + bodyStmt shift 391 lbracket shift 11 - blockStmtSub shift 118 + blockStmtSub shift 155 bodyStmtList shift 17 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 {default} reduce 40 State 12: @@ -2392,52 +2876,87 @@ State 12: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - expr ::= lambdaExprStart * stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= lambdaExprStart * stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2494,91 +3013,100 @@ State 12: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 276 - vdef_stmt shift 274 - blockStmt shift 399 - stmt shift 317 - bodyStmt shift 404 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 309 + vdef_stmt shift 307 + blockStmt shift 504 + stmt shift 351 + bodyStmt shift 509 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 State 13: lbracket ::= * LBRACKET @@ -2606,51 +3134,86 @@ State 13: bodyStmt ::= * return_stmt SEMICOLON bodyStmtList ::= bodyStmtList * bodyStmt bodyStmtList ::= bodyStmtList * error - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2689,7 +3252,7 @@ State 13: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (184) default_chunk ::= default_clause bodyStmtList * + (227) default_chunk ::= default_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -2708,91 +3271,100 @@ State 13: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 380 - vdef_stmt shift 274 - blockStmt shift 399 - bodyStmt shift 381 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 485 + vdef_stmt shift 307 + blockStmt shift 504 + bodyStmt shift 486 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 - {default} reduce 184 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 + {default} reduce 227 State 14: lbracket ::= * LBRACKET @@ -2821,51 +3393,86 @@ State 14: bodyStmtList ::= * bodyStmt bodyStmtList ::= * bodyStmtList bodyStmt bodyStmtList ::= * bodyStmtList error - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2904,7 +3511,7 @@ State 14: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (183) default_chunk ::= default_clause * + (226) default_chunk ::= default_clause * default_chunk ::= default_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -2924,91 +3531,100 @@ State 14: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - vdef_stmt shift 274 - blockStmt shift 399 - bodyStmt shift 345 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + vdef_stmt shift 307 + blockStmt shift 504 + bodyStmt shift 391 lbracket shift 11 - blockStmtSub shift 118 + blockStmtSub shift 155 bodyStmtList shift 13 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 - {default} reduce 183 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 + {default} reduce 226 State 15: lbracket ::= * LBRACKET @@ -3036,51 +3652,86 @@ State 15: bodyStmt ::= * return_stmt SEMICOLON bodyStmtList ::= bodyStmtList * bodyStmt bodyStmtList ::= bodyStmtList * error - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3119,7 +3770,7 @@ State 15: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (179) case_chunk ::= case_clause bodyStmtList * + (222) case_chunk ::= case_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3138,91 +3789,100 @@ State 15: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 380 - vdef_stmt shift 274 - blockStmt shift 399 - bodyStmt shift 381 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 485 + vdef_stmt shift 307 + blockStmt shift 504 + bodyStmt shift 486 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 - {default} reduce 179 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 + {default} reduce 222 State 16: lbracket ::= * LBRACKET @@ -3251,51 +3911,86 @@ State 16: bodyStmtList ::= * bodyStmt bodyStmtList ::= * bodyStmtList bodyStmt bodyStmtList ::= * bodyStmtList error - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3334,7 +4029,7 @@ State 16: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (178) case_chunk ::= case_clause * + (221) case_chunk ::= case_clause * case_chunk ::= case_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -3354,91 +4049,100 @@ State 16: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - vdef_stmt shift 274 - blockStmt shift 399 - bodyStmt shift 345 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + vdef_stmt shift 307 + blockStmt shift 504 + bodyStmt shift 391 lbracket shift 11 - blockStmtSub shift 118 + blockStmtSub shift 155 bodyStmtList shift 15 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 - {default} reduce 178 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 + {default} reduce 221 State 17: lbracket ::= * LBRACKET @@ -3467,51 +4171,86 @@ State 17: bodyStmt ::= * return_stmt SEMICOLON bodyStmtList ::= bodyStmtList * bodyStmt bodyStmtList ::= bodyStmtList * error - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3568,90 +4307,99 @@ State 17: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= * ACTIONNAME LPAREN fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - SEMICOLON shift 398 - NAME shift 157 - FUNCTION shift 278 - LBRACKET shift 403 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - STATIC shift 231 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= * constAction + constActionList ::= * constActionList constAction + actionStmt ::= * constActionList + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + SEMICOLON shift 503 + NAME shift 162 + FUNCTION shift 311 + LBRACKET shift 508 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + STATIC shift 262 + CONST shift 148 INC shift 37 DEC shift 36 - ONCE shift 355 - IF shift 351 - SWITCHCASE shift 220 - WHILE shift 343 - FOR shift 214 - FOREACH shift 209 - CONTINUE shift 326 - BREAK shift 325 - RETURN shift 29 - CONDITIONNAME shift 239 - ACTIONNAME shift 205 - error shift 380 - vdef_stmt shift 274 - blockStmt shift 399 - bodyStmt shift 381 + ONCE shift 405 + IF shift 400 + SWITCHCASE shift 249 + WHILE shift 389 + FOR shift 243 + FOREACH shift 237 + CONTINUE shift 371 + BREAK shift 370 + RETURN shift 30 + CONDITIONNAME shift 272 + ACTIONNAME shift 233 + error shift 485 + vdef_stmt shift 307 + blockStmt shift 504 + bodyStmt shift 486 lbracket shift 11 - blockStmtSub shift 118 - vdefAssignStatic_stmt shift 273 - vdefAssign_stmt shift 272 - cdef_stmt shift 271 - assign_stmt shift 270 - funcexprStmt shift 269 - actionStmt shift 391 - once_stmt shift 390 - if_stmt shift 389 - while_stmt shift 388 - for_stmt shift 387 - foreach_stmt shift 386 - switchcase_stmt shift 385 - continue_stmt shift 268 - break_stmt shift 267 - return_stmt shift 266 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - once_start shift 227 - once_header shift 226 - once_block shift 352 + blockStmtSub shift 155 + vdefAssignStatic_stmt shift 306 + vdefAssign_stmt shift 305 + cdef_stmt shift 304 + assign_stmt shift 303 + funcexprStmt shift 302 + actionStmt shift 496 + once_stmt shift 495 + if_stmt shift 494 + while_stmt shift 493 + for_stmt shift 492 + foreach_stmt shift 491 + switchcase_stmt shift 490 + continue_stmt shift 301 + break_stmt shift 300 + return_stmt shift 299 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + once_start shift 256 + once_header shift 255 + once_block shift 401 once_nocond shift 9 - if_start shift 225 - if_header shift 224 - if_block shift 98 - switchcase_header shift 219 - switchcase_block shift 217 - while_start shift 216 - while_header shift 215 + if_start shift 254 + if_header shift 253 + if_block shift 119 + switchcase_header shift 248 + switchcase_block shift 246 + while_start shift 245 + while_header shift 244 for_opener shift 19 - for_header1 shift 49 + for_header1 shift 48 for_header2 shift 21 - for_header shift 210 - foreach_opener shift 110 - foreach_header shift 207 + for_header shift 238 + foreach_opener shift 147 + foreach_header shift 235 + constAction shift 365 + constActionList shift 146 {default} reduce 41 State 18: @@ -3692,75 +4440,110 @@ State 18: cdef_global_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty $ reduce 0 - IMPORT shift 105 - FUNCTION shift 290 - OBJECT shift 196 - LBRACKET shift 403 - VAR shift 107 - CONST shift 106 - error shift 427 - chunk shift 428 - relimp_chunk shift 426 - import_chunk shift 299 - fdef_chunk shift 424 - fdecl_chunk shift 423 - object_chunk shift 422 - vdef_stmt shift 298 - vdefAssign_global_stmt shift 297 - cdef_global_stmt shift 296 - blockStmt shift 418 - relimp_start shift 186 - relimp_path shift 175 + IMPORT shift 141 + FUNCTION shift 323 + OBJECT shift 220 + LBRACKET shift 508 + VAR shift 143 + CONST shift 142 + error shift 534 + chunk shift 535 + relimp_chunk shift 533 + import_chunk shift 332 + fdef_chunk shift 531 + fdecl_chunk shift 530 + object_chunk shift 529 + vdef_stmt shift 331 + vdefAssign_global_stmt shift 330 + cdef_global_stmt shift 329 + blockStmt shift 525 + relimp_start shift 210 + relimp_path shift 195 fdef_header shift 2 - object_body shift 101 + object_body shift 137 lbracket shift 11 - blockStmtSub shift 118 + blockStmtSub shift 155 State 19: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3791,94 +4574,131 @@ State 19: for_init_stmt_nonEmpty ::= * assign_stmt for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty for_init_stmt ::= * for_init_stmt_nonEmpty - (199) for_init_stmt ::= * + (242) for_init_stmt ::= * for_header1 ::= for_opener * for_init_stmt SEMICOLON - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 157 - FUNCTION shift 278 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 162 + FUNCTION shift 311 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONST shift 148 INC shift 37 DEC shift 36 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - vdef_stmt shift 340 - vdefAssign_stmt shift 339 - cdef_stmt shift 338 - assign_stmt shift 337 - expr shift 143 - funcexpr shift 286 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - for_init_stmt_nonEmpty shift 213 - for_init_stmt shift 212 - {default} reduce 199 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + vdef_stmt shift 385 + vdefAssign_stmt shift 384 + cdef_stmt shift 383 + assign_stmt shift 382 + expr shift 204 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + for_init_stmt_nonEmpty shift 242 + for_init_stmt shift 241 + {default} reduce 242 State 20: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3909,91 +4729,128 @@ State 20: for_init_stmt_nonEmpty ::= * assign_stmt for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 157 - FUNCTION shift 278 - VAR shift 113 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONST shift 111 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 162 + FUNCTION shift 311 + VAR shift 150 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONST shift 148 INC shift 37 DEC shift 36 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - vdef_stmt shift 340 - vdefAssign_stmt shift 339 - cdef_stmt shift 338 - assign_stmt shift 337 - expr shift 143 - funcexpr shift 286 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - for_init_stmt_nonEmpty shift 336 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + vdef_stmt shift 385 + vdefAssign_stmt shift 384 + cdef_stmt shift 383 + assign_stmt shift 382 + expr shift 204 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + for_init_stmt_nonEmpty shift 381 State 21: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr lvalue ::= * NAME lvalue ::= * expr LSQBRACKET expr RSQBRACKET lvalue ::= * expr PERIOD NAME @@ -4018,92 +4875,262 @@ State 21: for_action_stmt_nonEmpty ::= * funcexprStmt for_action_stmt_nonEmpty ::= * assign_stmt for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty - (203) for_action_stmt ::= * + (246) for_action_stmt ::= * for_action_stmt ::= * for_action_stmt_nonEmpty for_header ::= for_header2 * for_action_stmt - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 157 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 162 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 INC shift 37 DEC shift 36 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - assign_stmt shift 332 - funcexprStmt shift 333 - expr shift 143 - funcexpr shift 168 - lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - for_action_stmt_nonEmpty shift 211 - for_action_stmt shift 330 - {default} reduce 203 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + assign_stmt shift 377 + funcexprStmt shift 378 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + for_action_stmt_nonEmpty shift 239 + for_action_stmt shift 375 + {default} reduce 246 State 22: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * nonConstExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (102) fArgs ::= * + fArgs ::= * fArgs_nonEmpty + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= ACTIONNAME LPAREN * fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 209 + FUNCTION shift 311 + RPAREN shift 230 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 158 + constExpr shift 160 + lambdaExprStart shift 12 + fNonConstArg shift 463 + fConstArg shift 466 + fConstArgs_nonEmpty shift 200 + fNonConstArgs_nonEmpty shift 199 + fArgs_nonEmpty shift 459 + fArgs shift 268 + +State 23: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr lvalue ::= * NAME lvalue ::= * expr LSQBRACKET expr RSQBRACKET lvalue ::= * expr PERIOD NAME @@ -4129,5567 +5156,10351 @@ State 22: for_action_stmt_nonEmpty ::= * assign_stmt for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA * for_action_stmt_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 157 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 162 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 INC shift 37 DEC shift 36 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - assign_stmt shift 332 - funcexprStmt shift 333 - expr shift 143 - funcexpr shift 168 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + assign_stmt shift 377 + funcexprStmt shift 378 + expr shift 204 + funcexpr shift 183 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 - lvalue shift 160 - lvalueList_nonEmpty shift 180 - for_action_stmt_nonEmpty shift 331 - -State 23: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - fArg ::= * expr - fArg ::= * STRING - fArg ::= * NAME ASSIGN expr - fArg ::= * NAME ASSIGN STRING - fArgs_nonEmpty ::= * fArg - fArgs_nonEmpty ::= * fArgs_nonEmpty COMMA fArg - (92) fArgs ::= * - fArgs ::= * fArgs_nonEmpty - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= ACTIONNAME LPAREN * fArgs RPAREN SEMICOLON - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - expr ::= ACTIONNAME LPAREN * fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 185 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - STRING shift 368 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 146 - funcexpr shift 286 - lambdaExprStart shift 12 - fArg shift 367 - fArgs_nonEmpty shift 238 - fArgs shift 204 - {default} reduce 92 + lvalue shift 163 + lvalueList_nonEmpty shift 203 + for_action_stmt_nonEmpty shift 376 State 24: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - fArg ::= * expr - fArg ::= * STRING - fArg ::= * NAME ASSIGN expr - fArg ::= * NAME ASSIGN STRING - fArgs_nonEmpty ::= * fArg - fArgs_nonEmpty ::= * fArgs_nonEmpty COMMA fArg - (92) fArgs ::= * + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * nonConstExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (102) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - expr ::= ACTIONNAME LPAREN * fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 185 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - STRING shift 368 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 146 - funcexpr shift 286 - lambdaExprStart shift 12 - fArg shift 367 - fArgs_nonEmpty shift 238 - fArgs shift 236 - {default} reduce 92 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 209 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 158 + constExpr shift 160 + lambdaExprStart shift 12 + fNonConstArg shift 463 + fConstArg shift 466 + fConstArgs_nonEmpty shift 270 + fNonConstArgs_nonEmpty shift 269 + fArgs_nonEmpty shift 459 + fArgs shift 268 + {default} reduce 102 State 25: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - fArg ::= * expr - fArg ::= * STRING - fArg ::= * NAME ASSIGN expr - fArg ::= * NAME ASSIGN STRING - fArgs_nonEmpty ::= * fArg - fArgs_nonEmpty ::= * fArgs_nonEmpty COMMA fArg - (92) fArgs ::= * + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * nonConstExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (102) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= CONDITIONNAME LPAREN * fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 185 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - STRING shift 368 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 146 - funcexpr shift 286 - lambdaExprStart shift 12 - fArg shift 367 - fArgs_nonEmpty shift 238 - fArgs shift 235 - {default} reduce 92 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 209 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 158 + constExpr shift 160 + lambdaExprStart shift 12 + fNonConstArg shift 463 + fConstArg shift 466 + fConstArgs_nonEmpty shift 270 + fNonConstArgs_nonEmpty shift 269 + fArgs_nonEmpty shift 459 + fArgs shift 267 + {default} reduce 102 State 26: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - fArg ::= * expr - fArg ::= * STRING - fArg ::= * NAME ASSIGN expr - fArg ::= * NAME ASSIGN STRING - fArgs_nonEmpty ::= * fArg - fArgs_nonEmpty ::= * fArgs_nonEmpty COMMA fArg - (92) fArgs ::= * + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * nonConstExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (102) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - funcexpr ::= expr LPAREN * fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 185 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - STRING shift 368 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 146 - funcexpr shift 286 - lambdaExprStart shift 12 - fArg shift 367 - fArgs_nonEmpty shift 238 - fArgs shift 199 - {default} reduce 92 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 209 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 158 + constExpr shift 160 + lambdaExprStart shift 12 + fNonConstArg shift 463 + fConstArg shift 466 + fConstArgs_nonEmpty shift 270 + fNonConstArgs_nonEmpty shift 269 + fArgs_nonEmpty shift 459 + fArgs shift 224 + {default} reduce 102 State 27: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - fArg ::= * expr - fArg ::= * STRING - fArg ::= * NAME ASSIGN expr - fArg ::= * NAME ASSIGN STRING - fArgs_nonEmpty ::= * fArg - fArgs_nonEmpty ::= * fArgs_nonEmpty COMMA fArg - (92) fArgs ::= * + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * nonConstExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (102) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= NAME LPAREN * fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 185 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - STRING shift 368 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 146 - funcexpr shift 286 - lambdaExprStart shift 12 - fArg shift 367 - fArgs_nonEmpty shift 238 - fArgs shift 198 - {default} reduce 92 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 209 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 158 + constExpr shift 160 + lambdaExprStart shift 12 + fNonConstArg shift 463 + fConstArg shift 466 + fConstArgs_nonEmpty shift 270 + fNonConstArgs_nonEmpty shift 269 + fArgs_nonEmpty shift 459 + fArgs shift 222 + {default} reduce 102 State 28: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - fArg ::= * expr - fArg ::= * STRING - fArg ::= * NAME ASSIGN expr - fArg ::= * NAME ASSIGN STRING - fArgs_nonEmpty ::= * fArg - fArgs_nonEmpty ::= * fArgs_nonEmpty COMMA fArg - (92) fArgs ::= * + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * nonConstExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (102) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= KILLS LPAREN * fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 185 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - STRING shift 368 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 146 - funcexpr shift 286 - lambdaExprStart shift 12 - fArg shift 367 - fArgs_nonEmpty shift 238 - fArgs shift 197 - {default} reduce 92 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= KILLS LPAREN * fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 209 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 158 + constExpr shift 160 + lambdaExprStart shift 12 + fNonConstArg shift 463 + fConstArg shift 466 + fConstArgs_nonEmpty shift 270 + fNonConstArgs_nonEmpty shift 269 + fArgs_nonEmpty shift 459 + fArgs shift 221 + {default} reduce 102 State 29: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * nonConstExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fArg ::= * fConstArg + fArg ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 209 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 158 + constExpr shift 160 + lambdaExprStart shift 12 + fNonConstArg shift 461 + fConstArg shift 462 + fArg shift 460 + +State 30: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr (77) exprList ::= * exprList ::= * exprList_nonEmpty - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr return_stmt ::= RETURN * exprList - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 206 - expr shift 142 - funcexpr shift 264 - exprList shift 324 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 234 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + exprList shift 369 + constExpr shift 161 lambdaExprStart shift 12 {default} reduce 77 -State 30: - case_start ::= * CASE - case_clause ::= * case_start exprList_nonEmpty COLON - case_chunk ::= * case_clause - case_chunk ::= * case_clause bodyStmtList - case_chunks ::= case_chunks * case_chunk - default_clause ::= * DEFAULT COLON - default_chunk ::= * default_clause - default_chunk ::= * default_clause bodyStmtList - switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * default_chunk - (186) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * - - CASE shift 347 - DEFAULT shift 202 - case_start shift 35 - case_clause shift 16 - case_chunk shift 322 - default_clause shift 14 - default_chunk shift 320 - {default} reduce 186 - State 31: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - fArg ::= * expr - fArg ::= * STRING - fArg ::= * NAME ASSIGN expr - fArg ::= * NAME ASSIGN STRING - fArgs_nonEmpty ::= fArgs_nonEmpty COMMA * fArg + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * nonConstExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fNonConstArg funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 185 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - STRING shift 368 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 146 - funcexpr shift 286 - lambdaExprStart shift 12 - fArg shift 366 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 209 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 158 + constExpr shift 160 + lambdaExprStart shift 12 + fNonConstArg shift 464 + fConstArg shift 465 State 32: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 188 - expr shift 142 - funcexpr shift 264 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 212 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 33: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 189 - expr shift 142 - funcexpr shift 264 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 213 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 34: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr foreach_header ::= foreach_opener nameList_nonEmpty COLON * exprList_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 208 - expr shift 142 - funcexpr shift 264 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 236 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 35: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr case_clause ::= case_start * exprList_nonEmpty COLON - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 179 - expr shift 142 - funcexpr shift 264 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 202 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 36: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr lvalue ::= * NAME lvalue ::= * expr LSQBRACKET expr RSQBRACKET lvalue ::= * expr PERIOD NAME assign_stmt ::= DEC * lvalue - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 157 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 143 - funcexpr shift 286 - lambdaExprStart shift 12 - lvalue shift 356 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 162 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 204 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 406 State 37: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr lvalue ::= * NAME lvalue ::= * expr LSQBRACKET expr RSQBRACKET lvalue ::= * expr PERIOD NAME assign_stmt ::= INC * lvalue - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 157 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 143 - funcexpr shift 286 - lambdaExprStart shift 12 - lvalue shift 357 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 162 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 204 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 407 State 38: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr assign_stmt ::= lvalueList_nonEmpty ASSIGN * exprList_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 228 - expr shift 142 - funcexpr shift 264 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 257 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 39: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr lvalue ::= * NAME lvalue ::= * expr LSQBRACKET expr RSQBRACKET lvalue ::= * expr PERIOD NAME lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA * lvalue - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 157 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 143 - funcexpr shift 286 - lambdaExprStart shift 12 - lvalue shift 358 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 162 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 204 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + lvalue shift 408 State 40: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr cdef_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 229 - expr shift 142 - funcexpr shift 264 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 260 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 41: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 230 - expr shift 142 - funcexpr shift 264 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 261 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 42: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 232 - expr shift 142 - funcexpr shift 264 + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 263 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 43: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= LIST LPAREN * exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 114 - expr shift 142 - funcexpr shift 264 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= LIST LPAREN * exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 151 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 44: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= VARRAY LPAREN * exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 115 - expr shift 142 - funcexpr shift 264 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= VARRAY LPAREN * exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 152 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 45: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= LSQBRACKET * exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 116 - expr shift 142 - funcexpr shift 264 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= LSQBRACKET * exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 153 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 46: fdef_rettypes ::= COLON * exprList_nonEmpty exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - exprList_nonEmpty shift 287 - expr shift 142 - funcexpr shift 264 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + exprList_nonEmpty shift 320 + expr shift 481 + funcexpr shift 298 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 47: - case_start ::= * CASE - case_clause ::= * case_start exprList_nonEmpty COLON - case_chunk ::= * case_clause - case_chunk ::= * case_clause bodyStmtList - case_chunks ::= * case_chunks case_chunk - case_chunks ::= * case_chunk - switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks default_chunk - switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks - (187) switchcase_block ::= switchcase_header RPAREN LBRACKET * - - CASE shift 347 - case_start shift 35 - case_clause shift 16 - case_chunk shift 319 - case_chunks shift 30 - {default} reduce 187 + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr + fConstArg ::= NAME ASSIGN * expr + fConstArg ::= NAME ASSIGN * STRING + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 343 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 344 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 State 48: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt - fArg ::= NAME ASSIGN * expr - fArg ::= NAME ASSIGN * STRING + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - STRING shift 311 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 125 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + for_header2 ::= for_header1 * expr SEMICOLON + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 240 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 49: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - for_header2 ::= for_header1 * expr SEMICOLON - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 120 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + while_header ::= while_start LPAREN * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 388 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 50: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - while_header ::= while_start LPAREN * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 126 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + switchcase_header ::= SWITCHCASE LPAREN * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 394 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 51: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - switchcase_header ::= SWITCHCASE LPAREN * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 127 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + elif_header ::= elif_start LPAREN * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 396 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 52: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - elif_header ::= elif_start LPAREN * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 128 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + if_header ::= if_start LPAREN * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 399 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 53: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - if_header ::= if_start LPAREN * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 129 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + once_header ::= once_start LPAREN * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 404 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 54: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - once_header ::= once_start LPAREN * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 130 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue IBXR * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 409 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 55: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue IBXR * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 131 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue IBOR * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 410 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 56: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue IBOR * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 132 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue IBND * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 411 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 57: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue IBND * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 133 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue IRSH * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 412 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 58: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue IRSH * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 134 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue ILSH * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 413 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 59: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue ILSH * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 135 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue IMOD * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 414 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 60: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue IMOD * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 136 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue IDIV * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 415 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 61: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue IDIV * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 137 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue IMUL * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 416 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 62: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue IMUL * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 138 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue ISUB * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 417 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 63: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue ISUB * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 139 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue IADD * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 418 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 64: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue IADD * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 140 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + assign_stmt ::= lvalue ASSIGN * expr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 421 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 65: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - assign_stmt ::= lvalue ASSIGN * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 141 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + lvalue ::= expr LSQBRACKET * expr RSQBRACKET + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 259 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 66: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= LNOT * expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 149 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + nonConstExpr ::= nonConstExpr QMARK expr COLON * expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 426 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 67: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= BITNOT * expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 169 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= constExpr LOR * expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 435 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 68: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= MINUS * expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 170 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= constExpr LAND * expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 436 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 69: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= PLUS * expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 171 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= constExpr GT * expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 437 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 70: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= L2V LPAREN * expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 121 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= constExpr LT * expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 438 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 71: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - (99) commaSkippable ::= COMMA * - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 147 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= constExpr GE * expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 439 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 - {default} reduce 99 State 72: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= LPAREN * expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 122 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= constExpr LE * expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 440 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 73: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - expr ::= expr LSQBRACKET * expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - lvalue ::= expr LSQBRACKET * expr RSQBRACKET - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 123 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= constExpr NE * expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 441 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 74: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= expr LOR * expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 148 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= constExpr EQ * expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 442 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 75: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= expr LAND * expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 150 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + nonConstExpr ::= nonConstExpr LOR * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 446 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 76: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= expr GT * expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 151 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= nonConstExpr LAND * expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 447 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 77: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= expr LT * expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 152 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= nonConstExpr GT * expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 448 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 78: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= expr GE * expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 153 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= nonConstExpr LT * expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 449 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 79: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= expr LE * expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 154 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= nonConstExpr GE * expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 450 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 80: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= expr NE * expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 155 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= nonConstExpr LE * expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 451 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 81: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= expr EQ * expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 156 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= nonConstExpr NE * expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 452 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 82: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= expr BITXOR * expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 162 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= nonConstExpr EQ * expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 453 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 83: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= expr BITOR * expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 161 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + nonConstExpr ::= nonConstExpr BITXOR * expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 454 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 84: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= expr BITAND * expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 163 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + nonConstExpr ::= nonConstExpr BITOR * expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 455 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 85: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= expr RSHIFT * expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 164 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + nonConstExpr ::= nonConstExpr BITAND * expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 456 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 86: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= expr LSHIFT * expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 165 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + nonConstExpr ::= nonConstExpr RSHIFT * expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 457 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 87: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= expr MOD * expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 172 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + nonConstExpr ::= nonConstExpr LSHIFT * expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 468 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 88: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= expr DIVIDE * expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 173 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + nonConstExpr ::= nonConstExpr MOD * expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 469 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 89: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= expr MULTIPLY * expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 174 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + nonConstExpr ::= nonConstExpr DIVIDE * expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 470 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 90: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= expr MINUS * expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 166 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + nonConstExpr ::= nonConstExpr MULTIPLY * expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 471 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 91: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= expr PLUS * expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 167 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + nonConstExpr ::= nonConstExpr MINUS * expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 472 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 92: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= expr QMARK expr COLON * expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 144 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= L2V LPAREN * expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 292 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 93: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= expr QMARK * expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 124 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + (110) commaSkippable ::= COMMA * + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 514 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 + {default} reduce 110 State 94: - typedName ::= NAME COLON * expr - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 145 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + nonConstExpr ::= nonConstExpr PLUS * expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 428 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 95: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET - expr ::= expr LSQBRACKET * expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 119 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + nonConstExpr ::= nonConstExpr QMARK * expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 265 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 96: - expr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr - expr ::= * NUMBER - expr ::= * KILLS - expr ::= * NAME - expr ::= * expr PERIOD NAME - expr ::= * expr LSQBRACKET expr RSQBRACKET + typedName ::= NAME COLON * expr + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - expr ::= * lambdaExprStart stmt + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * expr LPAREN fArgs RPAREN - expr ::= * funcexpr - expr ::= * LPAREN expr RPAREN - expr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - expr ::= * L2V LPAREN expr RPAREN - expr ::= * MAPSTRING LPAREN STRING RPAREN - expr ::= * UNIT LPAREN STRING RPAREN - expr ::= * SWITCH LPAREN STRING RPAREN - expr ::= * LOCATION LPAREN STRING RPAREN - expr ::= * STATTXTTBL LPAREN STRING RPAREN - expr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - expr ::= * expr QMARK expr COLON expr - expr ::= * expr PLUS expr - expr ::= * expr MINUS expr - expr ::= * expr MULTIPLY expr - expr ::= * expr DIVIDE expr - expr ::= * expr MOD expr - expr ::= * expr LSHIFT expr - expr ::= * expr RSHIFT expr - expr ::= * expr BITAND expr - expr ::= * expr BITOR expr - expr ::= * expr BITXOR expr - expr ::= * PLUS expr - expr ::= * MINUS expr - expr ::= * BITNOT expr - expr ::= * expr EQ expr - expr ::= * expr NE expr - expr ::= * expr LE expr - expr ::= * expr GE expr - expr ::= * expr LT expr - expr ::= * expr GT expr - expr ::= * expr LAND expr - expr ::= * expr LOR expr - expr ::= * LNOT expr - expr ::= * CONDITIONNAME LPAREN fArgs RPAREN - expr ::= * KILLS LPAREN fArgs RPAREN - expr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 66 - PLUS shift 69 - MINUS shift 68 - BITNOT shift 67 - LPAREN shift 72 - LSQBRACKET shift 45 - NAME shift 279 - FUNCTION shift 278 - NUMBER shift 406 - KILLS shift 280 - L2V shift 259 - MAPSTRING shift 258 - UNIT shift 255 - SWITCH shift 252 - LOCATION shift 249 - STATTXTTBL shift 246 - VARRAY shift 243 - LIST shift 241 - CONDITIONNAME shift 239 - ACTIONNAME shift 237 - expr shift 147 - funcexpr shift 286 + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 511 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 lambdaExprStart shift 12 State 97: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + nonConstExpr ::= nonConstExpr LSQBRACKET * expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 223 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + +State 98: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constExpr + expr ::= * nonConstExpr + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + expr shift 514 + funcexpr shift 319 + nonConstExpr shift 157 + constExpr shift 161 + lambdaExprStart shift 12 + +State 99: + case_start ::= * CASE + case_clause ::= * case_start exprList_nonEmpty COLON + case_chunk ::= * case_clause + case_chunk ::= * case_clause bodyStmtList + case_chunks ::= case_chunks * case_chunk + default_clause ::= * DEFAULT COLON + default_chunk ::= * default_clause + default_chunk ::= * default_clause bodyStmtList + switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * default_chunk + (229) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * + + CASE shift 393 + DEFAULT shift 227 + case_start shift 35 + case_clause shift 16 + case_chunk shift 356 + default_clause shift 14 + default_chunk shift 354 + {default} reduce 229 + +State 100: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + NAME shift 228 + FUNCTION shift 311 + RPAREN shift 230 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 167 + lambdaExprStart shift 12 + fConstArg shift 466 + fConstArgs_nonEmpty shift 198 + +State 101: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= constExpr BITXOR * constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= constExpr BITXOR * nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 166 + constExpr shift 172 + lambdaExprStart shift 12 + +State 102: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= constExpr BITOR * constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= constExpr BITOR * nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 164 + constExpr shift 170 + lambdaExprStart shift 12 + +State 103: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= constExpr BITAND * constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= constExpr BITAND * nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 168 + constExpr shift 176 + lambdaExprStart shift 12 + +State 104: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= constExpr RSHIFT * constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= constExpr RSHIFT * nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 173 + constExpr shift 181 + lambdaExprStart shift 12 + +State 105: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= constExpr LSHIFT * constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= constExpr LSHIFT * nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 174 + constExpr shift 182 + lambdaExprStart shift 12 + +State 106: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + constExpr ::= constExpr MOD * constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= constExpr MOD * nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 187 + constExpr shift 443 + lambdaExprStart shift 12 + +State 107: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= constExpr DIVIDE * constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= constExpr DIVIDE * nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 188 + constExpr shift 444 + lambdaExprStart shift 12 + +State 108: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= constExpr MULTIPLY * constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= constExpr MULTIPLY * nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 189 + constExpr shift 445 + lambdaExprStart shift 12 + +State 109: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= constExpr MINUS * constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= constExpr MINUS * nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 177 + constExpr shift 190 + lambdaExprStart shift 12 + +State 110: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + constExpr ::= LNOT * constExpr + nonConstExpr ::= * LNOT nonConstExpr + nonConstExpr ::= LNOT * nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 191 + constExpr shift 433 + lambdaExprStart shift 12 + +State 111: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + constExpr ::= BITNOT * constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= BITNOT * nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 192 + constExpr shift 432 + lambdaExprStart shift 12 + +State 112: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + constExpr ::= MINUS * constExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= MINUS * nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 193 + constExpr shift 431 + lambdaExprStart shift 12 + +State 113: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + constExpr ::= PLUS * constExpr + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= PLUS * nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 194 + constExpr shift 430 + lambdaExprStart shift 12 + +State 114: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= LPAREN * constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= LPAREN * nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 156 + constExpr shift 159 + lambdaExprStart shift 12 + +State 115: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + constExpr ::= * NUMBER + constExpr ::= * KILLS + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + constExpr ::= * constExpr PLUS constExpr + constExpr ::= constExpr PLUS * constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= constExpr PLUS * nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr + constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr + constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr + constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr + constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr + constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr + constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr + constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr + constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr + constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * constExpr EQ expr + nonConstExpr ::= * nonConstExpr EQ expr + nonConstExpr ::= * constExpr NE expr + nonConstExpr ::= * nonConstExpr NE expr + nonConstExpr ::= * constExpr LE expr + nonConstExpr ::= * nonConstExpr LE expr + nonConstExpr ::= * constExpr GE expr + nonConstExpr ::= * nonConstExpr GE expr + nonConstExpr ::= * constExpr LT expr + nonConstExpr ::= * nonConstExpr LT expr + nonConstExpr ::= * constExpr GT expr + nonConstExpr ::= * nonConstExpr GT expr + nonConstExpr ::= * constExpr LAND expr + nonConstExpr ::= * nonConstExpr LAND expr + nonConstExpr ::= * constExpr LOR expr + nonConstExpr ::= * nonConstExpr LOR expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 110 + PLUS shift 113 + MINUS shift 112 + BITNOT shift 111 + LPAREN shift 114 + LSQBRACKET shift 45 + NAME shift 313 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + L2V shift 293 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + funcexpr shift 319 + nonConstExpr shift 178 + constExpr shift 186 + lambdaExprStart shift 12 + +State 116: + case_start ::= * CASE + case_clause ::= * case_start exprList_nonEmpty COLON + case_chunk ::= * case_clause + case_chunk ::= * case_clause bodyStmtList + case_chunks ::= * case_chunks case_chunk + case_chunks ::= * case_chunk + switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks default_chunk + switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks + (230) switchcase_block ::= switchcase_header RPAREN LBRACKET * + + CASE shift 393 + case_start shift 35 + case_clause shift 16 + case_chunk shift 353 + case_chunks shift 99 + {default} reduce 230 + +State 117: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fConstArg + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + NAME shift 228 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + STRING shift 467 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 167 + lambdaExprStart shift 12 + fConstArg shift 465 + +State 118: method_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes typedName ::= * NAME typedName ::= * NAME COLON expr @@ -9698,27 +15509,27 @@ State 97: (69) typedNameList ::= * typedNameList ::= * typedNameList_nonEmpty - NAME shift 277 - typedNameList shift 191 - typedNameList_nonEmpty shift 315 - typedName shift 201 + NAME shift 310 + typedNameList shift 215 + typedNameList_nonEmpty shift 349 + typedName shift 226 {default} reduce 69 -State 98: +State 119: elif_start ::= * ELSE IF elif_header ::= * elif_start LPAREN expr if_block ::= if_block * elif_header RPAREN stmt else_header ::= * ELSE - (173) if_stmt ::= if_block * + (216) if_stmt ::= if_block * if_stmt ::= if_block * else_header stmt - ELSE shift 223 - elif_start shift 222 - elif_header shift 221 + ELSE shift 252 + elif_start shift 251 + elif_header shift 250 else_header shift 3 - {default} reduce 173 + {default} reduce 216 -State 99: +State 120: typedName ::= * NAME typedName ::= * NAME COLON expr typedNameList_nonEmpty ::= * typedName @@ -9727,13 +15538,13 @@ State 99: typedNameList ::= * typedNameList_nonEmpty lambdaExprStart ::= FUNCTION LPAREN * typedNameList RPAREN fdef_rettypes - NAME shift 277 - typedNameList shift 200 - typedNameList_nonEmpty shift 315 - typedName shift 201 + NAME shift 310 + typedNameList shift 225 + typedNameList_nonEmpty shift 349 + typedName shift 226 {default} reduce 69 -State 100: +State 121: fdef_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes fdecl_chunk ::= FUNCTION NAME LPAREN * typedNameList RPAREN SEMICOLON typedName ::= * NAME @@ -9743,3921 +15554,4371 @@ State 100: (69) typedNameList ::= * typedNameList ::= * typedNameList_nonEmpty - NAME shift 277 - typedNameList shift 288 - typedNameList_nonEmpty shift 315 - typedName shift 201 + NAME shift 310 + typedNameList shift 321 + typedNameList_nonEmpty shift 349 + typedName shift 226 {default} reduce 69 -State 101: - object_body ::= object_body * VAR typedNameList_nonEmpty SEMICOLON - method_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes - method_chunk ::= * method_header stmt - object_body ::= object_body * method_chunk - object_chunk ::= object_body * RBRACKET SEMICOLON - - FUNCTION shift 193 - VAR shift 102 - RBRACKET shift 190 - method_header shift 1 - method_chunk shift 301 +State 122: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= LNOT * constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 358 + lambdaExprStart shift 12 -State 102: - object_body ::= object_body VAR * typedNameList_nonEmpty SEMICOLON - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty +State 123: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= BITNOT * constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 359 + lambdaExprStart shift 12 - NAME shift 277 - typedNameList_nonEmpty shift 194 - typedName shift 201 +State 124: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= MINUS * constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 360 + lambdaExprStart shift 12 -State 103: - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - typedNameList_nonEmpty ::= typedName COMMA * typedNameList_nonEmpty +State 125: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= PLUS * constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 361 + lambdaExprStart shift 12 - NAME shift 277 - typedNameList_nonEmpty shift 316 - typedName shift 201 +State 126: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= constExpr BITXOR * constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 171 + lambdaExprStart shift 12 -State 104: - (23) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON +State 127: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= constExpr BITOR * constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 169 + lambdaExprStart shift 12 - SEMICOLON shift 307 - COLON shift 46 - fdef_rettypes shift 308 - {default} reduce 23 +State 128: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= constExpr BITAND * constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 175 + lambdaExprStart shift 12 -State 105: +State 129: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= constExpr RSHIFT * constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 179 + lambdaExprStart shift 12 + +State 130: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= constExpr LSHIFT * constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 180 + lambdaExprStart shift 12 + +State 131: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= constExpr MOD * constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 362 + lambdaExprStart shift 12 + +State 132: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= constExpr DIVIDE * constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 363 + lambdaExprStart shift 12 + +State 133: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= constExpr MULTIPLY * constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 364 + lambdaExprStart shift 12 + +State 134: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= constExpr MINUS * constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 185 + lambdaExprStart shift 12 + +State 135: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= LPAREN * constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 165 + lambdaExprStart shift 12 + +State 136: + constExpr ::= * NUMBER + constExpr ::= * KILLS + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= constExpr PLUS * constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 122 + PLUS shift 125 + MINUS shift 124 + BITNOT shift 123 + LPAREN shift 135 + LSQBRACKET shift 45 + FUNCTION shift 311 + NUMBER shift 513 + KILLS shift 314 + MAPSTRING shift 291 + UNIT shift 288 + SWITCH shift 285 + LOCATION shift 282 + STATTXTTBL shift 279 + VARRAY shift 276 + LIST shift 274 + CONDITIONNAME shift 272 + ACTIONNAME shift 271 + constExpr shift 184 + lambdaExprStart shift 12 + +State 137: + object_body ::= object_body * VAR typedNameList_nonEmpty SEMICOLON + method_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes + method_chunk ::= * method_header stmt + object_body ::= object_body * method_chunk + object_chunk ::= object_body * RBRACKET SEMICOLON + + FUNCTION shift 217 + VAR shift 138 + RBRACKET shift 214 + method_header shift 1 + method_chunk shift 334 + +State 138: + object_body ::= object_body VAR * typedNameList_nonEmpty SEMICOLON + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + + NAME shift 310 + typedNameList_nonEmpty shift 218 + typedName shift 226 + +State 139: + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + typedNameList_nonEmpty ::= typedName COMMA * typedNameList_nonEmpty + + NAME shift 310 + typedNameList_nonEmpty shift 350 + typedName shift 226 + +State 140: + (23) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON + + SEMICOLON shift 340 + COLON shift 46 + fdef_rettypes shift 341 + {default} reduce 23 + +State 141: relimp_start ::= IMPORT * PERIOD dottedName ::= * NAME dottedName ::= * dottedName PERIOD NAME import_chunk ::= IMPORT * dottedName AS NAME import_chunk ::= IMPORT * dottedName - PERIOD shift 417 - NAME shift 416 - dottedName shift 187 + PERIOD shift 524 + NAME shift 523 + dottedName shift 211 -State 106: +State 142: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME cdef_global_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 362 - nameList_nonEmpty shift 176 + NAME shift 425 + nameList_nonEmpty shift 196 -State 107: +State 143: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME vdef_stmt ::= VAR * nameList_nonEmpty vdefAssign_global_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 362 - nameList_nonEmpty shift 177 + NAME shift 425 + nameList_nonEmpty shift 197 -State 108: +State 144: (23) fdef_rettypes ::= * fdef_rettypes ::= * COLON exprList_nonEmpty method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes COLON shift 46 - fdef_rettypes shift 303 + fdef_rettypes shift 336 {default} reduce 23 -State 109: +State 145: (23) fdef_rettypes ::= * fdef_rettypes ::= * COLON exprList_nonEmpty lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes COLON shift 46 - fdef_rettypes shift 314 + fdef_rettypes shift 348 {default} reduce 23 -State 110: +State 146: + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= constActionList * constAction + (265) actionStmt ::= constActionList * + + ACTIONNAME shift 229 + constAction shift 357 + {default} reduce 265 + +State 147: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME foreach_header ::= foreach_opener * nameList_nonEmpty COLON exprList_nonEmpty - NAME shift 362 - nameList_nonEmpty shift 178 + NAME shift 425 + nameList_nonEmpty shift 201 -State 111: +State 148: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME cdef_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 362 - nameList_nonEmpty shift 181 + NAME shift 425 + nameList_nonEmpty shift 205 -State 112: +State 149: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME vdefAssignStatic_stmt ::= STATIC VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 362 - nameList_nonEmpty shift 182 + NAME shift 425 + nameList_nonEmpty shift 206 -State 113: +State 150: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME vdef_stmt ::= VAR * nameList_nonEmpty vdefAssign_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 362 - nameList_nonEmpty shift 183 + NAME shift 425 + nameList_nonEmpty shift 207 -State 114: +State 151: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr commaSkippable ::= * COMMA - (100) commaSkippable ::= * - expr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN + (111) commaSkippable ::= * + constExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN - COMMA shift 71 - commaSkippable shift 240 - {default} reduce 100 + COMMA shift 93 + commaSkippable shift 273 + {default} reduce 111 -State 115: +State 152: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr commaSkippable ::= * COMMA - (100) commaSkippable ::= * - expr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN + (111) commaSkippable ::= * + constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN - COMMA shift 71 - commaSkippable shift 242 - {default} reduce 100 + COMMA shift 93 + commaSkippable shift 275 + {default} reduce 111 -State 116: +State 153: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr commaSkippable ::= * COMMA - (100) commaSkippable ::= * - expr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET + (111) commaSkippable ::= * + constExpr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET - COMMA shift 71 - commaSkippable shift 234 - {default} reduce 100 + COMMA shift 93 + commaSkippable shift 266 + {default} reduce 111 -State 117: +State 154: numList_nonEmpty ::= * NUMBER numList_nonEmpty ::= * numList_nonEmpty COMMA NUMBER exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET * numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET - NUMBER shift 262 - numList_nonEmpty shift 184 + NUMBER shift 296 + numList_nonEmpty shift 208 -State 118: +State 155: rbracket ::= * RBRACKET blockStmt ::= blockStmtSub * rbracket - RBRACKET shift 402 - rbracket shift 401 + RBRACKET shift 507 + rbracket shift 506 -State 119: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - expr ::= expr LSQBRACKET expr * RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 156: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= LPAREN nonConstExpr * RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + QMARK shift 95 + LOR shift 75 + LAND shift 76 + EQ shift 82 + LE shift 80 + LT shift 78 + GE shift 79 + GT shift 77 + NE shift 81 + BITOR shift 84 + BITXOR shift 83 + BITAND shift 85 + LSHIFT shift 87 + RSHIFT shift 86 + PLUS shift 94 + MINUS shift 91 + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - RSQBRACKET shift 309 + LSQBRACKET shift 97 + PERIOD shift 312 + RPAREN shift 484 -State 120: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - for_header2 ::= for_header1 expr * SEMICOLON - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 157: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + (87) expr ::= nonConstExpr * + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + QMARK shift 95 + LOR shift 75 + LAND shift 76 + EQ shift 82 + LE shift 80 + LT shift 78 + GE shift 79 + GT shift 77 + NE shift 81 + BITOR shift 84 + BITXOR shift 83 + BITAND shift 85 + LSHIFT shift 87 + RSHIFT shift 86 + PLUS shift 94 + MINUS shift 91 + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - SEMICOLON shift 334 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 87 -State 121: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= L2V LPAREN expr * RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 158: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + (88) fNonConstArg ::= nonConstExpr * + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + QMARK shift 95 + LOR shift 75 + LAND shift 76 + EQ shift 82 + LE shift 80 + LT shift 78 + GE shift 79 + GT shift 77 + NE shift 81 + BITOR shift 84 + BITXOR shift 83 + BITAND shift 85 + LSHIFT shift 87 + RSHIFT shift 86 + PLUS shift 94 + MINUS shift 91 + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - RPAREN shift 376 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 88 -State 122: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= LPAREN expr * RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - RPAREN shift 379 +State 159: + constExpr ::= LPAREN constExpr * RPAREN + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + LOR shift 67 + LAND shift 68 + EQ shift 74 + LE shift 72 + LT shift 70 + GE shift 71 + GT shift 69 + NE shift 73 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 115 + MINUS shift 109 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + RPAREN shift 427 -State 123: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - expr ::= expr LSQBRACKET expr * RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - lvalue ::= expr LSQBRACKET expr * RSQBRACKET +State 160: + (89) fConstArg ::= constExpr * + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + LOR shift 67 + LAND shift 68 + EQ shift 74 + LE shift 72 + LT shift 70 + GE shift 71 + GT shift 69 + NE shift 73 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 115 + MINUS shift 109 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 89 - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - RSQBRACKET shift 158 +State 161: + (86) expr ::= constExpr * + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + LOR shift 67 + LAND shift 68 + EQ shift 74 + LE shift 72 + LT shift 70 + GE shift 71 + GT shift 69 + NE shift 73 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 115 + MINUS shift 109 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 86 -State 124: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr QMARK expr * COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - COLON shift 92 +State 162: + (81) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN + (182) lvalue ::= NAME * -State 125: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - (88) fArg ::= NAME ASSIGN expr * - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 88 + ASSIGN reduce 182 + COMMA reduce 182 + LPAREN shift 27 + SEMICOLON reduce 182 + RPAREN reduce 182 + INC reduce 182 + DEC reduce 182 + IADD reduce 182 + ISUB reduce 182 + IMUL reduce 182 + IDIV reduce 182 + IMOD reduce 182 + ILSH reduce 182 + IRSH reduce 182 + IBND reduce 182 + IBOR reduce 182 + IBXR reduce 182 + {default} reduce 81 -State 126: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (190) while_header ::= while_start LPAREN expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 190 +State 163: + (185) lvalueList_nonEmpty ::= lvalue * + assign_stmt ::= lvalue * ASSIGN expr + assign_stmt ::= lvalue * INC + assign_stmt ::= lvalue * DEC + assign_stmt ::= lvalue * IADD expr + assign_stmt ::= lvalue * ISUB expr + assign_stmt ::= lvalue * IMUL expr + assign_stmt ::= lvalue * IDIV expr + assign_stmt ::= lvalue * IMOD expr + assign_stmt ::= lvalue * ILSH expr + assign_stmt ::= lvalue * IRSH expr + assign_stmt ::= lvalue * IBND expr + assign_stmt ::= lvalue * IBOR expr + assign_stmt ::= lvalue * IBXR expr -State 127: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (175) switchcase_header ::= SWITCHCASE LPAREN expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 175 + ASSIGN shift 64 + INC shift 420 + DEC shift 419 + IADD shift 63 + ISUB shift 62 + IMUL shift 61 + IDIV shift 60 + IMOD shift 59 + ILSH shift 58 + IRSH shift 57 + IBND shift 56 + IBOR shift 55 + IBXR shift 54 + {default} reduce 185 -State 128: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (170) elif_header ::= elif_start LPAREN expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 164: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + (147) nonConstExpr ::= constExpr BITOR nonConstExpr * + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + BITXOR shift 83 + BITAND shift 85 + LSHIFT shift 87 + RSHIFT shift 86 + PLUS shift 94 + MINUS shift 91 + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 170 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 147 -State 129: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (167) if_header ::= if_start LPAREN expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 167 +State 165: + constExpr ::= LPAREN constExpr * RPAREN + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + + BITOR shift 127 + BITXOR shift 126 + BITAND shift 128 + LSHIFT shift 130 + RSHIFT shift 129 + PLUS shift 136 + MINUS shift 134 + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 + RPAREN shift 427 -State 130: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (161) once_header ::= once_start LPAREN expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 166: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + (150) nonConstExpr ::= constExpr BITXOR nonConstExpr * + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + BITAND shift 85 + LSHIFT shift 87 + RSHIFT shift 86 + PLUS shift 94 + MINUS shift 91 + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 161 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 150 -State 131: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (159) assign_stmt ::= lvalue IBXR expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 159 +State 167: + (89) fConstArg ::= constExpr * + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + + BITOR shift 127 + BITXOR shift 126 + BITAND shift 128 + LSHIFT shift 130 + RSHIFT shift 129 + PLUS shift 136 + MINUS shift 134 + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 + {default} reduce 89 -State 132: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (158) assign_stmt ::= lvalue IBOR expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 168: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + (144) nonConstExpr ::= constExpr BITAND nonConstExpr * + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + LSHIFT shift 87 + RSHIFT shift 86 + PLUS shift 94 + MINUS shift 91 + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 158 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 144 -State 133: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (157) assign_stmt ::= lvalue IBND expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 157 +State 169: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + (146) constExpr ::= constExpr BITOR constExpr * + constExpr ::= constExpr * BITXOR constExpr + + BITXOR shift 126 + BITAND shift 128 + LSHIFT shift 130 + RSHIFT shift 129 + PLUS shift 136 + MINUS shift 134 + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 + {default} reduce 146 -State 134: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (156) assign_stmt ::= lvalue IRSH expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 156 +State 170: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + (146) constExpr ::= constExpr BITOR constExpr * + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 115 + MINUS shift 109 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 146 -State 135: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (155) assign_stmt ::= lvalue ILSH expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 155 +State 171: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (149) constExpr ::= constExpr BITXOR constExpr * + + BITAND shift 128 + LSHIFT shift 130 + RSHIFT shift 129 + PLUS shift 136 + MINUS shift 134 + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 + {default} reduce 149 -State 136: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (154) assign_stmt ::= lvalue IMOD expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 154 +State 172: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + (149) constExpr ::= constExpr BITXOR constExpr * + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 115 + MINUS shift 109 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 149 -State 137: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (153) assign_stmt ::= lvalue IDIV expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 173: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + (141) nonConstExpr ::= constExpr RSHIFT nonConstExpr * + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + PLUS shift 94 + MINUS shift 91 + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 153 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 141 -State 138: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (152) assign_stmt ::= lvalue IMUL expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 174: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + (138) nonConstExpr ::= constExpr LSHIFT nonConstExpr * + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + PLUS shift 94 + MINUS shift 91 + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 152 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 138 -State 139: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (151) assign_stmt ::= lvalue ISUB expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 151 +State 175: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + (143) constExpr ::= constExpr BITAND constExpr * + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + + LSHIFT shift 130 + RSHIFT shift 129 + PLUS shift 136 + MINUS shift 134 + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 + {default} reduce 143 -State 140: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (150) assign_stmt ::= lvalue IADD expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 150 +State 176: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + (143) constExpr ::= constExpr BITAND constExpr * + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 115 + MINUS shift 109 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 143 -State 141: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (144) assign_stmt ::= lvalue ASSIGN expr * - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 177: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + (126) nonConstExpr ::= constExpr MINUS nonConstExpr * + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 144 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 126 -State 142: - (75) exprList_nonEmpty ::= expr * - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 +State 178: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + (123) nonConstExpr ::= constExpr PLUS nonConstExpr * + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + + DIVIDE shift 89 + MULTIPLY shift 90 + MOD shift 88 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 75 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 123 -State 143: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - lvalue ::= expr * LSQBRACKET expr RSQBRACKET - lvalue ::= expr * PERIOD NAME +State 179: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + (140) constExpr ::= constExpr RSHIFT constExpr * + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + + PLUS shift 136 + MINUS shift 134 + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 + {default} reduce 140 - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 73 - PERIOD shift 265 +State 180: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + (137) constExpr ::= constExpr LSHIFT constExpr * + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + + PLUS shift 136 + MINUS shift 134 + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 + {default} reduce 137 -State 144: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - (110) expr ::= expr QMARK expr COLON expr * - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 110 +State 181: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + (140) constExpr ::= constExpr RSHIFT constExpr * + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + PLUS shift 115 + MINUS shift 109 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 140 -State 145: - (66) typedName ::= NAME COLON expr * - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 66 +State 182: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + (137) constExpr ::= constExpr LSHIFT constExpr * + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + PLUS shift 115 + MINUS shift 109 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 137 -State 146: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - (86) fArg ::= expr * - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 86 +State 183: + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (104) funcexprStmt ::= funcexpr * + (107) nonConstExpr ::= funcexpr * + + COMMA reduce 104 + LSQBRACKET shift 318 + SEMICOLON reduce 104 + RPAREN reduce 104 + {default} reduce 107 -State 147: - (76) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - QMARK shift 93 - LOR shift 74 - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 76 +State 184: + constExpr ::= constExpr * PLUS constExpr + (122) constExpr ::= constExpr PLUS constExpr * + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 + {default} reduce 122 -State 148: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (131) expr ::= expr LOR expr * - - LAND shift 75 - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 131 - -State 149: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - (132) expr ::= LNOT expr * - - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 132 - -State 150: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - (130) expr ::= expr LAND expr * - expr ::= expr * LOR expr - - EQ shift 81 - LE shift 79 - LT shift 77 - GE shift 78 - GT shift 76 - NE shift 80 - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 130 - -State 151: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - (129) expr ::= expr GT expr * - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - EQ error - LE error - LT error - GE error - GT error - NE error - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 129 - -State 152: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - (128) expr ::= expr LT expr * - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - EQ error - LE error - LT error - GE error - GT error - NE error - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 128 - -State 153: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - (127) expr ::= expr GE expr * - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - EQ error - LE error - LT error - GE error - GT error - NE error - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 127 - -State 154: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - (126) expr ::= expr LE expr * - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - EQ error - LE error - LT error - GE error - GT error - NE error - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 126 - -State 155: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - (125) expr ::= expr NE expr * - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - EQ error - LE error - LT error - GE error - GT error - NE error - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 +State 185: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + (125) constExpr ::= constExpr MINUS constExpr * + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + + DIVIDE shift 132 + MULTIPLY shift 133 + MOD shift 131 {default} reduce 125 -State 156: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - (124) expr ::= expr EQ expr * - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - EQ error - LE error - LT error - GE error - GT error - NE error - BITOR shift 83 - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 124 - -State 157: - (81) expr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN - (139) lvalue ::= NAME * - - ASSIGN reduce 139 - COMMA reduce 139 - LPAREN shift 27 - SEMICOLON reduce 139 - RPAREN reduce 139 - INC reduce 139 - DEC reduce 139 - IADD reduce 139 - ISUB reduce 139 - IMUL reduce 139 - IDIV reduce 139 - IMOD reduce 139 - ILSH reduce 139 - IRSH reduce 139 - IBND reduce 139 - IBOR reduce 139 - IBXR reduce 139 - {default} reduce 81 - -State 158: - (83) expr ::= expr LSQBRACKET expr RSQBRACKET * - (140) lvalue ::= expr LSQBRACKET expr RSQBRACKET * - - ASSIGN reduce 140 - COMMA reduce 140 - SEMICOLON reduce 140 - RPAREN reduce 140 - INC reduce 140 - DEC reduce 140 - IADD reduce 140 - ISUB reduce 140 - IMUL reduce 140 - IDIV reduce 140 - IMOD reduce 140 - ILSH reduce 140 - IRSH reduce 140 - IBND reduce 140 - IBOR reduce 140 - IBXR reduce 140 - {default} reduce 83 - -State 159: - (82) expr ::= expr PERIOD NAME * - (141) lvalue ::= expr PERIOD NAME * - - ASSIGN reduce 141 - COMMA reduce 141 - SEMICOLON reduce 141 - RPAREN reduce 141 - INC reduce 141 - DEC reduce 141 - IADD reduce 141 - ISUB reduce 141 - IMUL reduce 141 - IDIV reduce 141 - IMOD reduce 141 - ILSH reduce 141 - IRSH reduce 141 - IBND reduce 141 - IBOR reduce 141 - IBXR reduce 141 - {default} reduce 82 - -State 160: - (142) lvalueList_nonEmpty ::= lvalue * - assign_stmt ::= lvalue * ASSIGN expr - assign_stmt ::= lvalue * INC - assign_stmt ::= lvalue * DEC - assign_stmt ::= lvalue * IADD expr - assign_stmt ::= lvalue * ISUB expr - assign_stmt ::= lvalue * IMUL expr - assign_stmt ::= lvalue * IDIV expr - assign_stmt ::= lvalue * IMOD expr - assign_stmt ::= lvalue * ILSH expr - assign_stmt ::= lvalue * IRSH expr - assign_stmt ::= lvalue * IBND expr - assign_stmt ::= lvalue * IBOR expr - assign_stmt ::= lvalue * IBXR expr - - ASSIGN shift 65 - INC shift 360 - DEC shift 359 - IADD shift 64 - ISUB shift 63 - IMUL shift 62 - IDIV shift 61 - IMOD shift 60 - ILSH shift 59 - IRSH shift 58 - IBND shift 57 - IBOR shift 56 - IBXR shift 55 - {default} reduce 142 - -State 161: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - (119) expr ::= expr BITOR expr * - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - BITXOR shift 82 - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 119 - -State 162: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - (120) expr ::= expr BITXOR expr * - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - BITAND shift 84 - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 120 - -State 163: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - (118) expr ::= expr BITAND expr * - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - LSHIFT shift 86 - RSHIFT shift 85 - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 118 +State 186: + constExpr ::= constExpr * PLUS constExpr + (122) constExpr ::= constExpr PLUS constExpr * + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 122 -State 164: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - (117) expr ::= expr RSHIFT expr * - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 117 +State 187: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + (135) nonConstExpr ::= constExpr MOD nonConstExpr * + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr -State 165: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - (116) expr ::= expr LSHIFT expr * - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - PLUS shift 91 - MINUS shift 90 - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 116 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 135 -State 166: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - (112) expr ::= expr MINUS expr * - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 112 +State 188: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + (132) nonConstExpr ::= constExpr DIVIDE nonConstExpr * + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr -State 167: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - (111) expr ::= expr PLUS expr * - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr - - DIVIDE shift 88 - MULTIPLY shift 89 - MOD shift 87 LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 111 - -State 168: - expr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (94) funcexprStmt ::= funcexpr * - (97) expr ::= funcexpr * - - COMMA reduce 94 - LSQBRACKET shift 285 - SEMICOLON reduce 94 - RPAREN reduce 94 - {default} reduce 97 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 132 -State 169: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - (123) expr ::= BITNOT expr * - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr +State 189: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + (129) nonConstExpr ::= constExpr MULTIPLY nonConstExpr * + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 123 - -State 170: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - (122) expr ::= MINUS expr * - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 129 - LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 122 +State 190: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + (125) constExpr ::= constExpr MINUS constExpr * + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 125 -State 171: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - (121) expr ::= PLUS expr * - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr +State 191: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr + (175) nonConstExpr ::= LNOT nonConstExpr * LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 121 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 175 -State 172: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - (115) expr ::= expr MOD expr * - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr +State 192: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (157) nonConstExpr ::= BITNOT nonConstExpr * + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 115 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 157 -State 173: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - expr ::= expr * DIVIDE expr - (114) expr ::= expr DIVIDE expr * - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr +State 193: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (155) nonConstExpr ::= MINUS nonConstExpr * + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 114 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 155 -State 174: - expr ::= expr * PERIOD NAME - expr ::= expr * LSQBRACKET expr RSQBRACKET - funcexpr ::= expr * LPAREN fArgs RPAREN - expr ::= expr * QMARK expr COLON expr - expr ::= expr * PLUS expr - expr ::= expr * MINUS expr - expr ::= expr * MULTIPLY expr - (113) expr ::= expr MULTIPLY expr * - expr ::= expr * DIVIDE expr - expr ::= expr * MOD expr - expr ::= expr * LSHIFT expr - expr ::= expr * RSHIFT expr - expr ::= expr * BITAND expr - expr ::= expr * BITOR expr - expr ::= expr * BITXOR expr - expr ::= expr * EQ expr - expr ::= expr * NE expr - expr ::= expr * LE expr - expr ::= expr * GE expr - expr ::= expr * LT expr - expr ::= expr * GT expr - expr ::= expr * LAND expr - expr ::= expr * LOR expr +State 194: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (153) nonConstExpr ::= PLUS nonConstExpr * + nonConstExpr ::= nonConstExpr * EQ expr + nonConstExpr ::= nonConstExpr * NE expr + nonConstExpr ::= nonConstExpr * LE expr + nonConstExpr ::= nonConstExpr * GE expr + nonConstExpr ::= nonConstExpr * LT expr + nonConstExpr ::= nonConstExpr * GT expr + nonConstExpr ::= nonConstExpr * LAND expr + nonConstExpr ::= nonConstExpr * LOR expr LPAREN shift 26 - LSQBRACKET shift 95 - PERIOD shift 281 - {default} reduce 113 + LSQBRACKET shift 97 + PERIOD shift 312 + {default} reduce 153 -State 175: +State 195: relimp_path ::= relimp_path * PERIOD NAME relimp_chunk ::= relimp_path * SEMICOLON relimp_chunk ::= relimp_path * AS NAME SEMICOLON - PERIOD shift 293 - SEMICOLON shift 410 - AS shift 292 + PERIOD shift 326 + SEMICOLON shift 517 + AS shift 325 -State 176: +State 196: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME cdef_global_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty ASSIGN shift 32 - COMMA shift 233 + COMMA shift 264 -State 177: +State 197: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (133) vdef_stmt ::= VAR nameList_nonEmpty * + (176) vdef_stmt ::= VAR nameList_nonEmpty * vdefAssign_global_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty ASSIGN shift 33 - COMMA shift 233 - {default} reduce 133 + COMMA shift 264 + {default} reduce 176 -State 178: +State 198: + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON + + COMMA shift 117 + RPAREN shift 232 + +State 199: + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + (101) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * + actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON + + COMMA shift 29 + RPAREN shift 231 + +State 200: + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + (100) fArgs_nonEmpty ::= fConstArgs_nonEmpty * + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON + + COMMA shift 31 + RPAREN shift 232 + +State 201: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME foreach_header ::= foreach_opener nameList_nonEmpty * COLON exprList_nonEmpty - COMMA shift 233 + COMMA shift 264 COLON shift 34 -State 179: +State 202: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr case_clause ::= case_start exprList_nonEmpty * COLON - COMMA shift 96 - COLON shift 346 + COMMA shift 98 + COLON shift 392 -State 180: +State 203: lvalueList_nonEmpty ::= lvalueList_nonEmpty * COMMA lvalue assign_stmt ::= lvalueList_nonEmpty * ASSIGN exprList_nonEmpty ASSIGN shift 38 COMMA shift 39 -State 181: +State 204: + lvalue ::= expr * LSQBRACKET expr RSQBRACKET + lvalue ::= expr * PERIOD NAME + + LSQBRACKET shift 65 + PERIOD shift 258 + +State 205: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME cdef_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty ASSIGN shift 40 - COMMA shift 233 + COMMA shift 264 -State 182: +State 206: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty ASSIGN shift 41 - COMMA shift 233 + COMMA shift 264 -State 183: +State 207: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (133) vdef_stmt ::= VAR nameList_nonEmpty * + (176) vdef_stmt ::= VAR nameList_nonEmpty * vdefAssign_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty ASSIGN shift 42 - COMMA shift 233 - {default} reduce 133 + COMMA shift 264 + {default} reduce 176 -State 184: +State 208: numList_nonEmpty ::= numList_nonEmpty * COMMA NUMBER exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty * RSQBRACKET RSQBRACKET - COMMA shift 261 - RSQBRACKET shift 260 + COMMA shift 295 + RSQBRACKET shift 294 -State 185: - (81) expr ::= NAME * - fArg ::= NAME * ASSIGN expr - fArg ::= NAME * ASSIGN STRING +State 209: + (81) nonConstExpr ::= NAME * + fConstArg ::= NAME * ASSIGN expr + fConstArg ::= NAME * ASSIGN STRING funcexpr ::= NAME * LPAREN fArgs RPAREN - ASSIGN shift 48 + ASSIGN shift 47 LPAREN shift 27 {default} reduce 81 -State 186: +State 210: relimp_start ::= relimp_start * PERIOD relimp_path ::= relimp_start * NAME - PERIOD shift 413 - NAME shift 412 + PERIOD shift 520 + NAME shift 519 -State 187: +State 211: dottedName ::= dottedName * PERIOD NAME import_chunk ::= IMPORT dottedName * AS NAME (22) import_chunk ::= IMPORT dottedName * - PERIOD shift 295 - AS shift 294 + PERIOD shift 328 + AS shift 327 {default} reduce 22 -State 188: +State 212: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (138) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + (181) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 96 - {default} reduce 138 + COMMA shift 98 + {default} reduce 181 -State 189: +State 213: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (136) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (179) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 96 - {default} reduce 136 + COMMA shift 98 + {default} reduce 179 -State 190: +State 214: object_chunk ::= object_body RBRACKET * SEMICOLON - SEMICOLON shift 300 + SEMICOLON shift 333 -State 191: +State 215: method_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - RPAREN shift 108 + RPAREN shift 144 -State 192: +State 216: method_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - LPAREN shift 97 + LPAREN shift 118 -State 193: +State 217: method_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - NAME shift 192 + NAME shift 216 -State 194: +State 218: object_body ::= object_body VAR typedNameList_nonEmpty * SEMICOLON - SEMICOLON shift 304 + SEMICOLON shift 337 -State 195: +State 219: object_body ::= OBJECT NAME * LBRACKET - LBRACKET shift 305 + LBRACKET shift 338 -State 196: +State 220: object_body ::= OBJECT * NAME LBRACKET - NAME shift 195 + NAME shift 219 -State 197: - expr ::= KILLS LPAREN fArgs * RPAREN +State 221: + constExpr ::= KILLS LPAREN fArgs * RPAREN - RPAREN shift 310 + RPAREN shift 342 -State 198: +State 222: funcexpr ::= NAME LPAREN fArgs * RPAREN - RPAREN shift 312 + RPAREN shift 345 -State 199: - funcexpr ::= expr LPAREN fArgs * RPAREN +State 223: + nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - RPAREN shift 313 + RSQBRACKET shift 346 -State 200: +State 224: + funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN + + RPAREN shift 347 + +State 225: lambdaExprStart ::= FUNCTION LPAREN typedNameList * RPAREN fdef_rettypes - RPAREN shift 109 + RPAREN shift 145 -State 201: +State 226: (67) typedNameList_nonEmpty ::= typedName * typedNameList_nonEmpty ::= typedName * COMMA typedNameList_nonEmpty - COMMA shift 103 + COMMA shift 139 {default} reduce 67 -State 202: +State 227: default_clause ::= DEFAULT * COLON - COLON shift 321 + COLON shift 355 -State 203: - actionStmt ::= ACTIONNAME LPAREN fArgs RPAREN * SEMICOLON - (218) expr ::= ACTIONNAME LPAREN fArgs RPAREN * +State 228: + fConstArg ::= NAME * ASSIGN expr + fConstArg ::= NAME * ASSIGN STRING - SEMICOLON shift 323 - {default} reduce 218 + ASSIGN shift 47 -State 204: - actionStmt ::= ACTIONNAME LPAREN fArgs * RPAREN SEMICOLON - expr ::= ACTIONNAME LPAREN fArgs * RPAREN +State 229: + constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON - RPAREN shift 203 + LPAREN shift 100 -State 205: - actionStmt ::= ACTIONNAME * LPAREN fArgs RPAREN SEMICOLON - expr ::= ACTIONNAME * LPAREN fArgs RPAREN +State 230: + constAction ::= ACTIONNAME LPAREN RPAREN * SEMICOLON - LPAREN shift 23 + SEMICOLON shift 366 -State 206: +State 231: + actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON + + SEMICOLON shift 367 + +State 232: + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN * SEMICOLON + + SEMICOLON shift 368 + +State 233: + actionStmt ::= ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN + + LPAREN shift 22 + +State 234: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr (78) exprList ::= exprList_nonEmpty * - COMMA shift 96 + COMMA shift 98 {default} reduce 78 -State 207: +State 235: foreach_stmt ::= foreach_header * RPAREN stmt RPAREN shift 4 -State 208: +State 236: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (210) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * + (253) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * - COMMA shift 96 - {default} reduce 210 + COMMA shift 98 + {default} reduce 253 -State 209: +State 237: foreach_opener ::= FOREACH * LPAREN - LPAREN shift 328 + LPAREN shift 373 -State 210: +State 238: for_stmt ::= for_header * RPAREN stmt RPAREN shift 5 -State 211: +State 239: for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (204) for_action_stmt ::= for_action_stmt_nonEmpty * + (247) for_action_stmt ::= for_action_stmt_nonEmpty * - COMMA shift 22 - {default} reduce 204 + COMMA shift 23 + {default} reduce 247 -State 212: +State 240: + for_header2 ::= for_header1 expr * SEMICOLON + + SEMICOLON shift 379 + +State 241: for_header1 ::= for_opener for_init_stmt * SEMICOLON - SEMICOLON shift 335 + SEMICOLON shift 380 -State 213: +State 242: for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (198) for_init_stmt ::= for_init_stmt_nonEmpty * + (241) for_init_stmt ::= for_init_stmt_nonEmpty * COMMA shift 20 - {default} reduce 198 + {default} reduce 241 -State 214: +State 243: for_opener ::= FOR * LPAREN - LPAREN shift 341 + LPAREN shift 386 -State 215: +State 244: while_stmt ::= while_header * RPAREN stmt RPAREN shift 6 -State 216: +State 245: while_header ::= while_start * LPAREN expr - LPAREN shift 50 + LPAREN shift 49 -State 217: +State 246: switchcase_stmt ::= switchcase_block * RBRACKET - RBRACKET shift 344 + RBRACKET shift 390 -State 218: +State 247: switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks default_chunk switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks switchcase_block ::= switchcase_header RPAREN * LBRACKET - LBRACKET shift 47 + LBRACKET shift 116 -State 219: +State 248: switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks switchcase_block ::= switchcase_header * RPAREN LBRACKET - RPAREN shift 218 + RPAREN shift 247 -State 220: +State 249: switchcase_header ::= SWITCHCASE * LPAREN expr - LPAREN shift 51 + LPAREN shift 50 -State 221: +State 250: if_block ::= if_block elif_header * RPAREN stmt RPAREN shift 7 -State 222: +State 251: elif_header ::= elif_start * LPAREN expr - LPAREN shift 52 + LPAREN shift 51 -State 223: +State 252: elif_start ::= ELSE * IF - (172) else_header ::= ELSE * + (215) else_header ::= ELSE * - IF shift 349 - {default} reduce 172 + IF shift 397 + {default} reduce 215 -State 224: +State 253: if_block ::= if_header * RPAREN stmt RPAREN shift 8 -State 225: +State 254: if_header ::= if_start * LPAREN expr - LPAREN shift 53 + LPAREN shift 52 -State 226: +State 255: once_block ::= once_header * RPAREN stmt RPAREN shift 10 -State 227: +State 256: once_header ::= once_start * LPAREN expr - (163) once_nocond ::= once_start * + (206) once_nocond ::= once_start * - LPAREN shift 54 - {default} reduce 163 + LPAREN shift 53 + {default} reduce 206 -State 228: +State 257: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (145) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * + (188) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 96 - {default} reduce 145 + COMMA shift 98 + {default} reduce 188 -State 229: +State 258: + lvalue ::= expr PERIOD * NAME + + NAME shift 422 + +State 259: + lvalue ::= expr LSQBRACKET expr * RSQBRACKET + + RSQBRACKET shift 423 + +State 260: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (137) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + (180) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 96 - {default} reduce 137 + COMMA shift 98 + {default} reduce 180 -State 230: +State 261: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (135) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (178) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 96 - {default} reduce 135 + COMMA shift 98 + {default} reduce 178 -State 231: +State 262: vdefAssignStatic_stmt ::= STATIC * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - VAR shift 112 + VAR shift 149 -State 232: +State 263: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (134) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (177) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 96 - {default} reduce 134 + COMMA shift 98 + {default} reduce 177 -State 233: +State 264: nameList_nonEmpty ::= nameList_nonEmpty COMMA * NAME - NAME shift 361 + NAME shift 424 -State 234: - expr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET +State 265: + nonConstExpr ::= nonConstExpr QMARK expr * COLON expr - RSQBRACKET shift 363 + COLON shift 66 -State 235: - expr ::= CONDITIONNAME LPAREN fArgs * RPAREN +State 266: + constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET - RPAREN shift 364 + RSQBRACKET shift 429 -State 236: - expr ::= ACTIONNAME LPAREN fArgs * RPAREN +State 267: + constExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN - RPAREN shift 365 + RPAREN shift 434 -State 237: - expr ::= ACTIONNAME * LPAREN fArgs RPAREN +State 268: + constExpr ::= ACTIONNAME LPAREN fArgs * RPAREN - LPAREN shift 24 + RPAREN shift 458 -State 238: - fArgs_nonEmpty ::= fArgs_nonEmpty * COMMA fArg - (93) fArgs ::= fArgs_nonEmpty * +State 269: + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + (101) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * + + COMMA shift 29 + {default} reduce 101 + +State 270: + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + (100) fArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA shift 31 - {default} reduce 93 + {default} reduce 100 -State 239: - expr ::= CONDITIONNAME * LPAREN fArgs RPAREN +State 271: + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN + + LPAREN shift 24 + +State 272: + constExpr ::= CONDITIONNAME * LPAREN fArgs RPAREN LPAREN shift 25 -State 240: - expr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN +State 273: + constExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN - RPAREN shift 369 + RPAREN shift 473 -State 241: - expr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN +State 274: + constExpr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN LPAREN shift 43 -State 242: - expr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN +State 275: + constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN - RPAREN shift 370 + RPAREN shift 474 -State 243: - expr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN +State 276: + constExpr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN LPAREN shift 44 -State 244: - expr ::= STATTXTTBL LPAREN STRING * RPAREN +State 277: + constExpr ::= STATTXTTBL LPAREN STRING * RPAREN - RPAREN shift 371 + RPAREN shift 475 -State 245: - expr ::= STATTXTTBL LPAREN * STRING RPAREN +State 278: + constExpr ::= STATTXTTBL LPAREN * STRING RPAREN - STRING shift 244 + STRING shift 277 -State 246: - expr ::= STATTXTTBL * LPAREN STRING RPAREN +State 279: + constExpr ::= STATTXTTBL * LPAREN STRING RPAREN + + LPAREN shift 278 + +State 280: + constExpr ::= LOCATION LPAREN STRING * RPAREN + + RPAREN shift 476 + +State 281: + constExpr ::= LOCATION LPAREN * STRING RPAREN + + STRING shift 280 + +State 282: + constExpr ::= LOCATION * LPAREN STRING RPAREN + + LPAREN shift 281 + +State 283: + constExpr ::= SWITCH LPAREN STRING * RPAREN + + RPAREN shift 477 + +State 284: + constExpr ::= SWITCH LPAREN * STRING RPAREN + + STRING shift 283 + +State 285: + constExpr ::= SWITCH * LPAREN STRING RPAREN + + LPAREN shift 284 + +State 286: + constExpr ::= UNIT LPAREN STRING * RPAREN + + RPAREN shift 478 + +State 287: + constExpr ::= UNIT LPAREN * STRING RPAREN + + STRING shift 286 + +State 288: + constExpr ::= UNIT * LPAREN STRING RPAREN + + LPAREN shift 287 + +State 289: + constExpr ::= MAPSTRING LPAREN STRING * RPAREN + + RPAREN shift 479 + +State 290: + constExpr ::= MAPSTRING LPAREN * STRING RPAREN + + STRING shift 289 + +State 291: + constExpr ::= MAPSTRING * LPAREN STRING RPAREN + + LPAREN shift 290 + +State 292: + nonConstExpr ::= L2V LPAREN expr * RPAREN + + RPAREN shift 480 + +State 293: + nonConstExpr ::= L2V * LPAREN expr RPAREN + + LPAREN shift 92 + +State 294: + exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET + + RSQBRACKET shift 482 + +State 295: + numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER + + NUMBER shift 483 + +State 296: + (63) numList_nonEmpty ::= NUMBER * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET + + RSQBRACKET shift 315 + {default} reduce 63 + +State 297: + exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + + LSQBRACKET shift 154 + +State 298: + exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (107) nonConstExpr ::= funcexpr * + + LSQBRACKET shift 297 + {default} reduce 107 + +State 299: + bodyStmt ::= return_stmt * SEMICOLON + + SEMICOLON shift 487 + +State 300: + bodyStmt ::= break_stmt * SEMICOLON + + SEMICOLON shift 488 + +State 301: + bodyStmt ::= continue_stmt * SEMICOLON + + SEMICOLON shift 489 + +State 302: + bodyStmt ::= funcexprStmt * SEMICOLON + + SEMICOLON shift 497 + +State 303: + bodyStmt ::= assign_stmt * SEMICOLON + + SEMICOLON shift 498 + +State 304: + bodyStmt ::= cdef_stmt * SEMICOLON + + SEMICOLON shift 499 + +State 305: + bodyStmt ::= vdefAssign_stmt * SEMICOLON + + SEMICOLON shift 500 + +State 306: + bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON + + SEMICOLON shift 501 + +State 307: + bodyStmt ::= vdef_stmt * SEMICOLON + + SEMICOLON shift 502 + +State 308: + blockStmt ::= lbracket error * RBRACKET + + RBRACKET shift 505 + +State 309: + stmt ::= error * SEMICOLON + + SEMICOLON shift 510 + +State 310: + (65) typedName ::= NAME * + typedName ::= NAME * COLON expr + + COLON shift 96 + {default} reduce 65 + +State 311: + lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes + + LPAREN shift 120 + +State 312: + nonConstExpr ::= nonConstExpr PERIOD * NAME + + NAME shift 512 + +State 313: + (81) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN + + LPAREN shift 27 + {default} reduce 81 + +State 314: + (80) constExpr ::= KILLS * + constExpr ::= KILLS * LPAREN fArgs RPAREN + + LPAREN shift 28 + {default} reduce 80 + +State 315: + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET + + RSQBRACKET shift 515 + +State 316: + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET + + RSQBRACKET shift 315 + +State 317: + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET + + NUMBER shift 316 + +State 318: + nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + + LSQBRACKET shift 317 + +State 319: + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (107) nonConstExpr ::= funcexpr * + + LSQBRACKET shift 318 + {default} reduce 107 + +State 320: + (24) fdef_rettypes ::= COLON exprList_nonEmpty * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + + COMMA shift 98 + {default} reduce 24 + +State 321: + fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON + + RPAREN shift 140 + +State 322: + fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON + + LPAREN shift 121 + +State 323: + fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON + + NAME shift 322 + +State 324: + relimp_chunk ::= relimp_path AS NAME * SEMICOLON + + SEMICOLON shift 516 + +State 325: + relimp_chunk ::= relimp_path AS * NAME SEMICOLON + + NAME shift 324 + +State 326: + relimp_path ::= relimp_path PERIOD * NAME + + NAME shift 518 + +State 327: + import_chunk ::= IMPORT dottedName AS * NAME + + NAME shift 521 + +State 328: + dottedName ::= dottedName PERIOD * NAME + + NAME shift 522 + +State 329: + chunk ::= cdef_global_stmt * SEMICOLON + + SEMICOLON shift 526 + +State 330: + chunk ::= vdefAssign_global_stmt * SEMICOLON + + SEMICOLON shift 527 + +State 331: + chunk ::= vdef_stmt * SEMICOLON + + SEMICOLON shift 528 + +State 332: + chunk ::= import_chunk * SEMICOLON + + SEMICOLON shift 532 + +State 333: + (33) object_chunk ::= object_body RBRACKET SEMICOLON * + + {default} reduce 33 + +State 334: + (32) object_body ::= object_body method_chunk * + + {default} reduce 32 + +State 335: + (31) method_chunk ::= method_header stmt * + + {default} reduce 31 + +State 336: + (30) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + + {default} reduce 30 + +State 337: + (29) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * + + {default} reduce 29 + +State 338: + (28) object_body ::= OBJECT NAME LBRACKET * + + {default} reduce 28 + +State 339: + (26) fdef_chunk ::= fdef_header stmt * + + {default} reduce 26 + +State 340: + (27) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * + + {default} reduce 27 + +State 341: + (25) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + + {default} reduce 25 + +State 342: + (259) constExpr ::= KILLS LPAREN fArgs RPAREN * + + {default} reduce 259 + +State 343: + (92) fConstArg ::= NAME ASSIGN STRING * + + {default} reduce 92 + +State 344: + (91) fConstArg ::= NAME ASSIGN expr * + + {default} reduce 91 + +State 345: + (105) funcexpr ::= NAME LPAREN fArgs RPAREN * + + {default} reduce 105 + +State 346: + (83) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + + {default} reduce 83 + +State 347: + (106) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * + + {default} reduce 106 + +State 348: + (84) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * + + {default} reduce 84 + +State 349: + (70) typedNameList ::= typedNameList_nonEmpty * + + {default} reduce 70 + +State 350: + (68) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * + + {default} reduce 68 + +State 351: + (85) constExpr ::= lambdaExprStart stmt * - LPAREN shift 245 + {default} reduce 85 -State 247: - expr ::= LOCATION LPAREN STRING * RPAREN +State 352: + (217) if_stmt ::= if_block else_header stmt * - RPAREN shift 372 + {default} reduce 217 -State 248: - expr ::= LOCATION LPAREN * STRING RPAREN +State 353: + (224) case_chunks ::= case_chunk * - STRING shift 247 + {default} reduce 224 -State 249: - expr ::= LOCATION * LPAREN STRING RPAREN +State 354: + (228) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * - LPAREN shift 248 + {default} reduce 228 -State 250: - expr ::= SWITCH LPAREN STRING * RPAREN +State 355: + (225) default_clause ::= DEFAULT COLON * - RPAREN shift 373 + {default} reduce 225 -State 251: - expr ::= SWITCH LPAREN * STRING RPAREN +State 356: + (223) case_chunks ::= case_chunks case_chunk * - STRING shift 250 + {default} reduce 223 -State 252: - expr ::= SWITCH * LPAREN STRING RPAREN +State 357: + (264) constActionList ::= constActionList constAction * - LPAREN shift 251 + {default} reduce 264 -State 253: - expr ::= UNIT LPAREN STRING * RPAREN +State 358: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (174) constExpr ::= LNOT constExpr * - RPAREN shift 374 + {default} reduce 174 -State 254: - expr ::= UNIT LPAREN * STRING RPAREN +State 359: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (156) constExpr ::= BITNOT constExpr * - STRING shift 253 + {default} reduce 156 -State 255: - expr ::= UNIT * LPAREN STRING RPAREN +State 360: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (154) constExpr ::= MINUS constExpr * - LPAREN shift 254 + {default} reduce 154 -State 256: - expr ::= MAPSTRING LPAREN STRING * RPAREN +State 361: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (152) constExpr ::= PLUS constExpr * - RPAREN shift 375 + {default} reduce 152 -State 257: - expr ::= MAPSTRING LPAREN * STRING RPAREN +State 362: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + (134) constExpr ::= constExpr MOD constExpr * + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr - STRING shift 256 + {default} reduce 134 -State 258: - expr ::= MAPSTRING * LPAREN STRING RPAREN +State 363: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + (131) constExpr ::= constExpr DIVIDE constExpr * + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr - LPAREN shift 257 + {default} reduce 131 -State 259: - expr ::= L2V * LPAREN expr RPAREN +State 364: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + (128) constExpr ::= constExpr MULTIPLY constExpr * + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr - LPAREN shift 70 + {default} reduce 128 -State 260: - exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET +State 365: + (263) constActionList ::= constAction * - RSQBRACKET shift 377 + {default} reduce 263 -State 261: - numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER +State 366: + (262) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * - NUMBER shift 378 + {default} reduce 262 -State 262: - (63) numList_nonEmpty ::= NUMBER * - expr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET +State 367: + (260) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * - RSQBRACKET shift 282 - {default} reduce 63 + {default} reduce 260 -State 263: - exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET +State 368: + (261) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * - LSQBRACKET shift 117 + {default} reduce 261 -State 264: - exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - expr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (97) expr ::= funcexpr * +State 369: + (257) return_stmt ::= RETURN exprList * - LSQBRACKET shift 263 - {default} reduce 97 + {default} reduce 257 -State 265: - expr ::= expr PERIOD * NAME - lvalue ::= expr PERIOD * NAME +State 370: + (256) break_stmt ::= BREAK * - NAME shift 159 + {default} reduce 256 -State 266: - bodyStmt ::= return_stmt * SEMICOLON +State 371: + (255) continue_stmt ::= CONTINUE * - SEMICOLON shift 382 + {default} reduce 255 -State 267: - bodyStmt ::= break_stmt * SEMICOLON +State 372: + (254) foreach_stmt ::= foreach_header RPAREN stmt * - SEMICOLON shift 383 + {default} reduce 254 -State 268: - bodyStmt ::= continue_stmt * SEMICOLON +State 373: + (252) foreach_opener ::= FOREACH LPAREN * - SEMICOLON shift 384 + {default} reduce 252 -State 269: - bodyStmt ::= funcexprStmt * SEMICOLON +State 374: + (251) for_stmt ::= for_header RPAREN stmt * - SEMICOLON shift 392 + {default} reduce 251 -State 270: - bodyStmt ::= assign_stmt * SEMICOLON +State 375: + (250) for_header ::= for_header2 for_action_stmt * - SEMICOLON shift 393 + {default} reduce 250 -State 271: - bodyStmt ::= cdef_stmt * SEMICOLON +State 376: + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty + (245) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * - SEMICOLON shift 394 + {default} reduce 245 -State 272: - bodyStmt ::= vdefAssign_stmt * SEMICOLON +State 377: + (244) for_action_stmt_nonEmpty ::= assign_stmt * - SEMICOLON shift 395 + {default} reduce 244 -State 273: - bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON +State 378: + (243) for_action_stmt_nonEmpty ::= funcexprStmt * - SEMICOLON shift 396 + {default} reduce 243 -State 274: - bodyStmt ::= vdef_stmt * SEMICOLON +State 379: + (249) for_header2 ::= for_header1 expr SEMICOLON * - SEMICOLON shift 397 + {default} reduce 249 -State 275: - blockStmt ::= lbracket error * RBRACKET +State 380: + (248) for_header1 ::= for_opener for_init_stmt SEMICOLON * - RBRACKET shift 400 + {default} reduce 248 -State 276: - stmt ::= error * SEMICOLON +State 381: + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty + (240) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * - SEMICOLON shift 405 + {default} reduce 240 -State 277: - (65) typedName ::= NAME * - typedName ::= NAME * COLON expr +State 382: + (239) for_init_stmt_nonEmpty ::= assign_stmt * - COLON shift 94 - {default} reduce 65 + {default} reduce 239 -State 278: - lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes +State 383: + (238) for_init_stmt_nonEmpty ::= cdef_stmt * - LPAREN shift 99 + {default} reduce 238 -State 279: - (81) expr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN +State 384: + (237) for_init_stmt_nonEmpty ::= vdefAssign_stmt * - LPAREN shift 27 - {default} reduce 81 + {default} reduce 237 -State 280: - (80) expr ::= KILLS * - expr ::= KILLS * LPAREN fArgs RPAREN +State 385: + (236) for_init_stmt_nonEmpty ::= vdef_stmt * - LPAREN shift 28 - {default} reduce 80 + {default} reduce 236 -State 281: - expr ::= expr PERIOD * NAME +State 386: + (235) for_opener ::= FOR LPAREN * - NAME shift 407 + {default} reduce 235 -State 282: - expr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET +State 387: + (234) while_stmt ::= while_header RPAREN stmt * - RSQBRACKET shift 408 + {default} reduce 234 -State 283: - expr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET +State 388: + (233) while_header ::= while_start LPAREN expr * - RSQBRACKET shift 282 + {default} reduce 233 -State 284: - expr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET +State 389: + (232) while_start ::= WHILE * - NUMBER shift 283 + {default} reduce 232 -State 285: - expr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET +State 390: + (231) switchcase_stmt ::= switchcase_block RBRACKET * - LSQBRACKET shift 284 + {default} reduce 231 -State 286: - expr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (97) expr ::= funcexpr * +State 391: + (60) bodyStmtList ::= bodyStmt * - LSQBRACKET shift 285 - {default} reduce 97 + {default} reduce 60 -State 287: - (24) fdef_rettypes ::= COLON exprList_nonEmpty * - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr +State 392: + (220) case_clause ::= case_start exprList_nonEmpty COLON * - COMMA shift 96 - {default} reduce 24 + {default} reduce 220 -State 288: - fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON +State 393: + (219) case_start ::= CASE * - RPAREN shift 104 + {default} reduce 219 -State 289: - fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON +State 394: + (218) switchcase_header ::= SWITCHCASE LPAREN expr * - LPAREN shift 100 + {default} reduce 218 -State 290: - fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON +State 395: + (214) if_block ::= if_block elif_header RPAREN stmt * - NAME shift 289 + {default} reduce 214 -State 291: - relimp_chunk ::= relimp_path AS NAME * SEMICOLON +State 396: + (213) elif_header ::= elif_start LPAREN expr * - SEMICOLON shift 409 + {default} reduce 213 -State 292: - relimp_chunk ::= relimp_path AS * NAME SEMICOLON +State 397: + (212) elif_start ::= ELSE IF * - NAME shift 291 + {default} reduce 212 -State 293: - relimp_path ::= relimp_path PERIOD * NAME +State 398: + (211) if_block ::= if_header RPAREN stmt * - NAME shift 411 + {default} reduce 211 -State 294: - import_chunk ::= IMPORT dottedName AS * NAME +State 399: + (210) if_header ::= if_start LPAREN expr * - NAME shift 414 + {default} reduce 210 -State 295: - dottedName ::= dottedName PERIOD * NAME +State 400: + (209) if_start ::= IF * - NAME shift 415 + {default} reduce 209 -State 296: - chunk ::= cdef_global_stmt * SEMICOLON +State 401: + (208) once_stmt ::= once_block * - SEMICOLON shift 419 + {default} reduce 208 -State 297: - chunk ::= vdefAssign_global_stmt * SEMICOLON +State 402: + (207) once_block ::= once_nocond stmt * - SEMICOLON shift 420 + {default} reduce 207 -State 298: - chunk ::= vdef_stmt * SEMICOLON +State 403: + (205) once_block ::= once_header RPAREN stmt * - SEMICOLON shift 421 + {default} reduce 205 -State 299: - chunk ::= import_chunk * SEMICOLON +State 404: + (204) once_header ::= once_start LPAREN expr * - SEMICOLON shift 425 + {default} reduce 204 -State 300: - (33) object_chunk ::= object_body RBRACKET SEMICOLON * +State 405: + (203) once_start ::= ONCE * - {default} reduce 33 + {default} reduce 203 -State 301: - (32) object_body ::= object_body method_chunk * +State 406: + (191) assign_stmt ::= DEC lvalue * - {default} reduce 32 + {default} reduce 191 -State 302: - (31) method_chunk ::= method_header stmt * +State 407: + (189) assign_stmt ::= INC lvalue * - {default} reduce 31 + {default} reduce 189 -State 303: - (30) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * +State 408: + (186) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * - {default} reduce 30 + {default} reduce 186 -State 304: - (29) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * +State 409: + (202) assign_stmt ::= lvalue IBXR expr * - {default} reduce 29 + {default} reduce 202 -State 305: - (28) object_body ::= OBJECT NAME LBRACKET * +State 410: + (201) assign_stmt ::= lvalue IBOR expr * - {default} reduce 28 + {default} reduce 201 -State 306: - (26) fdef_chunk ::= fdef_header stmt * +State 411: + (200) assign_stmt ::= lvalue IBND expr * - {default} reduce 26 + {default} reduce 200 -State 307: - (27) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * +State 412: + (199) assign_stmt ::= lvalue IRSH expr * - {default} reduce 27 + {default} reduce 199 -State 308: - (25) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * +State 413: + (198) assign_stmt ::= lvalue ILSH expr * - {default} reduce 25 + {default} reduce 198 -State 309: - (83) expr ::= expr LSQBRACKET expr RSQBRACKET * +State 414: + (197) assign_stmt ::= lvalue IMOD expr * - {default} reduce 83 + {default} reduce 197 -State 310: - (216) expr ::= KILLS LPAREN fArgs RPAREN * +State 415: + (196) assign_stmt ::= lvalue IDIV expr * - {default} reduce 216 + {default} reduce 196 -State 311: - (89) fArg ::= NAME ASSIGN STRING * +State 416: + (195) assign_stmt ::= lvalue IMUL expr * - {default} reduce 89 + {default} reduce 195 -State 312: - (95) funcexpr ::= NAME LPAREN fArgs RPAREN * +State 417: + (194) assign_stmt ::= lvalue ISUB expr * - {default} reduce 95 + {default} reduce 194 -State 313: - (96) funcexpr ::= expr LPAREN fArgs RPAREN * +State 418: + (193) assign_stmt ::= lvalue IADD expr * - {default} reduce 96 + {default} reduce 193 -State 314: - (84) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * +State 419: + (192) assign_stmt ::= lvalue DEC * - {default} reduce 84 + {default} reduce 192 -State 315: - (70) typedNameList ::= typedNameList_nonEmpty * +State 420: + (190) assign_stmt ::= lvalue INC * - {default} reduce 70 + {default} reduce 190 -State 316: - (68) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * +State 421: + (187) assign_stmt ::= lvalue ASSIGN expr * - {default} reduce 68 + {default} reduce 187 -State 317: - (85) expr ::= lambdaExprStart stmt * +State 422: + (184) lvalue ::= expr PERIOD NAME * - {default} reduce 85 + {default} reduce 184 -State 318: - (174) if_stmt ::= if_block else_header stmt * +State 423: + (183) lvalue ::= expr LSQBRACKET expr RSQBRACKET * - {default} reduce 174 + {default} reduce 183 -State 319: - (181) case_chunks ::= case_chunk * +State 424: + (72) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * - {default} reduce 181 + {default} reduce 72 -State 320: - (185) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * +State 425: + (71) nameList_nonEmpty ::= NAME * - {default} reduce 185 + {default} reduce 71 -State 321: - (182) default_clause ::= DEFAULT COLON * +State 426: + (121) nonConstExpr ::= nonConstExpr QMARK expr COLON expr * - {default} reduce 182 + {default} reduce 121 -State 322: - (180) case_chunks ::= case_chunks case_chunk * +State 427: + (108) constExpr ::= LPAREN constExpr RPAREN * - {default} reduce 180 + {default} reduce 108 -State 323: - (217) actionStmt ::= ACTIONNAME LPAREN fArgs RPAREN SEMICOLON * +State 428: + (124) nonConstExpr ::= nonConstExpr PLUS expr * - {default} reduce 217 + {default} reduce 124 -State 324: - (214) return_stmt ::= RETURN exprList * +State 429: + (112) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * - {default} reduce 214 + {default} reduce 112 -State 325: - (213) break_stmt ::= BREAK * +State 430: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (152) constExpr ::= PLUS constExpr * + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr - {default} reduce 213 + {default} reduce 152 -State 326: - (212) continue_stmt ::= CONTINUE * +State 431: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (154) constExpr ::= MINUS constExpr * + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr - {default} reduce 212 + {default} reduce 154 -State 327: - (211) foreach_stmt ::= foreach_header RPAREN stmt * +State 432: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (156) constExpr ::= BITNOT constExpr * + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr - {default} reduce 211 + {default} reduce 156 -State 328: - (209) foreach_opener ::= FOREACH LPAREN * +State 433: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr + (174) constExpr ::= LNOT constExpr * - {default} reduce 209 + {default} reduce 174 -State 329: - (208) for_stmt ::= for_header RPAREN stmt * +State 434: + (258) constExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * - {default} reduce 208 + {default} reduce 258 -State 330: - (207) for_header ::= for_header2 for_action_stmt * +State 435: + (172) nonConstExpr ::= constExpr LOR expr * - {default} reduce 207 + {default} reduce 172 -State 331: - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (202) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * +State 436: + (170) nonConstExpr ::= constExpr LAND expr * - {default} reduce 202 + {default} reduce 170 -State 332: - (201) for_action_stmt_nonEmpty ::= assign_stmt * +State 437: + (168) nonConstExpr ::= constExpr GT expr * - {default} reduce 201 + {default} reduce 168 -State 333: - (200) for_action_stmt_nonEmpty ::= funcexprStmt * +State 438: + (166) nonConstExpr ::= constExpr LT expr * - {default} reduce 200 + {default} reduce 166 -State 334: - (206) for_header2 ::= for_header1 expr SEMICOLON * +State 439: + (164) nonConstExpr ::= constExpr GE expr * - {default} reduce 206 + {default} reduce 164 -State 335: - (205) for_header1 ::= for_opener for_init_stmt SEMICOLON * +State 440: + (162) nonConstExpr ::= constExpr LE expr * - {default} reduce 205 + {default} reduce 162 -State 336: - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (197) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * +State 441: + (160) nonConstExpr ::= constExpr NE expr * - {default} reduce 197 + {default} reduce 160 -State 337: - (196) for_init_stmt_nonEmpty ::= assign_stmt * +State 442: + (158) nonConstExpr ::= constExpr EQ expr * - {default} reduce 196 + {default} reduce 158 -State 338: - (195) for_init_stmt_nonEmpty ::= cdef_stmt * +State 443: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + (134) constExpr ::= constExpr MOD constExpr * + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr - {default} reduce 195 + {default} reduce 134 -State 339: - (194) for_init_stmt_nonEmpty ::= vdefAssign_stmt * +State 444: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + (131) constExpr ::= constExpr DIVIDE constExpr * + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr - {default} reduce 194 + {default} reduce 131 -State 340: - (193) for_init_stmt_nonEmpty ::= vdef_stmt * +State 445: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + (128) constExpr ::= constExpr MULTIPLY constExpr * + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + nonConstExpr ::= constExpr * EQ expr + nonConstExpr ::= constExpr * NE expr + nonConstExpr ::= constExpr * LE expr + nonConstExpr ::= constExpr * GE expr + nonConstExpr ::= constExpr * LT expr + nonConstExpr ::= constExpr * GT expr + nonConstExpr ::= constExpr * LAND expr + nonConstExpr ::= constExpr * LOR expr - {default} reduce 193 + {default} reduce 128 -State 341: - (192) for_opener ::= FOR LPAREN * +State 446: + (173) nonConstExpr ::= nonConstExpr LOR expr * - {default} reduce 192 + {default} reduce 173 -State 342: - (191) while_stmt ::= while_header RPAREN stmt * +State 447: + (171) nonConstExpr ::= nonConstExpr LAND expr * - {default} reduce 191 + {default} reduce 171 -State 343: - (189) while_start ::= WHILE * +State 448: + (169) nonConstExpr ::= nonConstExpr GT expr * - {default} reduce 189 + {default} reduce 169 -State 344: - (188) switchcase_stmt ::= switchcase_block RBRACKET * +State 449: + (167) nonConstExpr ::= nonConstExpr LT expr * - {default} reduce 188 + {default} reduce 167 -State 345: - (60) bodyStmtList ::= bodyStmt * +State 450: + (165) nonConstExpr ::= nonConstExpr GE expr * - {default} reduce 60 + {default} reduce 165 -State 346: - (177) case_clause ::= case_start exprList_nonEmpty COLON * +State 451: + (163) nonConstExpr ::= nonConstExpr LE expr * - {default} reduce 177 + {default} reduce 163 -State 347: - (176) case_start ::= CASE * +State 452: + (161) nonConstExpr ::= nonConstExpr NE expr * - {default} reduce 176 + {default} reduce 161 -State 348: - (171) if_block ::= if_block elif_header RPAREN stmt * +State 453: + (159) nonConstExpr ::= nonConstExpr EQ expr * - {default} reduce 171 + {default} reduce 159 -State 349: - (169) elif_start ::= ELSE IF * +State 454: + (151) nonConstExpr ::= nonConstExpr BITXOR expr * - {default} reduce 169 + {default} reduce 151 -State 350: - (168) if_block ::= if_header RPAREN stmt * +State 455: + (148) nonConstExpr ::= nonConstExpr BITOR expr * - {default} reduce 168 + {default} reduce 148 -State 351: - (166) if_start ::= IF * +State 456: + (145) nonConstExpr ::= nonConstExpr BITAND expr * - {default} reduce 166 + {default} reduce 145 -State 352: - (165) once_stmt ::= once_block * +State 457: + (142) nonConstExpr ::= nonConstExpr RSHIFT expr * - {default} reduce 165 + {default} reduce 142 -State 353: - (164) once_block ::= once_nocond stmt * +State 458: + (266) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * - {default} reduce 164 + {default} reduce 266 -State 354: - (162) once_block ::= once_header RPAREN stmt * +State 459: + (103) fArgs ::= fArgs_nonEmpty * - {default} reduce 162 + {default} reduce 103 -State 355: - (160) once_start ::= ONCE * +State 460: + (99) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * - {default} reduce 160 + {default} reduce 99 -State 356: - (148) assign_stmt ::= DEC lvalue * +State 461: + (94) fArg ::= fNonConstArg * - {default} reduce 148 + {default} reduce 94 -State 357: - (146) assign_stmt ::= INC lvalue * +State 462: + (93) fArg ::= fConstArg * - {default} reduce 146 + {default} reduce 93 -State 358: - (143) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * +State 463: + (97) fNonConstArgs_nonEmpty ::= fNonConstArg * - {default} reduce 143 + {default} reduce 97 -State 359: - (149) assign_stmt ::= lvalue DEC * +State 464: + (98) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * - {default} reduce 149 + {default} reduce 98 -State 360: - (147) assign_stmt ::= lvalue INC * +State 465: + (96) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * - {default} reduce 147 + {default} reduce 96 -State 361: - (72) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * +State 466: + (95) fConstArgs_nonEmpty ::= fConstArg * - {default} reduce 72 + {default} reduce 95 -State 362: - (71) nameList_nonEmpty ::= NAME * +State 467: + (90) fConstArg ::= STRING * - {default} reduce 71 + {default} reduce 90 -State 363: - (101) expr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * +State 468: + (139) nonConstExpr ::= nonConstExpr LSHIFT expr * - {default} reduce 101 + {default} reduce 139 -State 364: - (215) expr ::= CONDITIONNAME LPAREN fArgs RPAREN * +State 469: + (136) nonConstExpr ::= nonConstExpr MOD expr * - {default} reduce 215 + {default} reduce 136 -State 365: - (218) expr ::= ACTIONNAME LPAREN fArgs RPAREN * +State 470: + (133) nonConstExpr ::= nonConstExpr DIVIDE expr * - {default} reduce 218 + {default} reduce 133 -State 366: - (91) fArgs_nonEmpty ::= fArgs_nonEmpty COMMA fArg * +State 471: + (130) nonConstExpr ::= nonConstExpr MULTIPLY expr * - {default} reduce 91 + {default} reduce 130 -State 367: - (90) fArgs_nonEmpty ::= fArg * +State 472: + (127) nonConstExpr ::= nonConstExpr MINUS expr * - {default} reduce 90 + {default} reduce 127 -State 368: - (87) fArg ::= STRING * +State 473: + (120) constExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * - {default} reduce 87 + {default} reduce 120 -State 369: - (109) expr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * +State 474: + (119) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * - {default} reduce 109 + {default} reduce 119 -State 370: - (108) expr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * +State 475: + (118) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * - {default} reduce 108 + {default} reduce 118 -State 371: - (107) expr ::= STATTXTTBL LPAREN STRING RPAREN * +State 476: + (117) constExpr ::= LOCATION LPAREN STRING RPAREN * - {default} reduce 107 + {default} reduce 117 -State 372: - (106) expr ::= LOCATION LPAREN STRING RPAREN * +State 477: + (116) constExpr ::= SWITCH LPAREN STRING RPAREN * - {default} reduce 106 + {default} reduce 116 -State 373: - (105) expr ::= SWITCH LPAREN STRING RPAREN * +State 478: + (115) constExpr ::= UNIT LPAREN STRING RPAREN * - {default} reduce 105 + {default} reduce 115 -State 374: - (104) expr ::= UNIT LPAREN STRING RPAREN * +State 479: + (114) constExpr ::= MAPSTRING LPAREN STRING RPAREN * - {default} reduce 104 + {default} reduce 114 -State 375: - (103) expr ::= MAPSTRING LPAREN STRING RPAREN * +State 480: + (113) nonConstExpr ::= L2V LPAREN expr RPAREN * - {default} reduce 103 + {default} reduce 113 -State 376: - (102) expr ::= L2V LPAREN expr RPAREN * +State 481: + (75) exprList_nonEmpty ::= expr * - {default} reduce 102 + {default} reduce 75 -State 377: +State 482: (73) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * {default} reduce 73 -State 378: +State 483: (64) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * {default} reduce 64 -State 379: - (98) expr ::= LPAREN expr RPAREN * +State 484: + (109) nonConstExpr ::= LPAREN nonConstExpr RPAREN * - {default} reduce 98 + {default} reduce 109 -State 380: +State 485: (62) bodyStmtList ::= bodyStmtList error * {default} reduce 62 -State 381: +State 486: (61) bodyStmtList ::= bodyStmtList bodyStmt * {default} reduce 61 -State 382: +State 487: (59) bodyStmt ::= return_stmt SEMICOLON * {default} reduce 59 -State 383: +State 488: (58) bodyStmt ::= break_stmt SEMICOLON * {default} reduce 58 -State 384: +State 489: (57) bodyStmt ::= continue_stmt SEMICOLON * {default} reduce 57 -State 385: +State 490: (56) bodyStmt ::= switchcase_stmt * {default} reduce 56 -State 386: +State 491: (55) bodyStmt ::= foreach_stmt * {default} reduce 55 -State 387: +State 492: (54) bodyStmt ::= for_stmt * {default} reduce 54 -State 388: +State 493: (53) bodyStmt ::= while_stmt * {default} reduce 53 -State 389: +State 494: (52) bodyStmt ::= if_stmt * {default} reduce 52 -State 390: +State 495: (51) bodyStmt ::= once_stmt * {default} reduce 51 -State 391: +State 496: (50) bodyStmt ::= actionStmt * {default} reduce 50 -State 392: +State 497: (49) bodyStmt ::= funcexprStmt SEMICOLON * {default} reduce 49 -State 393: +State 498: (48) bodyStmt ::= assign_stmt SEMICOLON * {default} reduce 48 -State 394: +State 499: (47) bodyStmt ::= cdef_stmt SEMICOLON * {default} reduce 47 -State 395: +State 500: (46) bodyStmt ::= vdefAssign_stmt SEMICOLON * {default} reduce 46 -State 396: +State 501: (45) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * {default} reduce 45 -State 397: +State 502: (44) bodyStmt ::= vdef_stmt SEMICOLON * {default} reduce 44 -State 398: +State 503: (43) bodyStmt ::= SEMICOLON * {default} reduce 43 -State 399: +State 504: (42) bodyStmt ::= blockStmt * {default} reduce 42 -State 400: +State 505: (39) blockStmt ::= lbracket error RBRACKET * {default} reduce 39 -State 401: +State 506: (38) blockStmt ::= blockStmtSub rbracket * {default} reduce 38 -State 402: +State 507: (37) rbracket ::= RBRACKET * {default} reduce 37 -State 403: +State 508: (36) lbracket ::= LBRACKET * {default} reduce 36 -State 404: +State 509: (35) stmt ::= bodyStmt * {default} reduce 35 -State 405: +State 510: (34) stmt ::= error SEMICOLON * {default} reduce 34 -State 406: - (79) expr ::= NUMBER * +State 511: + (66) typedName ::= NAME COLON expr * - {default} reduce 79 + {default} reduce 66 -State 407: - (82) expr ::= expr PERIOD NAME * +State 512: + (82) nonConstExpr ::= nonConstExpr PERIOD NAME * {default} reduce 82 -State 408: - (74) expr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * +State 513: + (79) constExpr ::= NUMBER * + + {default} reduce 79 + +State 514: + (76) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * + + {default} reduce 76 + +State 515: + (74) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * {default} reduce 74 -State 409: +State 516: (18) relimp_chunk ::= relimp_path AS NAME SEMICOLON * {default} reduce 18 -State 410: +State 517: (17) relimp_chunk ::= relimp_path SEMICOLON * {default} reduce 17 -State 411: +State 518: (16) relimp_path ::= relimp_path PERIOD NAME * {default} reduce 16 -State 412: +State 519: (15) relimp_path ::= relimp_start NAME * {default} reduce 15 -State 413: +State 520: (14) relimp_start ::= relimp_start PERIOD * {default} reduce 14 -State 414: +State 521: (21) import_chunk ::= IMPORT dottedName AS NAME * {default} reduce 21 -State 415: +State 522: (20) dottedName ::= dottedName PERIOD NAME * {default} reduce 20 -State 416: +State 523: (19) dottedName ::= NAME * {default} reduce 19 -State 417: +State 524: (13) relimp_start ::= IMPORT PERIOD * {default} reduce 13 -State 418: +State 525: (12) chunk ::= blockStmt * {default} reduce 12 -State 419: +State 526: (11) chunk ::= cdef_global_stmt SEMICOLON * {default} reduce 11 -State 420: +State 527: (10) chunk ::= vdefAssign_global_stmt SEMICOLON * {default} reduce 10 -State 421: +State 528: (9) chunk ::= vdef_stmt SEMICOLON * {default} reduce 9 -State 422: +State 529: (8) chunk ::= object_chunk * {default} reduce 8 -State 423: +State 530: (7) chunk ::= fdecl_chunk * {default} reduce 7 -State 424: +State 531: (6) chunk ::= fdef_chunk * {default} reduce 6 -State 425: +State 532: (5) chunk ::= import_chunk SEMICOLON * {default} reduce 5 -State 426: +State 533: (4) chunk ::= relimp_chunk * {default} reduce 4 -State 427: +State 534: (3) chunks ::= chunks error * {default} reduce 3 -State 428: +State 535: (2) chunks ::= chunks chunk * {default} reduce 2 @@ -13797,41 +20058,49 @@ Symbols: 130: expr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME 131: nameList_nonEmpty: NAME 132: funcexpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 133: exprList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 134: lambdaExprStart: FUNCTION - 135: fArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 136: fArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 137: fArgs: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 138: commaSkippable: COMMA - 139: lvalue: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 140: lvalueList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 141: once_start: ONCE - 142: once_header: ONCE - 143: once_block: ONCE - 144: once_nocond: ONCE - 145: if_start: IF - 146: if_header: IF - 147: if_block: IF - 148: elif_start: ELSE - 149: elif_header: ELSE - 150: else_header: ELSE - 151: switchcase_header: SWITCHCASE - 152: case_start: CASE - 153: case_clause: CASE - 154: case_chunk: CASE - 155: case_chunks: CASE - 156: default_clause: DEFAULT - 157: default_chunk: DEFAULT - 158: switchcase_block: SWITCHCASE - 159: while_start: WHILE - 160: while_header: WHILE - 161: for_opener: FOR - 162: for_init_stmt_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONST INC DEC CONDITIONNAME ACTIONNAME - 163: for_init_stmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONST INC DEC CONDITIONNAME ACTIONNAME - 164: for_action_stmt_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST INC DEC CONDITIONNAME ACTIONNAME - 165: for_action_stmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST INC DEC CONDITIONNAME ACTIONNAME - 166: for_header1: FOR - 167: for_header2: FOR - 168: for_header: FOR - 169: foreach_opener: FOREACH - 170: foreach_header: FOREACH + 133: nonConstExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 134: exprList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 135: constExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 136: lambdaExprStart: FUNCTION + 137: fNonConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 138: fConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 139: fArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 140: fConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 141: fNonConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 142: fArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 143: fArgs: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 144: commaSkippable: COMMA + 145: lvalue: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 146: lvalueList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 147: once_start: ONCE + 148: once_header: ONCE + 149: once_block: ONCE + 150: once_nocond: ONCE + 151: if_start: IF + 152: if_header: IF + 153: if_block: IF + 154: elif_start: ELSE + 155: elif_header: ELSE + 156: else_header: ELSE + 157: switchcase_header: SWITCHCASE + 158: case_start: CASE + 159: case_clause: CASE + 160: case_chunk: CASE + 161: case_chunks: CASE + 162: default_clause: DEFAULT + 163: default_chunk: DEFAULT + 164: switchcase_block: SWITCHCASE + 165: while_start: WHILE + 166: while_header: WHILE + 167: for_opener: FOR + 168: for_init_stmt_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONST INC DEC CONDITIONNAME ACTIONNAME + 169: for_init_stmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONST INC DEC CONDITIONNAME ACTIONNAME + 170: for_action_stmt_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST INC DEC CONDITIONNAME ACTIONNAME + 171: for_action_stmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST INC DEC CONDITIONNAME ACTIONNAME + 172: for_header1: FOR + 173: for_header2: FOR + 174: for_header: FOR + 175: foreach_opener: FOREACH + 176: foreach_header: FOREACH + 177: constAction: ACTIONNAME + 178: constActionList: ACTIONNAME From c358d8fd122d250d183059676860741a3028ee14 Mon Sep 17 00:00:00 2001 From: armoha Date: Sat, 11 Sep 2021 21:19:51 +0900 Subject: [PATCH 2/5] Add logicExpr --- eudplib/epscript/cpp/parser/epparser.h | 77 +- eudplib/epscript/cpp/parser/epparser.lemon | 119 +- eudplib/epscript/cpp/parser/epparser.out | 31075 +++++++++++----- .../cpp/parser/reservedWords/constparser.cpp | 4 +- eudplib/epscript/cpp/parser/tokenAdapter.cpp | 1 + .../epscript/cpp/parser/tokenizer/token.cpp | 1 + eudplib/epscript/cpp/parser/tokenizer/token.h | 1 + .../cpp/parser/tokenizer/tokenizerImpl.cpp | 3 +- 8 files changed, 21438 insertions(+), 9843 deletions(-) diff --git a/eudplib/epscript/cpp/parser/epparser.h b/eudplib/epscript/cpp/parser/epparser.h index db6ea920..6e41914a 100644 --- a/eudplib/epscript/cpp/parser/epparser.h +++ b/eudplib/epscript/cpp/parser/epparser.h @@ -42,41 +42,42 @@ #define RSQBRACKET 42 #define SUBSCRIPT 43 #define KILLS 44 -#define MEMBER 45 -#define STRING 46 -#define FUNCCALL 47 -#define L2V 48 -#define MAPSTRING 49 -#define UNIT 50 -#define SWITCH 51 -#define LOCATION 52 -#define STATTXTTBL 53 -#define VARRAY 54 -#define LIST 55 -#define STATIC 56 -#define CONST 57 -#define INC 58 -#define DEC 59 -#define IADD 60 -#define ISUB 61 -#define IMUL 62 -#define IDIV 63 -#define IMOD 64 -#define ILSH 65 -#define IRSH 66 -#define IBND 67 -#define IBOR 68 -#define IBXR 69 -#define ONCE 70 -#define IF 71 -#define SWITCHCASE 72 -#define CASE 73 -#define DEFAULT 74 -#define WHILE 75 -#define FOR 76 -#define FOREACH 77 -#define CONTINUE 78 -#define BREAK 79 -#define RETURN 80 -#define CONDITIONNAME 81 -#define ACTIONNAME 82 +#define TRGCONST 45 +#define MEMBER 46 +#define STRING 47 +#define FUNCCALL 48 +#define L2V 49 +#define MAPSTRING 50 +#define UNIT 51 +#define SWITCH 52 +#define LOCATION 53 +#define STATTXTTBL 54 +#define VARRAY 55 +#define LIST 56 +#define STATIC 57 +#define CONST 58 +#define INC 59 +#define DEC 60 +#define IADD 61 +#define ISUB 62 +#define IMUL 63 +#define IDIV 64 +#define IMOD 65 +#define ILSH 66 +#define IRSH 67 +#define IBND 68 +#define IBOR 69 +#define IBXR 70 +#define ONCE 71 +#define IF 72 +#define SWITCHCASE 73 +#define CASE 74 +#define DEFAULT 75 +#define WHILE 76 +#define FOR 77 +#define FOREACH 78 +#define CONTINUE 79 +#define BREAK 80 +#define RETURN 81 +#define CONDITIONNAME 82 +#define ACTIONNAME 83 diff --git a/eudplib/epscript/cpp/parser/epparser.lemon b/eudplib/epscript/cpp/parser/epparser.lemon index 2d5df015..7cef1e17 100644 --- a/eudplib/epscript/cpp/parser/epparser.lemon +++ b/eudplib/epscript/cpp/parser/epparser.lemon @@ -485,6 +485,7 @@ constExpr(A) ::= KILLS(B). { B->data = "4"; A = B; } +constExpr(A) ::= TRGCONST(B). { A = B; } nonConstExpr(A) ::= NAME(B). { checkIsRValue(B->data, B->line); @@ -496,6 +497,11 @@ nonConstExpr(A)::= nonConstExpr(B) PERIOD NAME(C). [MEMBER] { delete C; A = mkTokenTemp(B); } +nonConstExpr(A)::= nonConstExpr(B) PERIOD TRGCONST(C). [MEMBER] { + B->data = B->data + "." + C->data; + delete C; + A = mkTokenTemp(B); +} nonConstExpr(A)::= nonConstExpr(B) LSQBRACKET expr(C) RSQBRACKET. [SUBSCRIPT] { B->data = B->data + "[" + C->data + "]"; @@ -569,11 +575,11 @@ constExpr(A) ::= lambdaExprStart(B) stmt. { A = mkTokenTemp(B); } expr(A) ::= constExpr(B). { A = B; } -expr(A) ::= nonConstExpr(B). { A = B; } +expr(A) ::= logicExpr(B). { A = B; } // Function calls -fNonConstArg(A) ::= nonConstExpr(B). { A = B; } +fNonConstArg(A) ::= logicExpr(B). { A = B; } fConstArg(A) ::= constExpr(B). { A = B; } fConstArg(A) ::= STRING(B). { A = B; } fConstArg(A) ::= NAME(B) ASSIGN expr(C). { // Keyword argument @@ -664,7 +670,7 @@ constExpr(A) ::= LPAREN constExpr(B) RPAREN. { A->type = TOKEN_EXPR; A->subToken[0] = B; } -nonConstExpr(A) ::= LPAREN nonConstExpr(B) RPAREN. { +nonConstExpr(A) ::= LPAREN logicExpr(B) RPAREN. { A = genEmpty(); A->data = "(" + B->data + ")"; A->type = TOKEN_EXPR; @@ -714,7 +720,7 @@ constExpr(A) ::= VARRAY LPAREN exprList_nonEmpty(B) commaSkippable RPAREN. { A = mkTokenTemp(B); } -constExpr(A) ::= LIST LPAREN exprList_nonEmpty(B) commaSkippable RPAREN. { +logicExpr(A) ::= LIST LPAREN exprList_nonEmpty(B) commaSkippable RPAREN. { B->data = "FlattenList([" + B->data + "])"; A = mkTokenTemp(B); } @@ -785,37 +791,35 @@ nonConstExpr(A) ::= BITNOT nonConstExpr(B). [UNARY] { B->data = "~" + B->data; A -nonConstExpr(A) ::= constExpr(B) EQ expr(C). { A = binopConcat(B, "==", C); } -nonConstExpr(A) ::= nonConstExpr(B) EQ expr(C). { A = binopConcat(B, "==", C); } -nonConstExpr(A) ::= constExpr(B) NE expr(C). { A = negate(binopConcat(B, "==", C)); } -nonConstExpr(A) ::= nonConstExpr(B) NE expr(C). { A = negate(binopConcat(B, "==", C)); } - -nonConstExpr(A) ::= constExpr(B) LE expr(C). { A = binopConcat(B, "<=", C); } -nonConstExpr(A) ::= nonConstExpr(B) LE expr(C). { A = binopConcat(B, "<=", C); } -nonConstExpr(A) ::= constExpr(B) GE expr(C). { A = binopConcat(B, ">=", C); } -nonConstExpr(A) ::= nonConstExpr(B) GE expr(C). { A = binopConcat(B, ">=", C); } - -nonConstExpr(A) ::= constExpr(B) LT expr(C). { A = negate(binopConcat(B, ">=", C)); } -nonConstExpr(A) ::= nonConstExpr(B) LT expr(C). { A = negate(binopConcat(B, ">=", C)); } -nonConstExpr(A) ::= constExpr(B) GT expr(C). { A = negate(binopConcat(B, "<=", C)); } -nonConstExpr(A) ::= nonConstExpr(B) GT expr(C). { A = negate(binopConcat(B, "<=", C)); } - -nonConstExpr(A) ::= constExpr(B) LAND expr(C). { - A = genEmpty(); - A->line = C->line; - - // Generate data! - A->type = TOKEN_LAND; - A->subToken[0] = B; - A->subToken[1] = C; - - std::stringstream ss; - ss << "EUDSCAnd()"; - shortCircuitCondListGetter(ss, A, TOKEN_LAND); - ss << "()"; - A->data = ss.str(); -} -nonConstExpr(A) ::= nonConstExpr(B) LAND expr(C). { +constExpr(A) ::= constExpr(B) EQ constExpr(C). { A = binopConcat(B, "==", C); } +logicExpr(A) ::= constExpr(B) EQ nonConstExpr(C). { A = binopConcat(B, "==", C); } +logicExpr(A) ::= nonConstExpr(B) EQ constExpr(C). { A = binopConcat(B, "==", C); } +logicExpr(A) ::= nonConstExpr(B) EQ nonConstExpr(C). { A = binopConcat(B, "==", C); } +constExpr(A) ::= constExpr(B) NE constExpr(C). { A = negate(binopConcat(B, "==", C)); } +logicExpr(A) ::= constExpr(B) NE nonConstExpr(C). { A = negate(binopConcat(B, "==", C)); } +logicExpr(A) ::= nonConstExpr(B) NE constExpr(C). { A = negate(binopConcat(B, "==", C)); } +logicExpr(A) ::= nonConstExpr(B) NE nonConstExpr(C). { A = negate(binopConcat(B, "==", C)); } + +constExpr(A) ::= constExpr(B) LE constExpr(C). { A = binopConcat(B, "<=", C); } +logicExpr(A) ::= constExpr(B) LE nonConstExpr(C). { A = binopConcat(B, "<=", C); } +logicExpr(A) ::= nonConstExpr(B) LE constExpr(C). { A = binopConcat(B, "<=", C); } +logicExpr(A) ::= nonConstExpr(B) LE nonConstExpr(C). { A = binopConcat(B, "<=", C); } +constExpr(A) ::= constExpr(B) GE constExpr(C). { A = binopConcat(B, ">=", C); } +logicExpr(A) ::= constExpr(B) GE nonConstExpr(C). { A = binopConcat(B, ">=", C); } +logicExpr(A) ::= nonConstExpr(B) GE constExpr(C). { A = binopConcat(B, ">=", C); } +logicExpr(A) ::= nonConstExpr(B) GE nonConstExpr(C). { A = binopConcat(B, ">=", C); } + +constExpr(A) ::= constExpr(B) LT constExpr(C). { A = negate(binopConcat(B, ">=", C)); } +logicExpr(A) ::= constExpr(B) LT nonConstExpr(C). { A = negate(binopConcat(B, ">=", C)); } +logicExpr(A) ::= nonConstExpr(B) LT constExpr(C). { A = negate(binopConcat(B, ">=", C)); } +logicExpr(A) ::= nonConstExpr(B) LT nonConstExpr(C). { A = negate(binopConcat(B, ">=", C)); } +constExpr(A) ::= constExpr(B) GT constExpr(C). { A = negate(binopConcat(B, "<=", C)); } +logicExpr(A) ::= constExpr(B) GT nonConstExpr(C). { A = negate(binopConcat(B, "<=", C)); } +logicExpr(A) ::= nonConstExpr(B) GT constExpr(C). { A = negate(binopConcat(B, "<=", C)); } +logicExpr(A) ::= nonConstExpr(B) GT nonConstExpr(C). { A = negate(binopConcat(B, "<=", C)); } + +logicExpr(A) ::= nonConstExpr(B). { A = B; } +logicExpr(A) ::= logicExpr(B) LAND logicExpr(C). { A = genEmpty(); A->line = C->line; @@ -832,22 +836,7 @@ nonConstExpr(A) ::= nonConstExpr(B) LAND expr(C). { } // OR operation is very costly, so we make some deliberate choice! -nonConstExpr(A) ::= constExpr(B) LOR expr(C). { - A = genEmpty(); - A->line = C->line; - - // Generate data! - A->type = TOKEN_LOR; - A->subToken[0] = B; - A->subToken[1] = C; - - std::stringstream ss; - ss << "EUDSCOr()"; - shortCircuitCondListGetter(ss, A, TOKEN_LOR); - ss << "()"; - A->data = ss.str(); -} -nonConstExpr(A) ::= nonConstExpr(B) LOR expr(C). { +logicExpr(A) ::= logicExpr(B) LOR logicExpr(C). { A = genEmpty(); A->line = C->line; @@ -863,8 +852,7 @@ nonConstExpr(A) ::= nonConstExpr(B) LOR expr(C). { A->data = ss.str(); } -constExpr(A) ::= LNOT constExpr(B). [UNARY] { A = negate(B); } -nonConstExpr(A) ::= LNOT nonConstExpr(B). [UNARY] { A = negate(B); } +logicExpr(A) ::= LNOT logicExpr(B). { A = negate(B); } // Statements @@ -999,13 +987,18 @@ lvalue(A) ::= NAME(B). { A = B; } -lvalue(A) ::= expr(B) LSQBRACKET expr(C) RSQBRACKET. [SUBSCRIPT] { +lvalue(A) ::= nonConstExpr(B) LSQBRACKET expr(C) RSQBRACKET. [SUBSCRIPT] { C->data = "_ARRW(" + B->data + ", " + C->data + ")"; A = mkTokenTemp(C); delete B; } -lvalue(A) ::= expr(B) PERIOD NAME(C). [MEMBER] { +lvalue(A) ::= nonConstExpr(B) PERIOD NAME(C). [MEMBER] { + C->data = "_ATTW(" + B->data + ", '" + C->data + "')"; + A = mkTokenTemp(C); + delete B; +} +lvalue(A) ::= nonConstExpr(B) PERIOD TRGCONST(C). [MEMBER] { C->data = "_ATTW(" + B->data + ", '" + C->data + "')"; A = mkTokenTemp(C); delete B; @@ -1319,13 +1312,13 @@ return_stmt ::= RETURN(X) exprList(exprs). { // Trigger statements -constExpr(A) ::= CONDITIONNAME(B) LPAREN fArgs(C) RPAREN. { +logicExpr(A) ::= CONDITIONNAME(B) LPAREN fArgs(C) RPAREN. { B->data = B->data + "(" + C->data + ")"; delete C; A = mkTokenTemp(B); } -constExpr(A) ::= KILLS(B) LPAREN fArgs(C) RPAREN. { +logicExpr(A) ::= KILLS(B) LPAREN fArgs(C) RPAREN. { B->data = B->data + "(" + C->data + ")"; delete C; A = mkTokenTemp(B); @@ -1352,6 +1345,18 @@ constActionList(A) ::= constActionList(B) constAction(C). { A = B; delete C; } +actionStmt ::= constActionList(C) ACTIONNAME(A) LPAREN fNonConstArgs_nonEmpty(B) RPAREN SEMICOLON. { + writeTraceInfo(ps->gen, C); + ps->gen << "DoActions(" << std::endl; + ps->gen.indent(); + ps->gen << C->data; + ps->gen.unindent(false); + ps->gen << ")" << std::endl; + delete C; + writeTraceInfo(ps->gen, A); + ps->gen << "DoActions(" << A->data << "(" << B->data << "))" << std::endl; + delete A; delete B; +} actionStmt ::= constActionList(A). { writeTraceInfo(ps->gen, A); ps->gen << "DoActions(" << std::endl; diff --git a/eudplib/epscript/cpp/parser/epparser.out b/eudplib/epscript/cpp/parser/epparser.out index 1132015b..1b122788 100644 --- a/eudplib/epscript/cpp/parser/epparser.out +++ b/eudplib/epscript/cpp/parser/epparser.out @@ -4,19 +4,25 @@ State 0: chunks ::= * chunks chunk chunks ::= * chunks error + $ reduce 1 + IMPORT reduce 1 + FUNCTION reduce 1 + OBJECT reduce 1 + LBRACKET reduce 1 + VAR reduce 1 + CONST reduce 1 program accept chunks shift 18 - {default} reduce 1 State 1: - method_chunk ::= method_header * stmt - stmt ::= * error SEMICOLON - stmt ::= * bodyStmt lbracket ::= * LBRACKET blockStmt ::= * blockStmtSub rbracket blockStmt ::= * lbracket error RBRACKET + blockStmt ::= lbracket * error RBRACKET blockStmtSub ::= * lbracket + (40) blockStmtSub ::= lbracket * blockStmtSub ::= * lbracket bodyStmtList + blockStmtSub ::= lbracket * bodyStmtList bodyStmt ::= * blockStmt bodyStmt ::= * SEMICOLON bodyStmt ::= * vdef_stmt SEMICOLON @@ -35,22 +41,25 @@ State 1: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON + bodyStmtList ::= * bodyStmt + bodyStmtList ::= * bodyStmtList bodyStmt + bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -59,7 +68,6 @@ State 1: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -97,31 +105,20 @@ State 1: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -171,103 +168,100 @@ State 1: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + RBRACKET reduce 40 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 335 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 539 + vdef_stmt shift 538 + blockStmt shift 191 + bodyStmt shift 314 + lbracket shift 1 + blockStmtSub shift 157 + bodyStmtList shift 17 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 2: - fdef_chunk ::= fdef_header * stmt + method_chunk ::= method_header * stmt stmt ::= * error SEMICOLON stmt ::= * bodyStmt lbracket ::= * LBRACKET @@ -296,19 +290,19 @@ State 2: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -317,7 +311,6 @@ State 2: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -355,31 +348,20 @@ State 2: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -429,102 +411,99 @@ State 2: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 339 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 366 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 3: + fdef_chunk ::= fdef_header * stmt stmt ::= * error SEMICOLON stmt ::= * bodyStmt lbracket ::= * LBRACKET @@ -553,19 +532,19 @@ State 3: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -574,7 +553,6 @@ State 3: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -612,31 +590,20 @@ State 3: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -667,7 +634,6 @@ State 3: if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt - if_stmt ::= if_block else_header * stmt switchcase_header ::= * SWITCHCASE LPAREN expr switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -687,100 +653,96 @@ State 3: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 352 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 345 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 4: stmt ::= * error SEMICOLON @@ -811,19 +773,19 @@ State 4: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -832,7 +794,6 @@ State 4: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -870,31 +831,20 @@ State 4: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -925,6 +875,7 @@ State 4: if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt + if_stmt ::= if_block else_header * stmt switchcase_header ::= * SWITCHCASE LPAREN expr switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -941,104 +892,99 @@ State 4: foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt - foreach_stmt ::= foreach_header RPAREN * stmt continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 372 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 158 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 5: stmt ::= * error SEMICOLON @@ -1069,19 +1015,19 @@ State 5: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -1090,7 +1036,6 @@ State 5: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -1128,31 +1073,20 @@ State 5: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -1196,107 +1130,103 @@ State 5: for_header2 ::= * for_header1 expr SEMICOLON for_header ::= * for_header2 for_action_stmt for_stmt ::= * for_header RPAREN stmt - for_stmt ::= for_header RPAREN * stmt foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt + foreach_stmt ::= foreach_header RPAREN * stmt continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 374 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 165 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 6: stmt ::= * error SEMICOLON @@ -1327,19 +1257,19 @@ State 6: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -1348,7 +1278,6 @@ State 6: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -1386,31 +1315,20 @@ State 6: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -1449,112 +1367,108 @@ State 6: while_start ::= * WHILE while_header ::= * while_start LPAREN expr while_stmt ::= * while_header RPAREN stmt - while_stmt ::= while_header RPAREN * stmt for_opener ::= * FOR LPAREN for_header1 ::= * for_opener for_init_stmt SEMICOLON for_header2 ::= * for_header1 expr SEMICOLON for_header ::= * for_header2 for_action_stmt for_stmt ::= * for_header RPAREN stmt + for_stmt ::= for_header RPAREN * stmt foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 387 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 166 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 7: stmt ::= * error SEMICOLON @@ -1585,19 +1499,19 @@ State 7: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -1606,7 +1520,6 @@ State 7: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -1644,31 +1557,20 @@ State 7: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -1697,7 +1599,6 @@ State 7: if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt if_block ::= * if_block elif_header RPAREN stmt - if_block ::= if_block elif_header RPAREN * stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr @@ -1708,6 +1609,7 @@ State 7: while_start ::= * WHILE while_header ::= * while_start LPAREN expr while_stmt ::= * while_header RPAREN stmt + while_stmt ::= while_header RPAREN * stmt for_opener ::= * FOR LPAREN for_header1 ::= * for_opener for_init_stmt SEMICOLON for_header2 ::= * for_header1 expr SEMICOLON @@ -1719,100 +1621,96 @@ State 7: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 395 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 167 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 8: stmt ::= * error SEMICOLON @@ -1843,19 +1741,19 @@ State 8: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -1864,7 +1762,6 @@ State 8: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -1902,31 +1799,20 @@ State 8: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -1954,8 +1840,8 @@ State 8: if_start ::= * IF if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt - if_block ::= if_header RPAREN * stmt if_block ::= * if_block elif_header RPAREN stmt + if_block ::= if_block elif_header RPAREN * stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr @@ -1977,100 +1863,96 @@ State 8: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 398 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 169 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 9: stmt ::= * error SEMICOLON @@ -2101,19 +1983,19 @@ State 9: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -2122,7 +2004,6 @@ State 9: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -2160,31 +2041,20 @@ State 9: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -2208,11 +2078,11 @@ State 9: once_block ::= * once_header RPAREN stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt - once_block ::= once_nocond * stmt once_stmt ::= * once_block if_start ::= * IF if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt + if_block ::= if_header RPAREN * stmt if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt @@ -2235,100 +2105,96 @@ State 9: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 402 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 170 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 10: stmt ::= * error SEMICOLON @@ -2359,19 +2225,19 @@ State 10: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -2380,7 +2246,6 @@ State 10: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -2418,31 +2283,20 @@ State 10: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -2464,9 +2318,9 @@ State 10: once_start ::= * ONCE once_header ::= * once_start LPAREN expr once_block ::= * once_header RPAREN stmt - once_block ::= once_header RPAREN * stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt + once_block ::= once_nocond * stmt once_stmt ::= * once_block if_start ::= * IF if_header ::= * if_start LPAREN expr @@ -2493,110 +2347,105 @@ State 10: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 403 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 172 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 11: + stmt ::= * error SEMICOLON + stmt ::= * bodyStmt lbracket ::= * LBRACKET blockStmt ::= * blockStmtSub rbracket blockStmt ::= * lbracket error RBRACKET - blockStmt ::= lbracket * error RBRACKET blockStmtSub ::= * lbracket - (40) blockStmtSub ::= lbracket * blockStmtSub ::= * lbracket bodyStmtList - blockStmtSub ::= lbracket * bodyStmtList bodyStmt ::= * blockStmt bodyStmt ::= * SEMICOLON bodyStmt ::= * vdef_stmt SEMICOLON @@ -2615,25 +2464,22 @@ State 11: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - bodyStmtList ::= * bodyStmt - bodyStmtList ::= * bodyStmtList bodyStmt - bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -2642,7 +2488,6 @@ State 11: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -2680,31 +2525,20 @@ State 11: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -2726,6 +2560,7 @@ State 11: once_start ::= * ONCE once_header ::= * once_start LPAREN expr once_block ::= * once_header RPAREN stmt + once_block ::= once_header RPAREN * stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt once_stmt ::= * once_block @@ -2754,101 +2589,96 @@ State 11: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 308 - vdef_stmt shift 307 - blockStmt shift 504 - bodyStmt shift 391 - lbracket shift 11 - blockStmtSub shift 155 - bodyStmtList shift 17 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 173 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 - {default} reduce 40 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 12: stmt ::= * error SEMICOLON @@ -2879,20 +2709,20 @@ State 12: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= lambdaExprStart * stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -2901,7 +2731,6 @@ State 12: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -2939,31 +2768,20 @@ State 12: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -3013,100 +2831,96 @@ State 12: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 309 - vdef_stmt shift 307 - blockStmt shift 504 - stmt shift 351 - bodyStmt shift 509 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 540 + vdef_stmt shift 538 + blockStmt shift 191 + stmt shift 223 + bodyStmt shift 195 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 13: lbracket ::= * LBRACKET @@ -3137,19 +2951,19 @@ State 13: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -3158,7 +2972,6 @@ State 13: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -3196,31 +3009,20 @@ State 13: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -3252,7 +3054,7 @@ State 13: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (227) default_chunk ::= default_clause bodyStmtList * + (235) case_chunk ::= case_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3271,100 +3073,98 @@ State 13: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + RBRACKET reduce 235 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + CASE reduce 235 + DEFAULT reduce 235 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 485 - vdef_stmt shift 307 - blockStmt shift 504 - bodyStmt shift 486 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 316 + vdef_stmt shift 538 + blockStmt shift 191 + bodyStmt shift 317 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 - {default} reduce 227 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 14: lbracket ::= * LBRACKET @@ -3396,19 +3196,19 @@ State 14: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -3417,7 +3217,6 @@ State 14: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -3455,31 +3254,20 @@ State 14: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -3511,8 +3299,8 @@ State 14: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (226) default_chunk ::= default_clause * - default_chunk ::= default_clause * bodyStmtList + (234) case_chunk ::= case_clause * + case_chunk ::= case_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3531,100 +3319,98 @@ State 14: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + RBRACKET reduce 234 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + CASE reduce 234 + DEFAULT reduce 234 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - vdef_stmt shift 307 - blockStmt shift 504 - bodyStmt shift 391 - lbracket shift 11 - blockStmtSub shift 155 + ACTIONNAME shift 464 + vdef_stmt shift 538 + blockStmt shift 191 + bodyStmt shift 314 + lbracket shift 1 + blockStmtSub shift 157 bodyStmtList shift 13 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 - {default} reduce 226 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 15: lbracket ::= * LBRACKET @@ -3655,19 +3441,19 @@ State 15: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -3676,7 +3462,6 @@ State 15: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -3714,31 +3499,20 @@ State 15: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -3770,7 +3544,7 @@ State 15: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (222) case_chunk ::= case_clause bodyStmtList * + (240) default_chunk ::= default_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3789,100 +3563,96 @@ State 15: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + RBRACKET reduce 240 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 485 - vdef_stmt shift 307 - blockStmt shift 504 - bodyStmt shift 486 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 316 + vdef_stmt shift 538 + blockStmt shift 191 + bodyStmt shift 317 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 - {default} reduce 222 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 16: lbracket ::= * LBRACKET @@ -3914,19 +3684,19 @@ State 16: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -3935,7 +3705,6 @@ State 16: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -3973,31 +3742,20 @@ State 16: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -4029,8 +3787,8 @@ State 16: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (221) case_chunk ::= case_clause * - case_chunk ::= case_clause * bodyStmtList + (239) default_chunk ::= default_clause * + default_chunk ::= default_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -4049,100 +3807,96 @@ State 16: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + RBRACKET reduce 239 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - vdef_stmt shift 307 - blockStmt shift 504 - bodyStmt shift 391 - lbracket shift 11 - blockStmtSub shift 155 + ACTIONNAME shift 464 + vdef_stmt shift 538 + blockStmt shift 191 + bodyStmt shift 314 + lbracket shift 1 + blockStmtSub shift 157 bodyStmtList shift 15 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 - {default} reduce 221 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 17: lbracket ::= * LBRACKET @@ -4174,19 +3928,19 @@ State 17: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -4195,7 +3949,6 @@ State 17: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -4233,31 +3986,20 @@ State 17: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -4307,100 +4049,96 @@ State 17: continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN actionStmt ::= * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON constActionList ::= * constAction constActionList ::= * constActionList constAction + actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - SEMICOLON shift 503 - NAME shift 162 - FUNCTION shift 311 - LBRACKET shift 508 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - STATIC shift 262 - CONST shift 148 - INC shift 37 - DEC shift 36 - ONCE shift 405 - IF shift 400 - SWITCHCASE shift 249 - WHILE shift 389 - FOR shift 243 - FOREACH shift 237 - CONTINUE shift 371 - BREAK shift 370 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON shift 190 + NAME shift 330 + FUNCTION shift 541 + LBRACKET shift 319 + VAR shift 155 + RBRACKET reduce 41 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + STATIC shift 495 + CONST shift 153 + INC shift 86 + DEC shift 85 + ONCE shift 326 + IF shift 492 + SWITCHCASE shift 484 + WHILE shift 479 + FOR shift 475 + FOREACH shift 470 + CONTINUE shift 467 + BREAK shift 466 RETURN shift 30 - CONDITIONNAME shift 272 - ACTIONNAME shift 233 - error shift 485 - vdef_stmt shift 307 - blockStmt shift 504 - bodyStmt shift 486 - lbracket shift 11 - blockStmtSub shift 155 - vdefAssignStatic_stmt shift 306 - vdefAssign_stmt shift 305 - cdef_stmt shift 304 - assign_stmt shift 303 - funcexprStmt shift 302 - actionStmt shift 496 - once_stmt shift 495 - if_stmt shift 494 - while_stmt shift 493 - for_stmt shift 492 - foreach_stmt shift 491 - switchcase_stmt shift 490 - continue_stmt shift 301 - break_stmt shift 300 - return_stmt shift 299 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + ACTIONNAME shift 464 + error shift 316 + vdef_stmt shift 538 + blockStmt shift 191 + bodyStmt shift 317 + lbracket shift 1 + blockStmtSub shift 157 + vdefAssignStatic_stmt shift 537 + vdefAssign_stmt shift 536 + cdef_stmt shift 535 + assign_stmt shift 534 + funcexprStmt shift 533 + actionStmt shift 183 + once_stmt shift 182 + if_stmt shift 181 + while_stmt shift 180 + for_stmt shift 179 + foreach_stmt shift 178 + switchcase_stmt shift 177 + continue_stmt shift 532 + break_stmt shift 531 + return_stmt shift 530 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - once_start shift 256 - once_header shift 255 - once_block shift 401 - once_nocond shift 9 - if_start shift 254 - if_header shift 253 - if_block shift 119 - switchcase_header shift 248 - switchcase_block shift 246 - while_start shift 245 - while_header shift 244 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + once_start shift 325 + once_header shift 493 + once_block shift 171 + once_nocond shift 10 + if_start shift 491 + if_header shift 489 + if_block shift 115 + switchcase_header shift 482 + switchcase_block shift 480 + while_start shift 478 + while_header shift 476 for_opener shift 19 - for_header1 shift 48 - for_header2 shift 21 - for_header shift 238 - foreach_opener shift 147 - foreach_header shift 235 - constAction shift 365 - constActionList shift 146 - {default} reduce 41 + for_header1 shift 47 + for_header2 shift 27 + for_header shift 471 + foreach_opener shift 152 + foreach_header shift 468 + constAction shift 161 + constActionList shift 142 State 18: (0) program ::= chunks * @@ -4440,46 +4178,46 @@ State 18: cdef_global_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty $ reduce 0 - IMPORT shift 141 - FUNCTION shift 323 - OBJECT shift 220 - LBRACKET shift 508 - VAR shift 143 - CONST shift 142 - error shift 534 - chunk shift 535 - relimp_chunk shift 533 - import_chunk shift 332 - fdef_chunk shift 531 - fdecl_chunk shift 530 - object_chunk shift 529 - vdef_stmt shift 331 - vdefAssign_global_stmt shift 330 - cdef_global_stmt shift 329 - blockStmt shift 525 - relimp_start shift 210 - relimp_path shift 195 - fdef_header shift 2 - object_body shift 137 - lbracket shift 11 - blockStmtSub shift 155 + IMPORT shift 149 + FUNCTION shift 549 + OBJECT shift 452 + LBRACKET shift 319 + VAR shift 151 + CONST shift 150 + error shift 358 + chunk shift 359 + relimp_chunk shift 357 + import_chunk shift 559 + fdef_chunk shift 355 + fdecl_chunk shift 354 + object_chunk shift 353 + vdef_stmt shift 558 + vdefAssign_global_stmt shift 557 + cdef_global_stmt shift 556 + blockStmt shift 349 + relimp_start shift 444 + relimp_path shift 392 + fdef_header shift 3 + object_body shift 139 + lbracket shift 1 + blockStmtSub shift 157 State 19: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -4488,7 +4226,6 @@ State 19: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -4526,30 +4263,19 @@ State 19: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST lvalueList_nonEmpty ::= * lvalue lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue assign_stmt ::= * lvalue ASSIGN expr @@ -4574,67 +4300,76 @@ State 19: for_init_stmt_nonEmpty ::= * assign_stmt for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty for_init_stmt ::= * for_init_stmt_nonEmpty - (242) for_init_stmt ::= * + (255) for_init_stmt ::= * for_header1 ::= for_opener * for_init_stmt SEMICOLON - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 162 - FUNCTION shift 311 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONST shift 148 - INC shift 37 - DEC shift 36 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - vdef_stmt shift 385 - vdefAssign_stmt shift 384 - cdef_stmt shift 383 - assign_stmt shift 382 - expr shift 204 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON reduce 255 + NAME shift 330 + FUNCTION shift 541 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + CONST shift 153 + INC shift 86 + DEC shift 85 + ACTIONNAME shift 503 + vdef_stmt shift 419 + vdefAssign_stmt shift 418 + cdef_stmt shift 417 + assign_stmt shift 416 + funcexpr shift 310 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - for_init_stmt_nonEmpty shift 242 - for_init_stmt shift 241 - {default} reduce 242 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + for_init_stmt_nonEmpty shift 415 + for_init_stmt shift 474 State 20: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr + fNonConstArg ::= * logicExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (104) fArgs ::= * + fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -4643,7 +4378,7 @@ State 20: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -4681,112 +4416,108 @@ State 20: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - vdef_stmt ::= * VAR nameList_nonEmpty - vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty - lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_init_stmt_nonEmpty ::= * vdef_stmt - for_init_stmt_nonEmpty ::= * vdefAssign_stmt - for_init_stmt_nonEmpty ::= * cdef_stmt - for_init_stmt_nonEmpty ::= * assign_stmt - for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN + actionStmt ::= ACTIONNAME LPAREN * fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 162 - FUNCTION shift 311 - VAR shift 150 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONST shift 148 - INC shift 37 - DEC shift 36 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - vdef_stmt shift 385 - vdefAssign_stmt shift 384 - cdef_stmt shift 383 - assign_stmt shift 382 - expr shift 204 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + RPAREN shift 461 + RPAREN reduce 104 -- dropped by precedence + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - for_init_stmt_nonEmpty shift 381 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 406 + fNonConstArgs_nonEmpty shift 405 + fArgs_nonEmpty shift 502 + fArgs shift 501 State 21: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr - funcexprStmt ::= * funcexpr + fNonConstArg ::= * logicExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (104) fArgs ::= * + fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -4795,7 +4526,7 @@ State 21: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -4833,100 +4564,86 @@ State 21: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_action_stmt_nonEmpty ::= * funcexprStmt - for_action_stmt_nonEmpty ::= * assign_stmt - for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty - (246) for_action_stmt ::= * - for_action_stmt ::= * for_action_stmt_nonEmpty - for_header ::= for_header2 * for_action_stmt - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 162 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - INC shift 37 - DEC shift 36 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - assign_stmt shift 377 - funcexprStmt shift 378 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + RPAREN reduce 104 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - for_action_stmt_nonEmpty shift 239 - for_action_stmt shift 375 - {default} reduce 246 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 502 + fArgs shift 501 State 22: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * nonConstExpr + fNonConstArg ::= * logicExpr fConstArg ::= * constExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr @@ -4938,13 +4655,13 @@ State 22: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (102) fArgs ::= * + (104) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -4953,7 +4670,7 @@ State 22: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -4991,82 +4708,105 @@ State 22: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= ACTIONNAME LPAREN * fNonConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 209 - FUNCTION shift 311 - RPAREN shift 230 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 158 - constExpr shift 160 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + RPAREN reduce 104 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 - fNonConstArg shift 463 - fConstArg shift 466 - fConstArgs_nonEmpty shift 200 - fNonConstArgs_nonEmpty shift 199 - fArgs_nonEmpty shift 459 - fArgs shift 268 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 502 + fArgs shift 500 State 23: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr - funcexprStmt ::= * funcexpr + fNonConstArg ::= * logicExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (104) fArgs ::= * + fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -5075,7 +4815,7 @@ State 23: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5113,96 +4853,85 @@ State 23: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_action_stmt_nonEmpty ::= * funcexprStmt - for_action_stmt_nonEmpty ::= * assign_stmt - for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA * for_action_stmt_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 162 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - INC shift 37 - DEC shift 36 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - assign_stmt shift 377 - funcexprStmt shift 378 - expr shift 204 - funcexpr shift 183 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + RPAREN reduce 104 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 - lvalue shift 163 - lvalueList_nonEmpty shift 203 - for_action_stmt_nonEmpty shift 376 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 502 + fArgs shift 497 State 24: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * nonConstExpr + fNonConstArg ::= * logicExpr fConstArg ::= * constExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr @@ -5214,13 +4943,14 @@ State 24: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (102) fArgs ::= * + (104) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= NAME LPAREN * fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -5229,7 +4959,7 @@ State 24: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5267,72 +4997,85 @@ State 24: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 209 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 158 - constExpr shift 160 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + RPAREN reduce 104 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 - fNonConstArg shift 463 - fConstArg shift 466 - fConstArgs_nonEmpty shift 270 - fNonConstArgs_nonEmpty shift 269 - fArgs_nonEmpty shift 459 - fArgs shift 268 - {default} reduce 102 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 502 + fArgs shift 454 State 25: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * nonConstExpr + fNonConstArg ::= * logicExpr fConstArg ::= * constExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr @@ -5344,13 +5087,13 @@ State 25: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (102) fArgs ::= * + (104) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -5359,7 +5102,7 @@ State 25: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5397,91 +5140,90 @@ State 25: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN + logicExpr ::= KILLS LPAREN * fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 209 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 158 - constExpr shift 160 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + RPAREN reduce 104 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 - fNonConstArg shift 463 - fConstArg shift 466 - fConstArgs_nonEmpty shift 270 - fNonConstArgs_nonEmpty shift 269 - fArgs_nonEmpty shift 459 - fArgs shift 267 - {default} reduce 102 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 502 + fArgs shift 453 State 26: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * nonConstExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= * fConstArg - fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg - fArgs_nonEmpty ::= * fConstArgs_nonEmpty - fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (102) fArgs ::= * - fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -5490,7 +5232,6 @@ State 26: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5528,90 +5269,96 @@ State 26: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 209 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 158 - constExpr shift 160 + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + vdef_stmt ::= * VAR nameList_nonEmpty + vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_init_stmt_nonEmpty ::= * vdef_stmt + for_init_stmt_nonEmpty ::= * vdefAssign_stmt + for_init_stmt_nonEmpty ::= * cdef_stmt + for_init_stmt_nonEmpty ::= * assign_stmt + for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 330 + FUNCTION shift 541 + VAR shift 155 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + CONST shift 153 + INC shift 86 + DEC shift 85 + ACTIONNAME shift 503 + vdef_stmt shift 419 + vdefAssign_stmt shift 418 + cdef_stmt shift 417 + assign_stmt shift 416 + funcexpr shift 310 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - fNonConstArg shift 463 - fConstArg shift 466 - fConstArgs_nonEmpty shift 270 - fNonConstArgs_nonEmpty shift 269 - fArgs_nonEmpty shift 459 - fArgs shift 224 - {default} reduce 102 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + for_init_stmt_nonEmpty shift 414 State 27: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * nonConstExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= * fConstArg - fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg - fArgs_nonEmpty ::= * fConstArgs_nonEmpty - fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (102) fArgs ::= * - fArgs ::= * fArgs_nonEmpty + funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= NAME LPAREN * fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -5620,7 +5367,6 @@ State 27: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5658,71 +5404,86 @@ State 27: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_action_stmt_nonEmpty ::= * funcexprStmt + for_action_stmt_nonEmpty ::= * assign_stmt + for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty + (259) for_action_stmt ::= * + for_action_stmt ::= * for_action_stmt_nonEmpty + for_header ::= for_header2 * for_action_stmt constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 209 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 158 - constExpr shift 160 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 330 + FUNCTION shift 541 + RPAREN reduce 259 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + INC shift 86 + DEC shift 85 + ACTIONNAME shift 503 + assign_stmt shift 412 + funcexprStmt shift 413 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - fNonConstArg shift 463 - fConstArg shift 466 - fConstArgs_nonEmpty shift 270 - fNonConstArgs_nonEmpty shift 269 - fArgs_nonEmpty shift 459 - fArgs shift 222 - {default} reduce 102 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + for_action_stmt_nonEmpty shift 411 + for_action_stmt shift 472 State 28: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * nonConstExpr + fNonConstArg ::= * logicExpr fConstArg ::= * constExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr @@ -5732,15 +5493,11 @@ State 28: fNonConstArgs_nonEmpty ::= * fNonConstArg fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg - fArgs_nonEmpty ::= * fConstArgs_nonEmpty - fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (102) fArgs ::= * - fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -5749,7 +5506,7 @@ State 28: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5787,84 +5544,91 @@ State 28: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN - constExpr ::= KILLS LPAREN * fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN + constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON + actionStmt ::= constActionList ACTIONNAME LPAREN * fNonConstArgs_nonEmpty RPAREN SEMICOLON constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 209 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 158 - constExpr shift 160 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + RPAREN shift 461 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 - fNonConstArg shift 463 - fConstArg shift 466 - fConstArgs_nonEmpty shift 270 - fNonConstArgs_nonEmpty shift 269 - fArgs_nonEmpty shift 459 - fArgs shift 221 - {default} reduce 102 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 404 + fNonConstArgs_nonEmpty shift 403 State 29: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * nonConstExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fArg ::= * fConstArg - fArg ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg + funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -5873,7 +5637,6 @@ State 29: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5911,56 +5674,69 @@ State 29: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_action_stmt_nonEmpty ::= * funcexprStmt + for_action_stmt_nonEmpty ::= * assign_stmt + for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA * for_action_stmt_nonEmpty constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 209 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 158 - constExpr shift 160 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 330 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + INC shift 86 + DEC shift 85 + ACTIONNAME shift 503 + assign_stmt shift 412 + funcexprStmt shift 413 + funcexpr shift 339 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 - fNonConstArg shift 461 - fConstArg shift 462 - fArg shift 460 + lvalue shift 342 + lvalueList_nonEmpty shift 422 + for_action_stmt_nonEmpty shift 410 State 30: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -5971,18 +5747,20 @@ State 30: exprList ::= * exprList_nonEmpty constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -5991,7 +5769,7 @@ State 30: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6029,79 +5807,94 @@ State 30: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr return_stmt ::= RETURN * exprList - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 234 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - exprList shift 369 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + SEMICOLON reduce 77 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 407 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + exprList shift 465 + constExpr shift 299 lambdaExprStart shift 12 - {default} reduce 77 + logicExpr shift 295 State 31: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * nonConstExpr + fNonConstArg ::= * logicExpr fConstArg ::= * constExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fNonConstArg + fArg ::= * fConstArg + fArg ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -6110,7 +5903,7 @@ State 31: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6148,75 +5941,92 @@ State 31: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 209 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 158 - constExpr shift 160 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 - fNonConstArg shift 464 - fConstArg shift 465 + logicExpr shift 362 + fNonConstArg shift 429 + fConstArg shift 430 + fArg shift 428 State 32: - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr + fNonConstArg ::= * logicExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fNonConstArg funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -6225,7 +6035,7 @@ State 32: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6263,55 +6073,67 @@ State 32: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 212 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 331 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 437 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 336 lambdaExprStart shift 12 + logicExpr shift 362 + fNonConstArg shift 433 + fConstArg shift 434 State 33: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6320,18 +6142,20 @@ State 33: exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -6340,7 +6164,7 @@ State 33: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6378,55 +6202,67 @@ State 33: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 213 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 397 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 34: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6435,18 +6271,20 @@ State 34: exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -6455,7 +6293,7 @@ State 34: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6493,55 +6331,67 @@ State 34: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - foreach_header ::= foreach_opener nameList_nonEmpty COLON * exprList_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 236 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 399 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 35: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6550,18 +6400,20 @@ State 35: exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -6570,7 +6422,7 @@ State 35: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6608,72 +6460,89 @@ State 35: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - case_clause ::= case_start * exprList_nonEmpty COLON - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + foreach_header ::= foreach_opener nameList_nonEmpty COLON * exprList_nonEmpty + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 202 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 408 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 36: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -6682,7 +6551,7 @@ State 36: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6720,75 +6589,89 @@ State 36: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME - assign_stmt ::= DEC * lvalue - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + case_clause ::= case_start * exprList_nonEmpty COLON + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 162 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 204 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 420 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 - lvalue shift 406 + logicExpr shift 295 State 37: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -6797,7 +6680,7 @@ State 37: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6835,58 +6718,67 @@ State 37: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME - assign_stmt ::= INC * lvalue - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalueList_nonEmpty ASSIGN * exprList_nonEmpty + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 162 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 204 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 374 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 - lvalue shift 407 + logicExpr shift 295 State 38: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6895,18 +6787,20 @@ State 38: exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -6915,7 +6809,7 @@ State 38: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -6953,72 +6847,89 @@ State 38: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalueList_nonEmpty ASSIGN * exprList_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + cdef_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 257 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 423 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 39: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7027,7 +6938,7 @@ State 39: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7065,58 +6976,67 @@ State 39: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - lvalue ::= * NAME - lvalue ::= * expr LSQBRACKET expr RSQBRACKET - lvalue ::= * expr PERIOD NAME - lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA * lvalue - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 162 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 204 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 425 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 - lvalue shift 408 + logicExpr shift 295 State 40: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7125,18 +7045,20 @@ State 40: exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7145,7 +7067,7 @@ State 40: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7183,55 +7105,67 @@ State 40: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - cdef_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 260 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 427 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 41: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7240,18 +7174,20 @@ State 41: exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7260,7 +7196,8 @@ State 41: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= LIST LPAREN * exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7298,55 +7235,66 @@ State 41: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 261 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 146 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 42: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7355,18 +7303,20 @@ State 42: exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7375,7 +7325,8 @@ State 42: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= VARRAY LPAREN * exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7413,55 +7364,66 @@ State 42: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 263 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 147 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 43: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7470,19 +7432,22 @@ State 43: exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= LSQBRACKET * exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -7490,8 +7455,7 @@ State 43: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= LIST LPAREN * exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7529,74 +7493,89 @@ State 43: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 151 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 148 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 44: + fdef_rettypes ::= COLON * exprList_nonEmpty exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7605,8 +7584,7 @@ State 44: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= VARRAY LPAREN * exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7644,76 +7622,88 @@ State 44: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 152 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + exprList_nonEmpty shift 320 + expr shift 311 + funcexpr shift 294 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 45: - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr + exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN + (112) commaSkippable ::= COMMA * constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - constExpr ::= LSQBRACKET * exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -7721,7 +7711,7 @@ State 45: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7759,75 +7749,88 @@ State 45: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 153 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + RPAREN reduce 112 + NUMBER shift 308 + RSQBRACKET reduce 112 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 313 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 46: - fdef_rettypes ::= COLON * exprList_nonEmpty - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr + fConstArg ::= NAME ASSIGN * expr + fConstArg ::= NAME ASSIGN * STRING funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7836,7 +7839,7 @@ State 46: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7874,73 +7877,85 @@ State 46: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - exprList_nonEmpty shift 320 - expr shift 481 - funcexpr shift 298 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + STRING shift 400 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 401 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 47: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr - fConstArg ::= NAME ASSIGN * expr - fConstArg ::= NAME ASSIGN * STRING + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7949,7 +7964,7 @@ State 47: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -7987,71 +8002,85 @@ State 47: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + for_header2 ::= for_header1 * expr SEMICOLON + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 343 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 344 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 473 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 48: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8060,7 +8089,7 @@ State 48: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8098,71 +8127,85 @@ State 48: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - for_header2 ::= for_header1 * expr SEMICOLON - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + while_header ::= while_start LPAREN * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 240 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 477 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 49: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8171,7 +8214,7 @@ State 49: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8209,71 +8252,85 @@ State 49: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - while_header ::= while_start LPAREN * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + switchcase_header ::= SWITCHCASE LPAREN * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 388 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 483 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 50: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8282,7 +8339,7 @@ State 50: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8320,71 +8377,85 @@ State 50: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - switchcase_header ::= SWITCHCASE LPAREN * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + elif_header ::= elif_start LPAREN * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 394 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 486 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 51: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8393,7 +8464,7 @@ State 51: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8431,71 +8502,85 @@ State 51: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - elif_header ::= elif_start LPAREN * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + if_header ::= if_start LPAREN * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 396 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 490 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 52: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8504,7 +8589,7 @@ State 52: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8542,71 +8627,85 @@ State 52: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - if_header ::= if_start LPAREN * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + once_header ::= once_start LPAREN * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 399 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 494 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 53: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8615,7 +8714,7 @@ State 53: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8653,71 +8752,85 @@ State 53: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - once_header ::= once_start LPAREN * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue IBXR * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 404 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 375 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 54: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8726,7 +8839,7 @@ State 54: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8764,71 +8877,85 @@ State 54: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue IBXR * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue IBOR * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 409 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 376 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 55: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8837,7 +8964,7 @@ State 55: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8875,71 +9002,85 @@ State 55: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue IBOR * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue IBND * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 410 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 377 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 56: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -8948,7 +9089,7 @@ State 56: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -8986,71 +9127,85 @@ State 56: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue IBND * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue IRSH * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 411 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 378 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 57: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9059,7 +9214,7 @@ State 57: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -9097,71 +9252,85 @@ State 57: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue IRSH * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue ILSH * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 412 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 379 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 58: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9170,7 +9339,7 @@ State 58: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -9208,71 +9377,85 @@ State 58: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue ILSH * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue IMOD * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 413 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 380 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 59: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9281,7 +9464,7 @@ State 59: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -9319,71 +9502,85 @@ State 59: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue IMOD * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue IDIV * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 414 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 381 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 60: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9392,7 +9589,7 @@ State 60: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -9430,71 +9627,85 @@ State 60: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue IDIV * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue IMUL * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 415 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 382 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 61: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9503,7 +9714,7 @@ State 61: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -9541,71 +9752,85 @@ State 61: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue IMUL * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue ISUB * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 416 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 383 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 62: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9614,7 +9839,7 @@ State 62: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -9652,71 +9877,85 @@ State 62: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue ISUB * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue IADD * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 417 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 384 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 63: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9725,7 +9964,7 @@ State 63: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -9763,71 +10002,85 @@ State 63: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue IADD * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue ASSIGN * expr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 418 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 387 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 64: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9836,8 +10089,9 @@ State 64: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + nonConstExpr ::= nonConstExpr QMARK expr COLON * expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr @@ -9874,71 +10128,84 @@ State 64: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - assign_stmt ::= lvalue ASSIGN * expr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 421 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 229 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 65: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -9947,7 +10214,7 @@ State 65: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -9979,77 +10246,91 @@ State 65: constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr + nonConstExpr ::= nonConstExpr BITXOR * expr constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - lvalue ::= expr LSQBRACKET * expr RSQBRACKET - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 259 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 270 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 66: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10058,9 +10339,8 @@ State 66: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - nonConstExpr ::= nonConstExpr QMARK expr COLON * expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr @@ -10088,6 +10368,7 @@ State 66: constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr + nonConstExpr ::= nonConstExpr BITOR * expr constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr @@ -10097,70 +10378,84 @@ State 66: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 426 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 271 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 67: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10169,7 +10464,7 @@ State 67: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -10195,6 +10490,7 @@ State 67: constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr + nonConstExpr ::= nonConstExpr BITAND * expr constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr @@ -10207,71 +10503,84 @@ State 67: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= constExpr LOR * expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 435 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 272 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 68: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10280,7 +10589,7 @@ State 68: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -10303,6 +10612,7 @@ State 68: constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr + nonConstExpr ::= nonConstExpr RSHIFT * expr constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr @@ -10318,71 +10628,84 @@ State 68: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= constExpr LAND * expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 436 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 273 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 69: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10391,7 +10714,7 @@ State 69: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -10411,6 +10734,7 @@ State 69: constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr + nonConstExpr ::= nonConstExpr LSHIFT * expr constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr @@ -10429,71 +10753,84 @@ State 69: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= constExpr GT * expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 437 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 274 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 70: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10502,7 +10839,7 @@ State 70: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -10519,6 +10856,7 @@ State 70: constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr + nonConstExpr ::= nonConstExpr MOD * expr constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr @@ -10540,71 +10878,84 @@ State 70: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= constExpr LT * expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 438 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 276 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 71: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10613,7 +10964,7 @@ State 71: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -10627,6 +10978,7 @@ State 71: constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr + nonConstExpr ::= nonConstExpr DIVIDE * expr constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr @@ -10651,71 +11003,84 @@ State 71: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= constExpr GE * expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 439 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 278 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 72: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10724,7 +11089,7 @@ State 72: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -10735,6 +11100,7 @@ State 72: constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr + nonConstExpr ::= nonConstExpr MULTIPLY * expr constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr @@ -10762,71 +11128,84 @@ State 72: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= constExpr LE * expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 440 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 280 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 73: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10835,7 +11214,7 @@ State 73: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -10843,6 +11222,7 @@ State 73: constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr + nonConstExpr ::= nonConstExpr MINUS * expr constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr @@ -10873,71 +11253,84 @@ State 73: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= constExpr NE * expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 441 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 282 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 74: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10946,11 +11339,12 @@ State 74: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr + nonConstExpr ::= nonConstExpr PLUS * expr constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr @@ -10984,80 +11378,94 @@ State 74: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= constExpr EQ * expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 442 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 284 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 75: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= L2V LPAREN * expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -11095,71 +11503,84 @@ State 75: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - nonConstExpr ::= nonConstExpr LOR * expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 446 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 524 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 76: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -11168,8 +11589,9 @@ State 76: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + nonConstExpr ::= nonConstExpr QMARK * expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr @@ -11206,71 +11628,85 @@ State 76: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= nonConstExpr LAND * expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 447 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 498 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 77: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + nonConstExpr ::= nonConstExpr LSQBRACKET * expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -11279,7 +11715,7 @@ State 77: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -11317,71 +11753,86 @@ State 77: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= nonConstExpr GT * expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + lvalue ::= nonConstExpr LSQBRACKET * expr RSQBRACKET + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 448 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 529 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 78: + typedName ::= NAME COLON * expr nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -11390,7 +11841,7 @@ State 78: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -11428,71 +11879,85 @@ State 78: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= nonConstExpr LT * expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 449 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 390 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 79: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + nonConstExpr ::= nonConstExpr LSQBRACKET * expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -11501,7 +11966,7 @@ State 79: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -11539,71 +12004,85 @@ State 79: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= nonConstExpr GE * expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 450 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 542 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 80: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt expr ::= * constExpr - expr ::= * nonConstExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -11612,7 +12091,7 @@ State 80: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -11650,71 +12129,82 @@ State 80: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= nonConstExpr LE * expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 451 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + expr shift 313 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 299 lambdaExprStart shift 12 + logicExpr shift 295 State 81: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -11723,7 +12213,7 @@ State 81: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -11761,71 +12251,82 @@ State 81: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= nonConstExpr NE * expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= LNOT * logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 452 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 341 lambdaExprStart shift 12 + logicExpr shift 235 State 82: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -11834,7 +12335,7 @@ State 82: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -11872,71 +12373,84 @@ State 82: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= nonConstExpr EQ * expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= logicExpr LOR * logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 453 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 341 lambdaExprStart shift 12 + logicExpr shift 230 State 83: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + constExpr ::= LPAREN * constExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= LPAREN * logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -11945,7 +12459,7 @@ State 83: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -11977,77 +12491,87 @@ State 83: constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr - nonConstExpr ::= nonConstExpr BITXOR * expr constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 454 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 338 lambdaExprStart shift 12 + logicExpr shift 389 State 84: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12056,7 +12580,7 @@ State 84: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12085,7 +12609,6 @@ State 84: constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr - nonConstExpr ::= nonConstExpr BITOR * expr constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr @@ -12095,70 +12618,82 @@ State 84: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= logicExpr LAND * logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 455 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + LNOT shift 81 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 307 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + LIST shift 506 + CONDITIONNAME shift 504 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 304 + constExpr shift 341 lambdaExprStart shift 12 + logicExpr shift 226 State 85: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12167,7 +12702,6 @@ State 85: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12193,7 +12727,6 @@ State 85: constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr - nonConstExpr ::= nonConstExpr BITAND * expr constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr @@ -12206,70 +12739,59 @@ State 85: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + assign_stmt ::= DEC * lvalue constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 456 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 330 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 + lvalue shift 372 State 86: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12278,7 +12800,6 @@ State 86: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12301,7 +12822,6 @@ State 86: constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr - nonConstExpr ::= nonConstExpr RSHIFT * expr constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr @@ -12317,70 +12837,59 @@ State 86: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + assign_stmt ::= INC * lvalue constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 457 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 330 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 + lvalue shift 373 State 87: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12389,7 +12898,6 @@ State 87: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12409,7 +12917,6 @@ State 87: constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr - nonConstExpr ::= nonConstExpr LSHIFT * expr constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr @@ -12428,70 +12935,80 @@ State 87: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA * lvalue constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 468 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 330 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 343 + constExpr shift 340 lambdaExprStart shift 12 + lvalue shift 421 State 88: + case_start ::= * CASE + case_clause ::= * case_start exprList_nonEmpty COLON + case_chunk ::= * case_clause + case_chunk ::= * case_clause bodyStmtList + case_chunks ::= case_chunks * case_chunk + default_clause ::= * DEFAULT COLON + default_chunk ::= * default_clause + default_chunk ::= * default_clause bodyStmtList + switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * default_chunk + (242) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * + + RBRACKET reduce 242 + CASE shift 335 + DEFAULT shift 458 + case_start shift 36 + case_clause shift 14 + case_chunk shift 371 + default_clause shift 16 + default_chunk shift 457 + +State 89: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12500,7 +13017,6 @@ State 88: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12517,7 +13033,6 @@ State 88: constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr - nonConstExpr ::= nonConstExpr MOD * expr constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr @@ -12539,70 +13054,55 @@ State 88: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + logicExpr ::= nonConstExpr GT * constExpr + logicExpr ::= nonConstExpr GT * nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 469 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 217 + constExpr shift 197 lambdaExprStart shift 12 -State 89: +State 90: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12611,7 +13111,6 @@ State 89: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12625,7 +13124,6 @@ State 89: constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr - nonConstExpr ::= nonConstExpr DIVIDE * expr constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr @@ -12650,70 +13148,55 @@ State 89: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + logicExpr ::= nonConstExpr LT * constExpr + logicExpr ::= nonConstExpr LT * nonConstExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 470 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 218 + constExpr shift 198 lambdaExprStart shift 12 -State 90: +State 91: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12722,7 +13205,6 @@ State 90: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12733,7 +13215,6 @@ State 90: constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr - nonConstExpr ::= nonConstExpr MULTIPLY * expr constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr @@ -12761,70 +13242,55 @@ State 90: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + logicExpr ::= nonConstExpr GE * constExpr + logicExpr ::= nonConstExpr GE * nonConstExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 471 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 219 + constExpr shift 199 lambdaExprStart shift 12 -State 91: +State 92: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12833,7 +13299,6 @@ State 91: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12841,7 +13306,6 @@ State 91: constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr - nonConstExpr ::= nonConstExpr MINUS * expr constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr @@ -12872,80 +13336,63 @@ State 91: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + logicExpr ::= nonConstExpr LE * constExpr + logicExpr ::= nonConstExpr LE * nonConstExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 472 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 220 + constExpr shift 200 lambdaExprStart shift 12 -State 92: +State 93: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - nonConstExpr ::= L2V LPAREN * expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -12983,72 +13430,55 @@ State 92: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + logicExpr ::= nonConstExpr NE * constExpr + logicExpr ::= nonConstExpr NE * nonConstExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 292 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 221 + constExpr shift 201 lambdaExprStart shift 12 -State 93: +State 94: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN - (110) commaSkippable ::= COMMA * + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -13057,7 +13487,6 @@ State 93: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -13095,71 +13524,55 @@ State 93: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + logicExpr ::= nonConstExpr EQ * constExpr + logicExpr ::= nonConstExpr EQ * nonConstExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 514 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 222 + constExpr shift 202 lambdaExprStart shift 12 - {default} reduce 110 -State 94: +State 95: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -13168,12 +13581,10 @@ State 94: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr - nonConstExpr ::= nonConstExpr PLUS * expr constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr @@ -13207,70 +13618,55 @@ State 94: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + constExpr ::= constExpr GT * constExpr + logicExpr ::= constExpr GT * nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 428 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 238 + constExpr shift 203 lambdaExprStart shift 12 -State 95: +State 96: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -13279,9 +13675,7 @@ State 95: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - nonConstExpr ::= nonConstExpr QMARK * expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr @@ -13318,71 +13712,55 @@ State 95: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= constExpr LT * constExpr + logicExpr ::= constExpr LT * nonConstExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 265 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 239 + constExpr shift 204 lambdaExprStart shift 12 -State 96: - typedName ::= NAME COLON * expr +State 97: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -13391,7 +13769,6 @@ State 96: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -13429,71 +13806,55 @@ State 96: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= constExpr GE * constExpr + logicExpr ::= constExpr GE * nonConstExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 511 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 240 + constExpr shift 205 lambdaExprStart shift 12 -State 97: +State 98: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - nonConstExpr ::= nonConstExpr LSQBRACKET * expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -13502,7 +13863,6 @@ State 97: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -13540,71 +13900,55 @@ State 97: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= constExpr LE * constExpr + logicExpr ::= constExpr LE * nonConstExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 223 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 241 + constExpr shift 206 lambdaExprStart shift 12 -State 98: +State 99: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * nonConstExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -13613,7 +13957,6 @@ State 98: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -13651,147 +13994,141 @@ State 98: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= constExpr NE * constExpr + logicExpr ::= constExpr NE * nonConstExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - expr shift 514 - funcexpr shift 319 - nonConstExpr shift 157 - constExpr shift 161 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 242 + constExpr shift 207 lambdaExprStart shift 12 -State 99: - case_start ::= * CASE - case_clause ::= * case_start exprList_nonEmpty COLON - case_chunk ::= * case_clause - case_chunk ::= * case_clause bodyStmtList - case_chunks ::= case_chunks * case_chunk - default_clause ::= * DEFAULT COLON - default_chunk ::= * default_clause - default_chunk ::= * default_clause bodyStmtList - switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * default_chunk - (229) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * - - CASE shift 393 - DEFAULT shift 227 - case_start shift 35 - case_clause shift 16 - case_chunk shift 356 - default_clause shift 14 - default_chunk shift 354 - {default} reduce 229 - State 100: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= * fConstArg - fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr + nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= * nonConstExpr PLUS expr constExpr ::= * constExpr MINUS constExpr + nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= * nonConstExpr MINUS expr constExpr ::= * constExpr MULTIPLY constExpr + nonConstExpr ::= * constExpr MULTIPLY nonConstExpr + nonConstExpr ::= * nonConstExpr MULTIPLY expr constExpr ::= * constExpr DIVIDE constExpr + nonConstExpr ::= * constExpr DIVIDE nonConstExpr + nonConstExpr ::= * nonConstExpr DIVIDE expr constExpr ::= * constExpr MOD constExpr + nonConstExpr ::= * constExpr MOD nonConstExpr + nonConstExpr ::= * nonConstExpr MOD expr constExpr ::= * constExpr LSHIFT constExpr + nonConstExpr ::= * constExpr LSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr LSHIFT expr constExpr ::= * constExpr RSHIFT constExpr + nonConstExpr ::= * constExpr RSHIFT nonConstExpr + nonConstExpr ::= * nonConstExpr RSHIFT expr constExpr ::= * constExpr BITAND constExpr + nonConstExpr ::= * constExpr BITAND nonConstExpr + nonConstExpr ::= * nonConstExpr BITAND expr constExpr ::= * constExpr BITOR constExpr + nonConstExpr ::= * constExpr BITOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITOR expr constExpr ::= * constExpr BITXOR constExpr + nonConstExpr ::= * constExpr BITXOR nonConstExpr + nonConstExpr ::= * nonConstExpr BITXOR expr constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN - constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= constExpr EQ * constExpr + logicExpr ::= constExpr EQ * nonConstExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - NAME shift 228 - FUNCTION shift 311 - RPAREN shift 230 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 167 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 243 + constExpr shift 208 lambdaExprStart shift 12 - fConstArg shift 466 - fConstArgs_nonEmpty shift 198 State 101: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -13799,7 +14136,7 @@ State 101: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -13808,7 +14145,6 @@ State 101: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -13848,59 +14184,45 @@ State 101: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 166 - constExpr shift 172 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 258 + constExpr shift 257 lambdaExprStart shift 12 State 102: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -13908,7 +14230,7 @@ State 102: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -13917,7 +14239,6 @@ State 102: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -13957,59 +14278,45 @@ State 102: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 164 - constExpr shift 170 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 260 + constExpr shift 259 lambdaExprStart shift 12 State 103: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14017,7 +14324,7 @@ State 103: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14026,7 +14333,6 @@ State 103: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -14066,59 +14372,45 @@ State 103: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 168 - constExpr shift 176 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 262 + constExpr shift 261 lambdaExprStart shift 12 State 104: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14126,7 +14418,7 @@ State 104: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14135,7 +14427,6 @@ State 104: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -14175,59 +14466,45 @@ State 104: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 173 - constExpr shift 181 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 264 + constExpr shift 263 lambdaExprStart shift 12 State 105: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14235,7 +14512,7 @@ State 105: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14244,7 +14521,6 @@ State 105: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -14284,59 +14560,45 @@ State 105: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 174 - constExpr shift 182 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 266 + constExpr shift 265 lambdaExprStart shift 12 State 106: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14344,7 +14606,7 @@ State 106: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14353,7 +14615,6 @@ State 106: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -14393,59 +14654,45 @@ State 106: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 187 - constExpr shift 443 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 268 + constExpr shift 267 lambdaExprStart shift 12 State 107: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14453,7 +14700,7 @@ State 107: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14462,7 +14709,6 @@ State 107: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -14502,59 +14748,45 @@ State 107: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 188 - constExpr shift 444 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 277 + constExpr shift 269 lambdaExprStart shift 12 State 108: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14562,7 +14794,7 @@ State 108: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14571,7 +14803,6 @@ State 108: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -14611,59 +14842,45 @@ State 108: nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 189 - constExpr shift 445 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 279 + constExpr shift 236 lambdaExprStart shift 12 State 109: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14671,7 +14888,7 @@ State 109: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14680,15 +14897,12 @@ State 109: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr constExpr ::= * constExpr MINUS constExpr - constExpr ::= constExpr MINUS * constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= constExpr MINUS * nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr @@ -14719,60 +14933,48 @@ State 109: constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr + constExpr ::= BITNOT * constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + nonConstExpr ::= BITNOT * nonConstExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 177 - constExpr shift 190 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 281 + constExpr shift 234 lambdaExprStart shift 12 State 110: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14780,7 +14982,7 @@ State 110: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14789,7 +14991,6 @@ State 110: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -14824,64 +15025,50 @@ State 110: constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + constExpr ::= MINUS * constExpr nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= MINUS * nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - constExpr ::= LNOT * constExpr - nonConstExpr ::= * LNOT nonConstExpr - nonConstExpr ::= LNOT * nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 191 - constExpr shift 433 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 283 + constExpr shift 233 lambdaExprStart shift 12 State 111: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14889,7 +15076,7 @@ State 111: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -14898,7 +15085,6 @@ State 111: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -14931,66 +15117,52 @@ State 111: nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr constExpr ::= * PLUS constExpr + constExpr ::= PLUS * constExpr nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= PLUS * nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= BITNOT * constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= BITNOT * nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 192 - constExpr shift 432 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 285 + constExpr shift 232 lambdaExprStart shift 12 State 112: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -14998,7 +15170,7 @@ State 112: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -15007,13 +15179,14 @@ State 112: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr constExpr ::= * constExpr MINUS constExpr + constExpr ::= constExpr MINUS * constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr + nonConstExpr ::= constExpr MINUS * nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr @@ -15042,64 +15215,48 @@ State 112: constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - constExpr ::= MINUS * constExpr nonConstExpr ::= * MINUS nonConstExpr - nonConstExpr ::= MINUS * nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 193 - constExpr shift 431 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 296 + constExpr shift 228 lambdaExprStart shift 12 State 113: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt @@ -15107,7 +15264,7 @@ State 113: funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -15116,10 +15273,11 @@ State 113: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr + constExpr ::= constExpr PLUS * constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr + nonConstExpr ::= constExpr PLUS * nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr @@ -15149,306 +15307,298 @@ State 113: nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr constExpr ::= * PLUS constExpr - constExpr ::= PLUS * constExpr nonConstExpr ::= * PLUS nonConstExpr - nonConstExpr ::= PLUS * nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 194 - constExpr shift 430 + PLUS shift 111 + MINUS shift 110 + BITNOT shift 109 + LPAREN shift 83 + LSQBRACKET shift 43 + NAME shift 305 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + L2V shift 525 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + funcexpr shift 310 + nonConstExpr shift 298 + constExpr shift 224 lambdaExprStart shift 12 State 114: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + case_start ::= * CASE + case_clause ::= * case_start exprList_nonEmpty COLON + case_chunk ::= * case_clause + case_chunk ::= * case_clause bodyStmtList + case_chunks ::= * case_chunks case_chunk + case_chunks ::= * case_chunk + switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks default_chunk + switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks + (243) switchcase_block ::= switchcase_header RPAREN LBRACKET * + + RBRACKET reduce 243 + CASE shift 335 + case_start shift 36 + case_clause shift 14 + case_chunk shift 370 + case_chunks shift 88 + +State 115: + elif_start ::= * ELSE IF + elif_header ::= * elif_start LPAREN expr + if_block ::= if_block * elif_header RPAREN stmt + else_header ::= * ELSE + (229) if_stmt ::= if_block * + if_stmt ::= if_block * else_header stmt + + $ reduce 229 + ELSE shift 324 + ELSE reduce 229 -- dropped by precedence + QMARK reduce 229 + COMMA reduce 229 + LOR reduce 229 + LAND reduce 229 + EQ reduce 229 + LE reduce 229 + LT reduce 229 + GE reduce 229 + GT reduce 229 + NE reduce 229 + BITOR reduce 229 + BITXOR reduce 229 + BITAND reduce 229 + LSHIFT reduce 229 + RSHIFT reduce 229 + PLUS reduce 229 + MINUS reduce 229 + DIVIDE reduce 229 + MULTIPLY reduce 229 + MOD reduce 229 + BITNOT reduce 229 + LPAREN reduce 229 + LSQBRACKET reduce 229 + PERIOD reduce 229 + SEMICOLON reduce 229 + IMPORT reduce 229 + NAME reduce 229 + COLON reduce 229 + FUNCTION reduce 229 + RPAREN reduce 229 + OBJECT reduce 229 + LBRACKET reduce 229 + VAR reduce 229 + RBRACKET reduce 229 + NUMBER reduce 229 + RSQBRACKET reduce 229 + KILLS reduce 229 + TRGCONST reduce 229 + L2V reduce 229 + MAPSTRING reduce 229 + UNIT reduce 229 + SWITCH reduce 229 + LOCATION reduce 229 + STATTXTTBL reduce 229 + VARRAY reduce 229 + STATIC reduce 229 + CONST reduce 229 + INC reduce 229 + DEC reduce 229 + ONCE reduce 229 + IF reduce 229 + SWITCHCASE reduce 229 + CASE reduce 229 + DEFAULT reduce 229 + WHILE reduce 229 + FOR reduce 229 + FOREACH reduce 229 + CONTINUE reduce 229 + BREAK reduce 229 + RETURN reduce 229 + ACTIONNAME reduce 229 + elif_start shift 487 + elif_header shift 485 + else_header shift 4 + +State 116: + method_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + (69) typedNameList ::= * + typedNameList ::= * typedNameList_nonEmpty + + NAME shift 363 + RPAREN reduce 69 + typedNameList shift 447 + typedNameList_nonEmpty shift 456 + typedName shift 369 + +State 117: + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + (69) typedNameList ::= * + typedNameList ::= * typedNameList_nonEmpty + lambdaExprStart ::= FUNCTION LPAREN * typedNameList RPAREN fdef_rettypes + + NAME shift 363 + RPAREN reduce 69 + typedNameList shift 455 + typedNameList_nonEmpty shift 456 + typedName shift 369 + +State 118: + fdef_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN * typedNameList RPAREN SEMICOLON + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + (69) typedNameList ::= * + typedNameList ::= * typedNameList_nonEmpty + + NAME shift 363 + RPAREN reduce 69 + typedNameList shift 547 + typedNameList_nonEmpty shift 456 + typedName shift 369 + +State 119: constExpr ::= * NUMBER constExpr ::= * KILLS - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - constExpr ::= LPAREN * constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN - nonConstExpr ::= LPAREN * nonConstExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= BITNOT * constExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 156 - constExpr shift 159 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 244 lambdaExprStart shift 12 -State 115: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET +State 120: constExpr ::= * NUMBER constExpr ::= * KILLS - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN nonConstExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr - constExpr ::= constExpr PLUS * constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= constExpr PLUS * nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= MINUS * constExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= * constExpr EQ expr - nonConstExpr ::= * nonConstExpr EQ expr - nonConstExpr ::= * constExpr NE expr - nonConstExpr ::= * nonConstExpr NE expr - nonConstExpr ::= * constExpr LE expr - nonConstExpr ::= * nonConstExpr LE expr - nonConstExpr ::= * constExpr GE expr - nonConstExpr ::= * nonConstExpr GE expr - nonConstExpr ::= * constExpr LT expr - nonConstExpr ::= * nonConstExpr LT expr - nonConstExpr ::= * constExpr GT expr - nonConstExpr ::= * nonConstExpr GT expr - nonConstExpr ::= * constExpr LAND expr - nonConstExpr ::= * nonConstExpr LAND expr - nonConstExpr ::= * constExpr LOR expr - nonConstExpr ::= * nonConstExpr LOR expr - constExpr ::= * LNOT constExpr - nonConstExpr ::= * LNOT nonConstExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 110 - PLUS shift 113 - MINUS shift 112 - BITNOT shift 111 - LPAREN shift 114 - LSQBRACKET shift 45 - NAME shift 313 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - L2V shift 293 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - funcexpr shift 319 - nonConstExpr shift 178 - constExpr shift 186 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 245 lambdaExprStart shift 12 -State 116: - case_start ::= * CASE - case_clause ::= * case_start exprList_nonEmpty COLON - case_chunk ::= * case_clause - case_chunk ::= * case_clause bodyStmtList - case_chunks ::= * case_chunks case_chunk - case_chunks ::= * case_chunk - switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks default_chunk - switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks - (230) switchcase_block ::= switchcase_header RPAREN LBRACKET * - - CASE shift 393 - case_start shift 35 - case_clause shift 16 - case_chunk shift 353 - case_chunks shift 99 - {default} reduce 230 - -State 117: +State 121: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fConstArg constExpr ::= * LPAREN constExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -15457,7 +15607,6 @@ State 117: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15469,100 +15618,40 @@ State 117: constExpr ::= * constExpr BITOR constExpr constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr + constExpr ::= PLUS * constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - NAME shift 228 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - STRING shift 467 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 167 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 246 lambdaExprStart shift 12 - fConstArg shift 465 - -State 118: - method_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (69) typedNameList ::= * - typedNameList ::= * typedNameList_nonEmpty - - NAME shift 310 - typedNameList shift 215 - typedNameList_nonEmpty shift 349 - typedName shift 226 - {default} reduce 69 - -State 119: - elif_start ::= * ELSE IF - elif_header ::= * elif_start LPAREN expr - if_block ::= if_block * elif_header RPAREN stmt - else_header ::= * ELSE - (216) if_stmt ::= if_block * - if_stmt ::= if_block * else_header stmt - - ELSE shift 252 - elif_start shift 251 - elif_header shift 250 - else_header shift 3 - {default} reduce 216 - -State 120: - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (69) typedNameList ::= * - typedNameList ::= * typedNameList_nonEmpty - lambdaExprStart ::= FUNCTION LPAREN * typedNameList RPAREN fdef_rettypes - - NAME shift 310 - typedNameList shift 225 - typedNameList_nonEmpty shift 349 - typedName shift 226 - {default} reduce 69 - -State 121: - fdef_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN * typedNameList RPAREN SEMICOLON - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (69) typedNameList ::= * - typedNameList ::= * typedNameList_nonEmpty - - NAME shift 310 - typedNameList shift 321 - typedNameList_nonEmpty shift 349 - typedName shift 226 - {default} reduce 69 State 122: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -15573,7 +15662,6 @@ State 122: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15587,36 +15675,38 @@ State 122: constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= LNOT * constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + constExpr ::= constExpr GT * constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 358 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 210 lambdaExprStart shift 12 State 123: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -15627,7 +15717,6 @@ State 123: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15641,36 +15730,38 @@ State 123: constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= BITNOT * constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= constExpr LT * constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 359 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 211 lambdaExprStart shift 12 State 124: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -15681,7 +15772,6 @@ State 124: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15694,37 +15784,39 @@ State 124: constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr - constExpr ::= MINUS * constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= constExpr GE * constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 360 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 212 lambdaExprStart shift 12 State 125: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -15735,7 +15827,6 @@ State 125: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15747,38 +15838,40 @@ State 125: constExpr ::= * constExpr BITOR constExpr constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr - constExpr ::= PLUS * constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= constExpr LE * constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 361 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 213 lambdaExprStart shift 12 State 126: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -15789,7 +15882,6 @@ State 126: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15800,39 +15892,41 @@ State 126: constExpr ::= * constExpr BITAND constExpr constExpr ::= * constExpr BITOR constExpr constExpr ::= * constExpr BITXOR constExpr - constExpr ::= constExpr BITXOR * constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= constExpr NE * constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 171 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 214 lambdaExprStart shift 12 State 127: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -15843,7 +15937,6 @@ State 127: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15853,40 +15946,42 @@ State 127: constExpr ::= * constExpr RSHIFT constExpr constExpr ::= * constExpr BITAND constExpr constExpr ::= * constExpr BITOR constExpr - constExpr ::= constExpr BITOR * constExpr constExpr ::= * constExpr BITXOR constExpr + constExpr ::= constExpr BITXOR * constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 169 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 247 lambdaExprStart shift 12 State 128: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -15897,7 +15992,6 @@ State 128: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15906,41 +16000,43 @@ State 128: constExpr ::= * constExpr LSHIFT constExpr constExpr ::= * constExpr RSHIFT constExpr constExpr ::= * constExpr BITAND constExpr - constExpr ::= constExpr BITAND * constExpr constExpr ::= * constExpr BITOR constExpr + constExpr ::= constExpr BITOR * constExpr constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 175 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 248 lambdaExprStart shift 12 State 129: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -15951,7 +16047,6 @@ State 129: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr @@ -15959,42 +16054,44 @@ State 129: constExpr ::= * constExpr MOD constExpr constExpr ::= * constExpr LSHIFT constExpr constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= constExpr RSHIFT * constExpr constExpr ::= * constExpr BITAND constExpr + constExpr ::= constExpr BITAND * constExpr constExpr ::= * constExpr BITOR constExpr constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 179 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 249 lambdaExprStart shift 12 State 130: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -16005,50 +16102,51 @@ State 130: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr constExpr ::= * constExpr DIVIDE constExpr constExpr ::= * constExpr MOD constExpr constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= constExpr LSHIFT * constExpr constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= constExpr RSHIFT * constExpr constExpr ::= * constExpr BITAND constExpr constExpr ::= * constExpr BITOR constExpr constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 180 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 250 lambdaExprStart shift 12 State 131: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -16059,14 +16157,13 @@ State 131: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr constExpr ::= * constExpr DIVIDE constExpr constExpr ::= * constExpr MOD constExpr - constExpr ::= constExpr MOD * constExpr constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= constExpr LSHIFT * constExpr constExpr ::= * constExpr RSHIFT constExpr constExpr ::= * constExpr BITAND constExpr constExpr ::= * constExpr BITOR constExpr @@ -16074,35 +16171,37 @@ State 131: constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 362 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 251 lambdaExprStart shift 12 State 132: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -16113,13 +16212,12 @@ State 132: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= constExpr DIVIDE * constExpr constExpr ::= * constExpr MOD constExpr + constExpr ::= constExpr MOD * constExpr constExpr ::= * constExpr LSHIFT constExpr constExpr ::= * constExpr RSHIFT constExpr constExpr ::= * constExpr BITAND constExpr @@ -16128,35 +16226,37 @@ State 132: constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 363 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 252 lambdaExprStart shift 12 State 133: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -16167,12 +16267,11 @@ State 133: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= constExpr MULTIPLY * constExpr constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= constExpr DIVIDE * constExpr constExpr ::= * constExpr MOD constExpr constExpr ::= * constExpr LSHIFT constExpr constExpr ::= * constExpr RSHIFT constExpr @@ -16182,35 +16281,37 @@ State 133: constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 364 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 253 lambdaExprStart shift 12 State 134: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -16221,11 +16322,10 @@ State 134: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr - constExpr ::= constExpr MINUS * constExpr constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= constExpr MULTIPLY * constExpr constExpr ::= * constExpr DIVIDE constExpr constExpr ::= * constExpr MOD constExpr constExpr ::= * constExpr LSHIFT constExpr @@ -16236,39 +16336,40 @@ State 134: constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 185 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 254 lambdaExprStart shift 12 State 135: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN - constExpr ::= LPAREN * constExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -16276,9 +16377,9 @@ State 135: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= * constExpr MINUS constExpr + constExpr ::= constExpr MINUS * constExpr constExpr ::= * constExpr MULTIPLY constExpr constExpr ::= * constExpr DIVIDE constExpr constExpr ::= * constExpr MOD constExpr @@ -16290,35 +16391,37 @@ State 135: constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 165 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 255 lambdaExprStart shift 12 State 136: constExpr ::= * NUMBER constExpr ::= * KILLS + constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt constExpr ::= * LPAREN constExpr RPAREN @@ -16329,7 +16432,6 @@ State 136: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN constExpr ::= * constExpr PLUS constExpr constExpr ::= constExpr PLUS * constExpr constExpr ::= * constExpr MINUS constExpr @@ -16344,464 +16446,3100 @@ State 136: constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * LNOT constExpr - constExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - constExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 122 - PLUS shift 125 - MINUS shift 124 - BITNOT shift 123 - LPAREN shift 135 - LSQBRACKET shift 45 - FUNCTION shift 311 - NUMBER shift 513 - KILLS shift 314 - MAPSTRING shift 291 - UNIT shift 288 - SWITCH shift 285 - LOCATION shift 282 - STATTXTTBL shift 279 - VARRAY shift 276 - LIST shift 274 - CONDITIONNAME shift 272 - ACTIONNAME shift 271 - constExpr shift 184 + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 256 lambdaExprStart shift 12 State 137: - object_body ::= object_body * VAR typedNameList_nonEmpty SEMICOLON - method_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes - method_chunk ::= * method_header stmt - object_body ::= object_body * method_chunk - object_chunk ::= object_body * RBRACKET SEMICOLON - - FUNCTION shift 217 - VAR shift 138 - RBRACKET shift 214 - method_header shift 1 - method_chunk shift 334 - -State 138: - object_body ::= object_body VAR * typedNameList_nonEmpty SEMICOLON - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - - NAME shift 310 - typedNameList_nonEmpty shift 218 - typedName shift 226 - -State 139: - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - typedNameList_nonEmpty ::= typedName COMMA * typedNameList_nonEmpty - - NAME shift 310 - typedNameList_nonEmpty shift 350 - typedName shift 226 - -State 140: - (23) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON + constExpr ::= * NUMBER + constExpr ::= * KILLS + constExpr ::= * TRGCONST + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= LPAREN * constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 337 + lambdaExprStart shift 12 + +State 138: + constExpr ::= * NUMBER + constExpr ::= * KILLS + constExpr ::= * TRGCONST + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * constExpr PLUS constExpr + constExpr ::= * constExpr MINUS constExpr + constExpr ::= * constExpr MULTIPLY constExpr + constExpr ::= * constExpr DIVIDE constExpr + constExpr ::= * constExpr MOD constExpr + constExpr ::= * constExpr LSHIFT constExpr + constExpr ::= * constExpr RSHIFT constExpr + constExpr ::= * constExpr BITAND constExpr + constExpr ::= * constExpr BITOR constExpr + constExpr ::= * constExpr BITXOR constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * constExpr EQ constExpr + constExpr ::= constExpr EQ * constExpr + constExpr ::= * constExpr NE constExpr + constExpr ::= * constExpr LE constExpr + constExpr ::= * constExpr GE constExpr + constExpr ::= * constExpr LT constExpr + constExpr ::= * constExpr GT constExpr + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + PLUS shift 121 + MINUS shift 120 + BITNOT shift 119 + LPAREN shift 137 + LSQBRACKET shift 43 + FUNCTION shift 541 + NUMBER shift 308 + KILLS shift 300 + TRGCONST shift 306 + MAPSTRING shift 523 + UNIT shift 520 + SWITCH shift 517 + LOCATION shift 514 + STATTXTTBL shift 511 + VARRAY shift 508 + ACTIONNAME shift 503 + constExpr shift 209 + lambdaExprStart shift 12 + +State 139: + object_body ::= object_body * VAR typedNameList_nonEmpty SEMICOLON + method_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes + method_chunk ::= * method_header stmt + object_body ::= object_body * method_chunk + object_chunk ::= object_body * RBRACKET SEMICOLON + + FUNCTION shift 449 + VAR shift 140 + RBRACKET shift 446 + method_header shift 2 + method_chunk shift 365 + +State 140: + object_body ::= object_body VAR * typedNameList_nonEmpty SEMICOLON + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - SEMICOLON shift 340 - COLON shift 46 - fdef_rettypes shift 341 - {default} reduce 23 + NAME shift 363 + typedNameList_nonEmpty shift 450 + typedName shift 369 State 141: - relimp_start ::= IMPORT * PERIOD - dottedName ::= * NAME - dottedName ::= * dottedName PERIOD NAME - import_chunk ::= IMPORT * dottedName AS NAME - import_chunk ::= IMPORT * dottedName + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + typedNameList_nonEmpty ::= typedName COMMA * typedNameList_nonEmpty - PERIOD shift 524 - NAME shift 523 - dottedName shift 211 + NAME shift 363 + typedNameList_nonEmpty shift 402 + typedName shift 369 State 142: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - cdef_global_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - - NAME shift 425 - nameList_nonEmpty shift 196 + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= constActionList * constAction + actionStmt ::= constActionList * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + (279) actionStmt ::= constActionList * + + $ reduce 279 + ELSE reduce 279 + QMARK reduce 279 + COMMA reduce 279 + LOR reduce 279 + LAND reduce 279 + EQ reduce 279 + LE reduce 279 + LT reduce 279 + GE reduce 279 + GT reduce 279 + NE reduce 279 + BITOR reduce 279 + BITXOR reduce 279 + BITAND reduce 279 + LSHIFT reduce 279 + RSHIFT reduce 279 + PLUS reduce 279 + MINUS reduce 279 + DIVIDE reduce 279 + MULTIPLY reduce 279 + MOD reduce 279 + BITNOT reduce 279 + LPAREN reduce 279 + LSQBRACKET reduce 279 + PERIOD reduce 279 + SEMICOLON reduce 279 + IMPORT reduce 279 + NAME reduce 279 + COLON reduce 279 + FUNCTION reduce 279 + RPAREN reduce 279 + OBJECT reduce 279 + LBRACKET reduce 279 + VAR reduce 279 + RBRACKET reduce 279 + NUMBER reduce 279 + RSQBRACKET reduce 279 + KILLS reduce 279 + TRGCONST reduce 279 + L2V reduce 279 + MAPSTRING reduce 279 + UNIT reduce 279 + SWITCH reduce 279 + LOCATION reduce 279 + STATTXTTBL reduce 279 + VARRAY reduce 279 + STATIC reduce 279 + CONST reduce 279 + INC reduce 279 + DEC reduce 279 + ONCE reduce 279 + IF reduce 279 + SWITCHCASE reduce 279 + CASE reduce 279 + DEFAULT reduce 279 + WHILE reduce 279 + FOR reduce 279 + FOREACH reduce 279 + CONTINUE reduce 279 + BREAK reduce 279 + RETURN reduce 279 + ACTIONNAME shift 460 + ACTIONNAME reduce 279 -- dropped by precedence + constAction shift 159 State 143: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdef_stmt ::= VAR * nameList_nonEmpty - vdefAssign_global_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + (23) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes - NAME shift 425 - nameList_nonEmpty shift 197 + PLUS reduce 23 + MINUS reduce 23 + BITNOT reduce 23 + LPAREN reduce 23 + LSQBRACKET reduce 23 + SEMICOLON reduce 23 + NAME reduce 23 + COLON shift 44 + FUNCTION reduce 23 + LBRACKET reduce 23 + VAR reduce 23 + NUMBER reduce 23 + KILLS reduce 23 + TRGCONST reduce 23 + L2V reduce 23 + MAPSTRING reduce 23 + UNIT reduce 23 + SWITCH reduce 23 + LOCATION reduce 23 + STATTXTTBL reduce 23 + VARRAY reduce 23 + STATIC reduce 23 + CONST reduce 23 + INC reduce 23 + DEC reduce 23 + ONCE reduce 23 + IF reduce 23 + SWITCHCASE reduce 23 + WHILE reduce 23 + FOR reduce 23 + FOREACH reduce 23 + CONTINUE reduce 23 + BREAK reduce 23 + RETURN reduce 23 + ACTIONNAME reduce 23 + fdef_rettypes shift 321 State 144: (23) fdef_rettypes ::= * fdef_rettypes ::= * COLON exprList_nonEmpty - method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes - COLON shift 46 - fdef_rettypes shift 336 - {default} reduce 23 + PLUS reduce 23 + MINUS reduce 23 + BITNOT reduce 23 + LPAREN reduce 23 + LSQBRACKET reduce 23 + SEMICOLON reduce 23 + NAME reduce 23 + COLON shift 44 + FUNCTION reduce 23 + LBRACKET reduce 23 + VAR reduce 23 + NUMBER reduce 23 + KILLS reduce 23 + TRGCONST reduce 23 + L2V reduce 23 + MAPSTRING reduce 23 + UNIT reduce 23 + SWITCH reduce 23 + LOCATION reduce 23 + STATTXTTBL reduce 23 + VARRAY reduce 23 + STATIC reduce 23 + CONST reduce 23 + INC reduce 23 + DEC reduce 23 + ONCE reduce 23 + IF reduce 23 + SWITCHCASE reduce 23 + WHILE reduce 23 + FOR reduce 23 + FOREACH reduce 23 + CONTINUE reduce 23 + BREAK reduce 23 + RETURN reduce 23 + ACTIONNAME reduce 23 + fdef_rettypes shift 323 State 145: (23) fdef_rettypes ::= * fdef_rettypes ::= * COLON exprList_nonEmpty - lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes + fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON - COLON shift 46 - fdef_rettypes shift 348 - {default} reduce 23 + PLUS reduce 23 + MINUS reduce 23 + BITNOT reduce 23 + LPAREN reduce 23 + LSQBRACKET reduce 23 + SEMICOLON shift 346 + SEMICOLON reduce 23 -- dropped by precedence + NAME reduce 23 + COLON shift 44 + FUNCTION reduce 23 + LBRACKET reduce 23 + VAR reduce 23 + NUMBER reduce 23 + KILLS reduce 23 + TRGCONST reduce 23 + L2V reduce 23 + MAPSTRING reduce 23 + UNIT reduce 23 + SWITCH reduce 23 + LOCATION reduce 23 + STATTXTTBL reduce 23 + VARRAY reduce 23 + STATIC reduce 23 + CONST reduce 23 + INC reduce 23 + DEC reduce 23 + ONCE reduce 23 + IF reduce 23 + SWITCHCASE reduce 23 + WHILE reduce 23 + FOR reduce 23 + FOREACH reduce 23 + CONTINUE reduce 23 + BREAK reduce 23 + RETURN reduce 23 + ACTIONNAME reduce 23 + fdef_rettypes shift 322 State 146: - constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON - constActionList ::= constActionList * constAction - (265) actionStmt ::= constActionList * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (113) commaSkippable ::= * + logicExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN - ACTIONNAME shift 229 - constAction shift 357 - {default} reduce 265 + COMMA shift 45 + RPAREN reduce 113 + commaSkippable shift 505 State 147: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - foreach_header ::= foreach_opener * nameList_nonEmpty COLON exprList_nonEmpty + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (113) commaSkippable ::= * + constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN - NAME shift 425 - nameList_nonEmpty shift 201 + COMMA shift 45 + RPAREN reduce 113 + commaSkippable shift 507 State 148: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - cdef_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (113) commaSkippable ::= * + constExpr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET - NAME shift 425 - nameList_nonEmpty shift 205 + COMMA shift 45 + RSQBRACKET reduce 113 + commaSkippable shift 499 State 149: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdefAssignStatic_stmt ::= STATIC VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + relimp_start ::= IMPORT * PERIOD + dottedName ::= * NAME + dottedName ::= * dottedName PERIOD NAME + import_chunk ::= IMPORT * dottedName AS NAME + import_chunk ::= IMPORT * dottedName - NAME shift 425 - nameList_nonEmpty shift 206 + PERIOD shift 445 + NAME shift 396 + dottedName shift 395 State 150: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdef_stmt ::= VAR * nameList_nonEmpty - vdefAssign_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_global_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 425 - nameList_nonEmpty shift 207 + NAME shift 361 + nameList_nonEmpty shift 398 State 151: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (111) commaSkippable ::= * - constExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + vdef_stmt ::= VAR * nameList_nonEmpty + vdefAssign_global_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - COMMA shift 93 - commaSkippable shift 273 - {default} reduce 111 + NAME shift 361 + nameList_nonEmpty shift 364 State 152: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (111) commaSkippable ::= * - constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + foreach_header ::= foreach_opener * nameList_nonEmpty COLON exprList_nonEmpty - COMMA shift 93 - commaSkippable shift 275 - {default} reduce 111 + NAME shift 361 + nameList_nonEmpty shift 409 State 153: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (111) commaSkippable ::= * - constExpr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + cdef_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - COMMA shift 93 - commaSkippable shift 266 - {default} reduce 111 + NAME shift 361 + nameList_nonEmpty shift 424 State 154: + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + vdefAssignStatic_stmt ::= STATIC VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + + NAME shift 361 + nameList_nonEmpty shift 426 + +State 155: + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + vdef_stmt ::= VAR * nameList_nonEmpty + vdefAssign_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + + NAME shift 361 + nameList_nonEmpty shift 388 + +State 156: numList_nonEmpty ::= * NUMBER numList_nonEmpty ::= * numList_nonEmpty COMMA NUMBER exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET * numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET - NUMBER shift 296 - numList_nonEmpty shift 208 + NUMBER shift 440 + numList_nonEmpty shift 439 -State 155: +State 157: rbracket ::= * RBRACKET blockStmt ::= blockStmtSub * rbracket - RBRACKET shift 507 - rbracket shift 506 - -State 156: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= LPAREN nonConstExpr * RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - QMARK shift 95 - LOR shift 75 - LAND shift 76 - EQ shift 82 - LE shift 80 - LT shift 78 - GE shift 79 - GT shift 77 - NE shift 81 - BITOR shift 84 - BITXOR shift 83 - BITAND shift 85 - LSHIFT shift 87 - RSHIFT shift 86 - PLUS shift 94 - MINUS shift 91 - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - RPAREN shift 484 - -State 157: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - (87) expr ::= nonConstExpr * - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - QMARK shift 95 - LOR shift 75 - LAND shift 76 - EQ shift 82 - LE shift 80 - LT shift 78 - GE shift 79 - GT shift 77 - NE shift 81 - BITOR shift 84 - BITXOR shift 83 - BITAND shift 85 - LSHIFT shift 87 - RSHIFT shift 86 - PLUS shift 94 - MINUS shift 91 - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 87 + RBRACKET shift 194 + rbracket shift 193 State 158: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - (88) fNonConstArg ::= nonConstExpr * - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - QMARK shift 95 - LOR shift 75 - LAND shift 76 - EQ shift 82 - LE shift 80 - LT shift 78 - GE shift 79 - GT shift 77 - NE shift 81 - BITOR shift 84 - BITXOR shift 83 - BITAND shift 85 - LSHIFT shift 87 - RSHIFT shift 86 - PLUS shift 94 - MINUS shift 91 - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 88 + (230) if_stmt ::= if_block else_header stmt * + + $ reduce 230 + ELSE reduce 230 + QMARK reduce 230 + COMMA reduce 230 + LOR reduce 230 + LAND reduce 230 + EQ reduce 230 + LE reduce 230 + LT reduce 230 + GE reduce 230 + GT reduce 230 + NE reduce 230 + BITOR reduce 230 + BITXOR reduce 230 + BITAND reduce 230 + LSHIFT reduce 230 + RSHIFT reduce 230 + PLUS reduce 230 + MINUS reduce 230 + DIVIDE reduce 230 + MULTIPLY reduce 230 + MOD reduce 230 + BITNOT reduce 230 + LPAREN reduce 230 + LSQBRACKET reduce 230 + PERIOD reduce 230 + SEMICOLON reduce 230 + IMPORT reduce 230 + NAME reduce 230 + COLON reduce 230 + FUNCTION reduce 230 + RPAREN reduce 230 + OBJECT reduce 230 + LBRACKET reduce 230 + VAR reduce 230 + RBRACKET reduce 230 + NUMBER reduce 230 + RSQBRACKET reduce 230 + KILLS reduce 230 + TRGCONST reduce 230 + L2V reduce 230 + MAPSTRING reduce 230 + UNIT reduce 230 + SWITCH reduce 230 + LOCATION reduce 230 + STATTXTTBL reduce 230 + VARRAY reduce 230 + STATIC reduce 230 + CONST reduce 230 + INC reduce 230 + DEC reduce 230 + ONCE reduce 230 + IF reduce 230 + SWITCHCASE reduce 230 + CASE reduce 230 + DEFAULT reduce 230 + WHILE reduce 230 + FOR reduce 230 + FOREACH reduce 230 + CONTINUE reduce 230 + BREAK reduce 230 + RETURN reduce 230 + ACTIONNAME reduce 230 State 159: - constExpr ::= LPAREN constExpr * RPAREN - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - LOR shift 67 - LAND shift 68 - EQ shift 74 - LE shift 72 - LT shift 70 - GE shift 71 - GT shift 69 - NE shift 73 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 115 - MINUS shift 109 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - RPAREN shift 427 + (277) constActionList ::= constActionList constAction * + + $ reduce 277 + ELSE reduce 277 + QMARK reduce 277 + COMMA reduce 277 + LOR reduce 277 + LAND reduce 277 + EQ reduce 277 + LE reduce 277 + LT reduce 277 + GE reduce 277 + GT reduce 277 + NE reduce 277 + BITOR reduce 277 + BITXOR reduce 277 + BITAND reduce 277 + LSHIFT reduce 277 + RSHIFT reduce 277 + PLUS reduce 277 + MINUS reduce 277 + DIVIDE reduce 277 + MULTIPLY reduce 277 + MOD reduce 277 + BITNOT reduce 277 + LPAREN reduce 277 + LSQBRACKET reduce 277 + PERIOD reduce 277 + SEMICOLON reduce 277 + IMPORT reduce 277 + NAME reduce 277 + COLON reduce 277 + FUNCTION reduce 277 + RPAREN reduce 277 + OBJECT reduce 277 + LBRACKET reduce 277 + VAR reduce 277 + RBRACKET reduce 277 + NUMBER reduce 277 + RSQBRACKET reduce 277 + KILLS reduce 277 + TRGCONST reduce 277 + L2V reduce 277 + MAPSTRING reduce 277 + UNIT reduce 277 + SWITCH reduce 277 + LOCATION reduce 277 + STATTXTTBL reduce 277 + VARRAY reduce 277 + STATIC reduce 277 + CONST reduce 277 + INC reduce 277 + DEC reduce 277 + ONCE reduce 277 + IF reduce 277 + SWITCHCASE reduce 277 + CASE reduce 277 + DEFAULT reduce 277 + WHILE reduce 277 + FOR reduce 277 + FOREACH reduce 277 + CONTINUE reduce 277 + BREAK reduce 277 + RETURN reduce 277 + ACTIONNAME reduce 277 State 160: - (89) fConstArg ::= constExpr * - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - LOR shift 67 - LAND shift 68 - EQ shift 74 - LE shift 72 - LT shift 70 - GE shift 71 - GT shift 69 - NE shift 73 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 115 - MINUS shift 109 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 89 + (278) actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 278 + ELSE reduce 278 + QMARK reduce 278 + COMMA reduce 278 + LOR reduce 278 + LAND reduce 278 + EQ reduce 278 + LE reduce 278 + LT reduce 278 + GE reduce 278 + GT reduce 278 + NE reduce 278 + BITOR reduce 278 + BITXOR reduce 278 + BITAND reduce 278 + LSHIFT reduce 278 + RSHIFT reduce 278 + PLUS reduce 278 + MINUS reduce 278 + DIVIDE reduce 278 + MULTIPLY reduce 278 + MOD reduce 278 + BITNOT reduce 278 + LPAREN reduce 278 + LSQBRACKET reduce 278 + PERIOD reduce 278 + SEMICOLON reduce 278 + IMPORT reduce 278 + NAME reduce 278 + COLON reduce 278 + FUNCTION reduce 278 + RPAREN reduce 278 + OBJECT reduce 278 + LBRACKET reduce 278 + VAR reduce 278 + RBRACKET reduce 278 + NUMBER reduce 278 + RSQBRACKET reduce 278 + KILLS reduce 278 + TRGCONST reduce 278 + L2V reduce 278 + MAPSTRING reduce 278 + UNIT reduce 278 + SWITCH reduce 278 + LOCATION reduce 278 + STATTXTTBL reduce 278 + VARRAY reduce 278 + STATIC reduce 278 + CONST reduce 278 + INC reduce 278 + DEC reduce 278 + ONCE reduce 278 + IF reduce 278 + SWITCHCASE reduce 278 + CASE reduce 278 + DEFAULT reduce 278 + WHILE reduce 278 + FOR reduce 278 + FOREACH reduce 278 + CONTINUE reduce 278 + BREAK reduce 278 + RETURN reduce 278 + ACTIONNAME reduce 278 State 161: - (86) expr ::= constExpr * + (276) constActionList ::= constAction * + + $ reduce 276 + ELSE reduce 276 + QMARK reduce 276 + COMMA reduce 276 + LOR reduce 276 + LAND reduce 276 + EQ reduce 276 + LE reduce 276 + LT reduce 276 + GE reduce 276 + GT reduce 276 + NE reduce 276 + BITOR reduce 276 + BITXOR reduce 276 + BITAND reduce 276 + LSHIFT reduce 276 + RSHIFT reduce 276 + PLUS reduce 276 + MINUS reduce 276 + DIVIDE reduce 276 + MULTIPLY reduce 276 + MOD reduce 276 + BITNOT reduce 276 + LPAREN reduce 276 + LSQBRACKET reduce 276 + PERIOD reduce 276 + SEMICOLON reduce 276 + IMPORT reduce 276 + NAME reduce 276 + COLON reduce 276 + FUNCTION reduce 276 + RPAREN reduce 276 + OBJECT reduce 276 + LBRACKET reduce 276 + VAR reduce 276 + RBRACKET reduce 276 + NUMBER reduce 276 + RSQBRACKET reduce 276 + KILLS reduce 276 + TRGCONST reduce 276 + L2V reduce 276 + MAPSTRING reduce 276 + UNIT reduce 276 + SWITCH reduce 276 + LOCATION reduce 276 + STATTXTTBL reduce 276 + VARRAY reduce 276 + STATIC reduce 276 + CONST reduce 276 + INC reduce 276 + DEC reduce 276 + ONCE reduce 276 + IF reduce 276 + SWITCHCASE reduce 276 + CASE reduce 276 + DEFAULT reduce 276 + WHILE reduce 276 + FOR reduce 276 + FOREACH reduce 276 + CONTINUE reduce 276 + BREAK reduce 276 + RETURN reduce 276 + ACTIONNAME reduce 276 + +State 162: + (275) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * + + $ reduce 275 + ELSE reduce 275 + QMARK reduce 275 + COMMA reduce 275 + LOR reduce 275 + LAND reduce 275 + EQ reduce 275 + LE reduce 275 + LT reduce 275 + GE reduce 275 + GT reduce 275 + NE reduce 275 + BITOR reduce 275 + BITXOR reduce 275 + BITAND reduce 275 + LSHIFT reduce 275 + RSHIFT reduce 275 + PLUS reduce 275 + MINUS reduce 275 + DIVIDE reduce 275 + MULTIPLY reduce 275 + MOD reduce 275 + BITNOT reduce 275 + LPAREN reduce 275 + LSQBRACKET reduce 275 + PERIOD reduce 275 + SEMICOLON reduce 275 + IMPORT reduce 275 + NAME reduce 275 + COLON reduce 275 + FUNCTION reduce 275 + RPAREN reduce 275 + OBJECT reduce 275 + LBRACKET reduce 275 + VAR reduce 275 + RBRACKET reduce 275 + NUMBER reduce 275 + RSQBRACKET reduce 275 + KILLS reduce 275 + TRGCONST reduce 275 + L2V reduce 275 + MAPSTRING reduce 275 + UNIT reduce 275 + SWITCH reduce 275 + LOCATION reduce 275 + STATTXTTBL reduce 275 + VARRAY reduce 275 + STATIC reduce 275 + CONST reduce 275 + INC reduce 275 + DEC reduce 275 + ONCE reduce 275 + IF reduce 275 + SWITCHCASE reduce 275 + CASE reduce 275 + DEFAULT reduce 275 + WHILE reduce 275 + FOR reduce 275 + FOREACH reduce 275 + CONTINUE reduce 275 + BREAK reduce 275 + RETURN reduce 275 + ACTIONNAME reduce 275 + +State 163: + (273) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 273 + ELSE reduce 273 + QMARK reduce 273 + COMMA reduce 273 + LOR reduce 273 + LAND reduce 273 + EQ reduce 273 + LE reduce 273 + LT reduce 273 + GE reduce 273 + GT reduce 273 + NE reduce 273 + BITOR reduce 273 + BITXOR reduce 273 + BITAND reduce 273 + LSHIFT reduce 273 + RSHIFT reduce 273 + PLUS reduce 273 + MINUS reduce 273 + DIVIDE reduce 273 + MULTIPLY reduce 273 + MOD reduce 273 + BITNOT reduce 273 + LPAREN reduce 273 + LSQBRACKET reduce 273 + PERIOD reduce 273 + SEMICOLON reduce 273 + IMPORT reduce 273 + NAME reduce 273 + COLON reduce 273 + FUNCTION reduce 273 + RPAREN reduce 273 + OBJECT reduce 273 + LBRACKET reduce 273 + VAR reduce 273 + RBRACKET reduce 273 + NUMBER reduce 273 + RSQBRACKET reduce 273 + KILLS reduce 273 + TRGCONST reduce 273 + L2V reduce 273 + MAPSTRING reduce 273 + UNIT reduce 273 + SWITCH reduce 273 + LOCATION reduce 273 + STATTXTTBL reduce 273 + VARRAY reduce 273 + STATIC reduce 273 + CONST reduce 273 + INC reduce 273 + DEC reduce 273 + ONCE reduce 273 + IF reduce 273 + SWITCHCASE reduce 273 + CASE reduce 273 + DEFAULT reduce 273 + WHILE reduce 273 + FOR reduce 273 + FOREACH reduce 273 + CONTINUE reduce 273 + BREAK reduce 273 + RETURN reduce 273 + ACTIONNAME reduce 273 + +State 164: + (274) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 274 + ELSE reduce 274 + QMARK reduce 274 + COMMA reduce 274 + LOR reduce 274 + LAND reduce 274 + EQ reduce 274 + LE reduce 274 + LT reduce 274 + GE reduce 274 + GT reduce 274 + NE reduce 274 + BITOR reduce 274 + BITXOR reduce 274 + BITAND reduce 274 + LSHIFT reduce 274 + RSHIFT reduce 274 + PLUS reduce 274 + MINUS reduce 274 + DIVIDE reduce 274 + MULTIPLY reduce 274 + MOD reduce 274 + BITNOT reduce 274 + LPAREN reduce 274 + LSQBRACKET reduce 274 + PERIOD reduce 274 + SEMICOLON reduce 274 + IMPORT reduce 274 + NAME reduce 274 + COLON reduce 274 + FUNCTION reduce 274 + RPAREN reduce 274 + OBJECT reduce 274 + LBRACKET reduce 274 + VAR reduce 274 + RBRACKET reduce 274 + NUMBER reduce 274 + RSQBRACKET reduce 274 + KILLS reduce 274 + TRGCONST reduce 274 + L2V reduce 274 + MAPSTRING reduce 274 + UNIT reduce 274 + SWITCH reduce 274 + LOCATION reduce 274 + STATTXTTBL reduce 274 + VARRAY reduce 274 + STATIC reduce 274 + CONST reduce 274 + INC reduce 274 + DEC reduce 274 + ONCE reduce 274 + IF reduce 274 + SWITCHCASE reduce 274 + CASE reduce 274 + DEFAULT reduce 274 + WHILE reduce 274 + FOR reduce 274 + FOREACH reduce 274 + CONTINUE reduce 274 + BREAK reduce 274 + RETURN reduce 274 + ACTIONNAME reduce 274 + +State 165: + (267) foreach_stmt ::= foreach_header RPAREN stmt * + + $ reduce 267 + ELSE reduce 267 + QMARK reduce 267 + COMMA reduce 267 + LOR reduce 267 + LAND reduce 267 + EQ reduce 267 + LE reduce 267 + LT reduce 267 + GE reduce 267 + GT reduce 267 + NE reduce 267 + BITOR reduce 267 + BITXOR reduce 267 + BITAND reduce 267 + LSHIFT reduce 267 + RSHIFT reduce 267 + PLUS reduce 267 + MINUS reduce 267 + DIVIDE reduce 267 + MULTIPLY reduce 267 + MOD reduce 267 + BITNOT reduce 267 + LPAREN reduce 267 + LSQBRACKET reduce 267 + PERIOD reduce 267 + SEMICOLON reduce 267 + IMPORT reduce 267 + NAME reduce 267 + COLON reduce 267 + FUNCTION reduce 267 + RPAREN reduce 267 + OBJECT reduce 267 + LBRACKET reduce 267 + VAR reduce 267 + RBRACKET reduce 267 + NUMBER reduce 267 + RSQBRACKET reduce 267 + KILLS reduce 267 + TRGCONST reduce 267 + L2V reduce 267 + MAPSTRING reduce 267 + UNIT reduce 267 + SWITCH reduce 267 + LOCATION reduce 267 + STATTXTTBL reduce 267 + VARRAY reduce 267 + STATIC reduce 267 + CONST reduce 267 + INC reduce 267 + DEC reduce 267 + ONCE reduce 267 + IF reduce 267 + SWITCHCASE reduce 267 + CASE reduce 267 + DEFAULT reduce 267 + WHILE reduce 267 + FOR reduce 267 + FOREACH reduce 267 + CONTINUE reduce 267 + BREAK reduce 267 + RETURN reduce 267 + ACTIONNAME reduce 267 + +State 166: + (264) for_stmt ::= for_header RPAREN stmt * + + $ reduce 264 + ELSE reduce 264 + QMARK reduce 264 + COMMA reduce 264 + LOR reduce 264 + LAND reduce 264 + EQ reduce 264 + LE reduce 264 + LT reduce 264 + GE reduce 264 + GT reduce 264 + NE reduce 264 + BITOR reduce 264 + BITXOR reduce 264 + BITAND reduce 264 + LSHIFT reduce 264 + RSHIFT reduce 264 + PLUS reduce 264 + MINUS reduce 264 + DIVIDE reduce 264 + MULTIPLY reduce 264 + MOD reduce 264 + BITNOT reduce 264 + LPAREN reduce 264 + LSQBRACKET reduce 264 + PERIOD reduce 264 + SEMICOLON reduce 264 + IMPORT reduce 264 + NAME reduce 264 + COLON reduce 264 + FUNCTION reduce 264 + RPAREN reduce 264 + OBJECT reduce 264 + LBRACKET reduce 264 + VAR reduce 264 + RBRACKET reduce 264 + NUMBER reduce 264 + RSQBRACKET reduce 264 + KILLS reduce 264 + TRGCONST reduce 264 + L2V reduce 264 + MAPSTRING reduce 264 + UNIT reduce 264 + SWITCH reduce 264 + LOCATION reduce 264 + STATTXTTBL reduce 264 + VARRAY reduce 264 + STATIC reduce 264 + CONST reduce 264 + INC reduce 264 + DEC reduce 264 + ONCE reduce 264 + IF reduce 264 + SWITCHCASE reduce 264 + CASE reduce 264 + DEFAULT reduce 264 + WHILE reduce 264 + FOR reduce 264 + FOREACH reduce 264 + CONTINUE reduce 264 + BREAK reduce 264 + RETURN reduce 264 + ACTIONNAME reduce 264 + +State 167: + (247) while_stmt ::= while_header RPAREN stmt * + + $ reduce 247 + ELSE reduce 247 + QMARK reduce 247 + COMMA reduce 247 + LOR reduce 247 + LAND reduce 247 + EQ reduce 247 + LE reduce 247 + LT reduce 247 + GE reduce 247 + GT reduce 247 + NE reduce 247 + BITOR reduce 247 + BITXOR reduce 247 + BITAND reduce 247 + LSHIFT reduce 247 + RSHIFT reduce 247 + PLUS reduce 247 + MINUS reduce 247 + DIVIDE reduce 247 + MULTIPLY reduce 247 + MOD reduce 247 + BITNOT reduce 247 + LPAREN reduce 247 + LSQBRACKET reduce 247 + PERIOD reduce 247 + SEMICOLON reduce 247 + IMPORT reduce 247 + NAME reduce 247 + COLON reduce 247 + FUNCTION reduce 247 + RPAREN reduce 247 + OBJECT reduce 247 + LBRACKET reduce 247 + VAR reduce 247 + RBRACKET reduce 247 + NUMBER reduce 247 + RSQBRACKET reduce 247 + KILLS reduce 247 + TRGCONST reduce 247 + L2V reduce 247 + MAPSTRING reduce 247 + UNIT reduce 247 + SWITCH reduce 247 + LOCATION reduce 247 + STATTXTTBL reduce 247 + VARRAY reduce 247 + STATIC reduce 247 + CONST reduce 247 + INC reduce 247 + DEC reduce 247 + ONCE reduce 247 + IF reduce 247 + SWITCHCASE reduce 247 + CASE reduce 247 + DEFAULT reduce 247 + WHILE reduce 247 + FOR reduce 247 + FOREACH reduce 247 + CONTINUE reduce 247 + BREAK reduce 247 + RETURN reduce 247 + ACTIONNAME reduce 247 + +State 168: + (244) switchcase_stmt ::= switchcase_block RBRACKET * + + $ reduce 244 + ELSE reduce 244 + QMARK reduce 244 + COMMA reduce 244 + LOR reduce 244 + LAND reduce 244 + EQ reduce 244 + LE reduce 244 + LT reduce 244 + GE reduce 244 + GT reduce 244 + NE reduce 244 + BITOR reduce 244 + BITXOR reduce 244 + BITAND reduce 244 + LSHIFT reduce 244 + RSHIFT reduce 244 + PLUS reduce 244 + MINUS reduce 244 + DIVIDE reduce 244 + MULTIPLY reduce 244 + MOD reduce 244 + BITNOT reduce 244 + LPAREN reduce 244 + LSQBRACKET reduce 244 + PERIOD reduce 244 + SEMICOLON reduce 244 + IMPORT reduce 244 + NAME reduce 244 + COLON reduce 244 + FUNCTION reduce 244 + RPAREN reduce 244 + OBJECT reduce 244 + LBRACKET reduce 244 + VAR reduce 244 + RBRACKET reduce 244 + NUMBER reduce 244 + RSQBRACKET reduce 244 + KILLS reduce 244 + TRGCONST reduce 244 + L2V reduce 244 + MAPSTRING reduce 244 + UNIT reduce 244 + SWITCH reduce 244 + LOCATION reduce 244 + STATTXTTBL reduce 244 + VARRAY reduce 244 + STATIC reduce 244 + CONST reduce 244 + INC reduce 244 + DEC reduce 244 + ONCE reduce 244 + IF reduce 244 + SWITCHCASE reduce 244 + CASE reduce 244 + DEFAULT reduce 244 + WHILE reduce 244 + FOR reduce 244 + FOREACH reduce 244 + CONTINUE reduce 244 + BREAK reduce 244 + RETURN reduce 244 + ACTIONNAME reduce 244 + +State 169: + (227) if_block ::= if_block elif_header RPAREN stmt * + + $ reduce 227 + ELSE reduce 227 + QMARK reduce 227 + COMMA reduce 227 + LOR reduce 227 + LAND reduce 227 + EQ reduce 227 + LE reduce 227 + LT reduce 227 + GE reduce 227 + GT reduce 227 + NE reduce 227 + BITOR reduce 227 + BITXOR reduce 227 + BITAND reduce 227 + LSHIFT reduce 227 + RSHIFT reduce 227 + PLUS reduce 227 + MINUS reduce 227 + DIVIDE reduce 227 + MULTIPLY reduce 227 + MOD reduce 227 + BITNOT reduce 227 + LPAREN reduce 227 + LSQBRACKET reduce 227 + PERIOD reduce 227 + SEMICOLON reduce 227 + IMPORT reduce 227 + NAME reduce 227 + COLON reduce 227 + FUNCTION reduce 227 + RPAREN reduce 227 + OBJECT reduce 227 + LBRACKET reduce 227 + VAR reduce 227 + RBRACKET reduce 227 + NUMBER reduce 227 + RSQBRACKET reduce 227 + KILLS reduce 227 + TRGCONST reduce 227 + L2V reduce 227 + MAPSTRING reduce 227 + UNIT reduce 227 + SWITCH reduce 227 + LOCATION reduce 227 + STATTXTTBL reduce 227 + VARRAY reduce 227 + STATIC reduce 227 + CONST reduce 227 + INC reduce 227 + DEC reduce 227 + ONCE reduce 227 + IF reduce 227 + SWITCHCASE reduce 227 + CASE reduce 227 + DEFAULT reduce 227 + WHILE reduce 227 + FOR reduce 227 + FOREACH reduce 227 + CONTINUE reduce 227 + BREAK reduce 227 + RETURN reduce 227 + ACTIONNAME reduce 227 + +State 170: + (224) if_block ::= if_header RPAREN stmt * + + $ reduce 224 + ELSE reduce 224 + QMARK reduce 224 + COMMA reduce 224 + LOR reduce 224 + LAND reduce 224 + EQ reduce 224 + LE reduce 224 + LT reduce 224 + GE reduce 224 + GT reduce 224 + NE reduce 224 + BITOR reduce 224 + BITXOR reduce 224 + BITAND reduce 224 + LSHIFT reduce 224 + RSHIFT reduce 224 + PLUS reduce 224 + MINUS reduce 224 + DIVIDE reduce 224 + MULTIPLY reduce 224 + MOD reduce 224 + BITNOT reduce 224 + LPAREN reduce 224 + LSQBRACKET reduce 224 + PERIOD reduce 224 + SEMICOLON reduce 224 + IMPORT reduce 224 + NAME reduce 224 + COLON reduce 224 + FUNCTION reduce 224 + RPAREN reduce 224 + OBJECT reduce 224 + LBRACKET reduce 224 + VAR reduce 224 + RBRACKET reduce 224 + NUMBER reduce 224 + RSQBRACKET reduce 224 + KILLS reduce 224 + TRGCONST reduce 224 + L2V reduce 224 + MAPSTRING reduce 224 + UNIT reduce 224 + SWITCH reduce 224 + LOCATION reduce 224 + STATTXTTBL reduce 224 + VARRAY reduce 224 + STATIC reduce 224 + CONST reduce 224 + INC reduce 224 + DEC reduce 224 + ONCE reduce 224 + IF reduce 224 + SWITCHCASE reduce 224 + CASE reduce 224 + DEFAULT reduce 224 + WHILE reduce 224 + FOR reduce 224 + FOREACH reduce 224 + CONTINUE reduce 224 + BREAK reduce 224 + RETURN reduce 224 + ACTIONNAME reduce 224 + +State 171: + (221) once_stmt ::= once_block * + + $ reduce 221 + ELSE reduce 221 + QMARK reduce 221 + COMMA reduce 221 + LOR reduce 221 + LAND reduce 221 + EQ reduce 221 + LE reduce 221 + LT reduce 221 + GE reduce 221 + GT reduce 221 + NE reduce 221 + BITOR reduce 221 + BITXOR reduce 221 + BITAND reduce 221 + LSHIFT reduce 221 + RSHIFT reduce 221 + PLUS reduce 221 + MINUS reduce 221 + DIVIDE reduce 221 + MULTIPLY reduce 221 + MOD reduce 221 + BITNOT reduce 221 + LPAREN reduce 221 + LSQBRACKET reduce 221 + PERIOD reduce 221 + SEMICOLON reduce 221 + IMPORT reduce 221 + NAME reduce 221 + COLON reduce 221 + FUNCTION reduce 221 + RPAREN reduce 221 + OBJECT reduce 221 + LBRACKET reduce 221 + VAR reduce 221 + RBRACKET reduce 221 + NUMBER reduce 221 + RSQBRACKET reduce 221 + KILLS reduce 221 + TRGCONST reduce 221 + L2V reduce 221 + MAPSTRING reduce 221 + UNIT reduce 221 + SWITCH reduce 221 + LOCATION reduce 221 + STATTXTTBL reduce 221 + VARRAY reduce 221 + STATIC reduce 221 + CONST reduce 221 + INC reduce 221 + DEC reduce 221 + ONCE reduce 221 + IF reduce 221 + SWITCHCASE reduce 221 + CASE reduce 221 + DEFAULT reduce 221 + WHILE reduce 221 + FOR reduce 221 + FOREACH reduce 221 + CONTINUE reduce 221 + BREAK reduce 221 + RETURN reduce 221 + ACTIONNAME reduce 221 + +State 172: + (220) once_block ::= once_nocond stmt * + + $ reduce 220 + ELSE reduce 220 + QMARK reduce 220 + COMMA reduce 220 + LOR reduce 220 + LAND reduce 220 + EQ reduce 220 + LE reduce 220 + LT reduce 220 + GE reduce 220 + GT reduce 220 + NE reduce 220 + BITOR reduce 220 + BITXOR reduce 220 + BITAND reduce 220 + LSHIFT reduce 220 + RSHIFT reduce 220 + PLUS reduce 220 + MINUS reduce 220 + DIVIDE reduce 220 + MULTIPLY reduce 220 + MOD reduce 220 + BITNOT reduce 220 + LPAREN reduce 220 + LSQBRACKET reduce 220 + PERIOD reduce 220 + SEMICOLON reduce 220 + IMPORT reduce 220 + NAME reduce 220 + COLON reduce 220 + FUNCTION reduce 220 + RPAREN reduce 220 + OBJECT reduce 220 + LBRACKET reduce 220 + VAR reduce 220 + RBRACKET reduce 220 + NUMBER reduce 220 + RSQBRACKET reduce 220 + KILLS reduce 220 + TRGCONST reduce 220 + L2V reduce 220 + MAPSTRING reduce 220 + UNIT reduce 220 + SWITCH reduce 220 + LOCATION reduce 220 + STATTXTTBL reduce 220 + VARRAY reduce 220 + STATIC reduce 220 + CONST reduce 220 + INC reduce 220 + DEC reduce 220 + ONCE reduce 220 + IF reduce 220 + SWITCHCASE reduce 220 + CASE reduce 220 + DEFAULT reduce 220 + WHILE reduce 220 + FOR reduce 220 + FOREACH reduce 220 + CONTINUE reduce 220 + BREAK reduce 220 + RETURN reduce 220 + ACTIONNAME reduce 220 + +State 173: + (218) once_block ::= once_header RPAREN stmt * + + $ reduce 218 + ELSE reduce 218 + QMARK reduce 218 + COMMA reduce 218 + LOR reduce 218 + LAND reduce 218 + EQ reduce 218 + LE reduce 218 + LT reduce 218 + GE reduce 218 + GT reduce 218 + NE reduce 218 + BITOR reduce 218 + BITXOR reduce 218 + BITAND reduce 218 + LSHIFT reduce 218 + RSHIFT reduce 218 + PLUS reduce 218 + MINUS reduce 218 + DIVIDE reduce 218 + MULTIPLY reduce 218 + MOD reduce 218 + BITNOT reduce 218 + LPAREN reduce 218 + LSQBRACKET reduce 218 + PERIOD reduce 218 + SEMICOLON reduce 218 + IMPORT reduce 218 + NAME reduce 218 + COLON reduce 218 + FUNCTION reduce 218 + RPAREN reduce 218 + OBJECT reduce 218 + LBRACKET reduce 218 + VAR reduce 218 + RBRACKET reduce 218 + NUMBER reduce 218 + RSQBRACKET reduce 218 + KILLS reduce 218 + TRGCONST reduce 218 + L2V reduce 218 + MAPSTRING reduce 218 + UNIT reduce 218 + SWITCH reduce 218 + LOCATION reduce 218 + STATTXTTBL reduce 218 + VARRAY reduce 218 + STATIC reduce 218 + CONST reduce 218 + INC reduce 218 + DEC reduce 218 + ONCE reduce 218 + IF reduce 218 + SWITCHCASE reduce 218 + CASE reduce 218 + DEFAULT reduce 218 + WHILE reduce 218 + FOR reduce 218 + FOREACH reduce 218 + CONTINUE reduce 218 + BREAK reduce 218 + RETURN reduce 218 + ACTIONNAME reduce 218 + +State 174: + (59) bodyStmt ::= return_stmt SEMICOLON * + + $ reduce 59 + ELSE reduce 59 + QMARK reduce 59 + COMMA reduce 59 + LOR reduce 59 + LAND reduce 59 + EQ reduce 59 + LE reduce 59 + LT reduce 59 + GE reduce 59 + GT reduce 59 + NE reduce 59 + BITOR reduce 59 + BITXOR reduce 59 + BITAND reduce 59 + LSHIFT reduce 59 + RSHIFT reduce 59 + PLUS reduce 59 + MINUS reduce 59 + DIVIDE reduce 59 + MULTIPLY reduce 59 + MOD reduce 59 + BITNOT reduce 59 + LPAREN reduce 59 + LSQBRACKET reduce 59 + PERIOD reduce 59 + SEMICOLON reduce 59 + IMPORT reduce 59 + NAME reduce 59 + COLON reduce 59 + FUNCTION reduce 59 + RPAREN reduce 59 + OBJECT reduce 59 + LBRACKET reduce 59 + VAR reduce 59 + RBRACKET reduce 59 + NUMBER reduce 59 + RSQBRACKET reduce 59 + KILLS reduce 59 + TRGCONST reduce 59 + L2V reduce 59 + MAPSTRING reduce 59 + UNIT reduce 59 + SWITCH reduce 59 + LOCATION reduce 59 + STATTXTTBL reduce 59 + VARRAY reduce 59 + STATIC reduce 59 + CONST reduce 59 + INC reduce 59 + DEC reduce 59 + ONCE reduce 59 + IF reduce 59 + SWITCHCASE reduce 59 + CASE reduce 59 + DEFAULT reduce 59 + WHILE reduce 59 + FOR reduce 59 + FOREACH reduce 59 + CONTINUE reduce 59 + BREAK reduce 59 + RETURN reduce 59 + ACTIONNAME reduce 59 + +State 175: + (58) bodyStmt ::= break_stmt SEMICOLON * + + $ reduce 58 + ELSE reduce 58 + QMARK reduce 58 + COMMA reduce 58 + LOR reduce 58 + LAND reduce 58 + EQ reduce 58 + LE reduce 58 + LT reduce 58 + GE reduce 58 + GT reduce 58 + NE reduce 58 + BITOR reduce 58 + BITXOR reduce 58 + BITAND reduce 58 + LSHIFT reduce 58 + RSHIFT reduce 58 + PLUS reduce 58 + MINUS reduce 58 + DIVIDE reduce 58 + MULTIPLY reduce 58 + MOD reduce 58 + BITNOT reduce 58 + LPAREN reduce 58 + LSQBRACKET reduce 58 + PERIOD reduce 58 + SEMICOLON reduce 58 + IMPORT reduce 58 + NAME reduce 58 + COLON reduce 58 + FUNCTION reduce 58 + RPAREN reduce 58 + OBJECT reduce 58 + LBRACKET reduce 58 + VAR reduce 58 + RBRACKET reduce 58 + NUMBER reduce 58 + RSQBRACKET reduce 58 + KILLS reduce 58 + TRGCONST reduce 58 + L2V reduce 58 + MAPSTRING reduce 58 + UNIT reduce 58 + SWITCH reduce 58 + LOCATION reduce 58 + STATTXTTBL reduce 58 + VARRAY reduce 58 + STATIC reduce 58 + CONST reduce 58 + INC reduce 58 + DEC reduce 58 + ONCE reduce 58 + IF reduce 58 + SWITCHCASE reduce 58 + CASE reduce 58 + DEFAULT reduce 58 + WHILE reduce 58 + FOR reduce 58 + FOREACH reduce 58 + CONTINUE reduce 58 + BREAK reduce 58 + RETURN reduce 58 + ACTIONNAME reduce 58 + +State 176: + (57) bodyStmt ::= continue_stmt SEMICOLON * + + $ reduce 57 + ELSE reduce 57 + QMARK reduce 57 + COMMA reduce 57 + LOR reduce 57 + LAND reduce 57 + EQ reduce 57 + LE reduce 57 + LT reduce 57 + GE reduce 57 + GT reduce 57 + NE reduce 57 + BITOR reduce 57 + BITXOR reduce 57 + BITAND reduce 57 + LSHIFT reduce 57 + RSHIFT reduce 57 + PLUS reduce 57 + MINUS reduce 57 + DIVIDE reduce 57 + MULTIPLY reduce 57 + MOD reduce 57 + BITNOT reduce 57 + LPAREN reduce 57 + LSQBRACKET reduce 57 + PERIOD reduce 57 + SEMICOLON reduce 57 + IMPORT reduce 57 + NAME reduce 57 + COLON reduce 57 + FUNCTION reduce 57 + RPAREN reduce 57 + OBJECT reduce 57 + LBRACKET reduce 57 + VAR reduce 57 + RBRACKET reduce 57 + NUMBER reduce 57 + RSQBRACKET reduce 57 + KILLS reduce 57 + TRGCONST reduce 57 + L2V reduce 57 + MAPSTRING reduce 57 + UNIT reduce 57 + SWITCH reduce 57 + LOCATION reduce 57 + STATTXTTBL reduce 57 + VARRAY reduce 57 + STATIC reduce 57 + CONST reduce 57 + INC reduce 57 + DEC reduce 57 + ONCE reduce 57 + IF reduce 57 + SWITCHCASE reduce 57 + CASE reduce 57 + DEFAULT reduce 57 + WHILE reduce 57 + FOR reduce 57 + FOREACH reduce 57 + CONTINUE reduce 57 + BREAK reduce 57 + RETURN reduce 57 + ACTIONNAME reduce 57 + +State 177: + (56) bodyStmt ::= switchcase_stmt * + + $ reduce 56 + ELSE reduce 56 + QMARK reduce 56 + COMMA reduce 56 + LOR reduce 56 + LAND reduce 56 + EQ reduce 56 + LE reduce 56 + LT reduce 56 + GE reduce 56 + GT reduce 56 + NE reduce 56 + BITOR reduce 56 + BITXOR reduce 56 + BITAND reduce 56 + LSHIFT reduce 56 + RSHIFT reduce 56 + PLUS reduce 56 + MINUS reduce 56 + DIVIDE reduce 56 + MULTIPLY reduce 56 + MOD reduce 56 + BITNOT reduce 56 + LPAREN reduce 56 + LSQBRACKET reduce 56 + PERIOD reduce 56 + SEMICOLON reduce 56 + IMPORT reduce 56 + NAME reduce 56 + COLON reduce 56 + FUNCTION reduce 56 + RPAREN reduce 56 + OBJECT reduce 56 + LBRACKET reduce 56 + VAR reduce 56 + RBRACKET reduce 56 + NUMBER reduce 56 + RSQBRACKET reduce 56 + KILLS reduce 56 + TRGCONST reduce 56 + L2V reduce 56 + MAPSTRING reduce 56 + UNIT reduce 56 + SWITCH reduce 56 + LOCATION reduce 56 + STATTXTTBL reduce 56 + VARRAY reduce 56 + STATIC reduce 56 + CONST reduce 56 + INC reduce 56 + DEC reduce 56 + ONCE reduce 56 + IF reduce 56 + SWITCHCASE reduce 56 + CASE reduce 56 + DEFAULT reduce 56 + WHILE reduce 56 + FOR reduce 56 + FOREACH reduce 56 + CONTINUE reduce 56 + BREAK reduce 56 + RETURN reduce 56 + ACTIONNAME reduce 56 + +State 178: + (55) bodyStmt ::= foreach_stmt * + + $ reduce 55 + ELSE reduce 55 + QMARK reduce 55 + COMMA reduce 55 + LOR reduce 55 + LAND reduce 55 + EQ reduce 55 + LE reduce 55 + LT reduce 55 + GE reduce 55 + GT reduce 55 + NE reduce 55 + BITOR reduce 55 + BITXOR reduce 55 + BITAND reduce 55 + LSHIFT reduce 55 + RSHIFT reduce 55 + PLUS reduce 55 + MINUS reduce 55 + DIVIDE reduce 55 + MULTIPLY reduce 55 + MOD reduce 55 + BITNOT reduce 55 + LPAREN reduce 55 + LSQBRACKET reduce 55 + PERIOD reduce 55 + SEMICOLON reduce 55 + IMPORT reduce 55 + NAME reduce 55 + COLON reduce 55 + FUNCTION reduce 55 + RPAREN reduce 55 + OBJECT reduce 55 + LBRACKET reduce 55 + VAR reduce 55 + RBRACKET reduce 55 + NUMBER reduce 55 + RSQBRACKET reduce 55 + KILLS reduce 55 + TRGCONST reduce 55 + L2V reduce 55 + MAPSTRING reduce 55 + UNIT reduce 55 + SWITCH reduce 55 + LOCATION reduce 55 + STATTXTTBL reduce 55 + VARRAY reduce 55 + STATIC reduce 55 + CONST reduce 55 + INC reduce 55 + DEC reduce 55 + ONCE reduce 55 + IF reduce 55 + SWITCHCASE reduce 55 + CASE reduce 55 + DEFAULT reduce 55 + WHILE reduce 55 + FOR reduce 55 + FOREACH reduce 55 + CONTINUE reduce 55 + BREAK reduce 55 + RETURN reduce 55 + ACTIONNAME reduce 55 + +State 179: + (54) bodyStmt ::= for_stmt * + + $ reduce 54 + ELSE reduce 54 + QMARK reduce 54 + COMMA reduce 54 + LOR reduce 54 + LAND reduce 54 + EQ reduce 54 + LE reduce 54 + LT reduce 54 + GE reduce 54 + GT reduce 54 + NE reduce 54 + BITOR reduce 54 + BITXOR reduce 54 + BITAND reduce 54 + LSHIFT reduce 54 + RSHIFT reduce 54 + PLUS reduce 54 + MINUS reduce 54 + DIVIDE reduce 54 + MULTIPLY reduce 54 + MOD reduce 54 + BITNOT reduce 54 + LPAREN reduce 54 + LSQBRACKET reduce 54 + PERIOD reduce 54 + SEMICOLON reduce 54 + IMPORT reduce 54 + NAME reduce 54 + COLON reduce 54 + FUNCTION reduce 54 + RPAREN reduce 54 + OBJECT reduce 54 + LBRACKET reduce 54 + VAR reduce 54 + RBRACKET reduce 54 + NUMBER reduce 54 + RSQBRACKET reduce 54 + KILLS reduce 54 + TRGCONST reduce 54 + L2V reduce 54 + MAPSTRING reduce 54 + UNIT reduce 54 + SWITCH reduce 54 + LOCATION reduce 54 + STATTXTTBL reduce 54 + VARRAY reduce 54 + STATIC reduce 54 + CONST reduce 54 + INC reduce 54 + DEC reduce 54 + ONCE reduce 54 + IF reduce 54 + SWITCHCASE reduce 54 + CASE reduce 54 + DEFAULT reduce 54 + WHILE reduce 54 + FOR reduce 54 + FOREACH reduce 54 + CONTINUE reduce 54 + BREAK reduce 54 + RETURN reduce 54 + ACTIONNAME reduce 54 + +State 180: + (53) bodyStmt ::= while_stmt * + + $ reduce 53 + ELSE reduce 53 + QMARK reduce 53 + COMMA reduce 53 + LOR reduce 53 + LAND reduce 53 + EQ reduce 53 + LE reduce 53 + LT reduce 53 + GE reduce 53 + GT reduce 53 + NE reduce 53 + BITOR reduce 53 + BITXOR reduce 53 + BITAND reduce 53 + LSHIFT reduce 53 + RSHIFT reduce 53 + PLUS reduce 53 + MINUS reduce 53 + DIVIDE reduce 53 + MULTIPLY reduce 53 + MOD reduce 53 + BITNOT reduce 53 + LPAREN reduce 53 + LSQBRACKET reduce 53 + PERIOD reduce 53 + SEMICOLON reduce 53 + IMPORT reduce 53 + NAME reduce 53 + COLON reduce 53 + FUNCTION reduce 53 + RPAREN reduce 53 + OBJECT reduce 53 + LBRACKET reduce 53 + VAR reduce 53 + RBRACKET reduce 53 + NUMBER reduce 53 + RSQBRACKET reduce 53 + KILLS reduce 53 + TRGCONST reduce 53 + L2V reduce 53 + MAPSTRING reduce 53 + UNIT reduce 53 + SWITCH reduce 53 + LOCATION reduce 53 + STATTXTTBL reduce 53 + VARRAY reduce 53 + STATIC reduce 53 + CONST reduce 53 + INC reduce 53 + DEC reduce 53 + ONCE reduce 53 + IF reduce 53 + SWITCHCASE reduce 53 + CASE reduce 53 + DEFAULT reduce 53 + WHILE reduce 53 + FOR reduce 53 + FOREACH reduce 53 + CONTINUE reduce 53 + BREAK reduce 53 + RETURN reduce 53 + ACTIONNAME reduce 53 + +State 181: + (52) bodyStmt ::= if_stmt * + + $ reduce 52 + ELSE reduce 52 + QMARK reduce 52 + COMMA reduce 52 + LOR reduce 52 + LAND reduce 52 + EQ reduce 52 + LE reduce 52 + LT reduce 52 + GE reduce 52 + GT reduce 52 + NE reduce 52 + BITOR reduce 52 + BITXOR reduce 52 + BITAND reduce 52 + LSHIFT reduce 52 + RSHIFT reduce 52 + PLUS reduce 52 + MINUS reduce 52 + DIVIDE reduce 52 + MULTIPLY reduce 52 + MOD reduce 52 + BITNOT reduce 52 + LPAREN reduce 52 + LSQBRACKET reduce 52 + PERIOD reduce 52 + SEMICOLON reduce 52 + IMPORT reduce 52 + NAME reduce 52 + COLON reduce 52 + FUNCTION reduce 52 + RPAREN reduce 52 + OBJECT reduce 52 + LBRACKET reduce 52 + VAR reduce 52 + RBRACKET reduce 52 + NUMBER reduce 52 + RSQBRACKET reduce 52 + KILLS reduce 52 + TRGCONST reduce 52 + L2V reduce 52 + MAPSTRING reduce 52 + UNIT reduce 52 + SWITCH reduce 52 + LOCATION reduce 52 + STATTXTTBL reduce 52 + VARRAY reduce 52 + STATIC reduce 52 + CONST reduce 52 + INC reduce 52 + DEC reduce 52 + ONCE reduce 52 + IF reduce 52 + SWITCHCASE reduce 52 + CASE reduce 52 + DEFAULT reduce 52 + WHILE reduce 52 + FOR reduce 52 + FOREACH reduce 52 + CONTINUE reduce 52 + BREAK reduce 52 + RETURN reduce 52 + ACTIONNAME reduce 52 + +State 182: + (51) bodyStmt ::= once_stmt * + + $ reduce 51 + ELSE reduce 51 + QMARK reduce 51 + COMMA reduce 51 + LOR reduce 51 + LAND reduce 51 + EQ reduce 51 + LE reduce 51 + LT reduce 51 + GE reduce 51 + GT reduce 51 + NE reduce 51 + BITOR reduce 51 + BITXOR reduce 51 + BITAND reduce 51 + LSHIFT reduce 51 + RSHIFT reduce 51 + PLUS reduce 51 + MINUS reduce 51 + DIVIDE reduce 51 + MULTIPLY reduce 51 + MOD reduce 51 + BITNOT reduce 51 + LPAREN reduce 51 + LSQBRACKET reduce 51 + PERIOD reduce 51 + SEMICOLON reduce 51 + IMPORT reduce 51 + NAME reduce 51 + COLON reduce 51 + FUNCTION reduce 51 + RPAREN reduce 51 + OBJECT reduce 51 + LBRACKET reduce 51 + VAR reduce 51 + RBRACKET reduce 51 + NUMBER reduce 51 + RSQBRACKET reduce 51 + KILLS reduce 51 + TRGCONST reduce 51 + L2V reduce 51 + MAPSTRING reduce 51 + UNIT reduce 51 + SWITCH reduce 51 + LOCATION reduce 51 + STATTXTTBL reduce 51 + VARRAY reduce 51 + STATIC reduce 51 + CONST reduce 51 + INC reduce 51 + DEC reduce 51 + ONCE reduce 51 + IF reduce 51 + SWITCHCASE reduce 51 + CASE reduce 51 + DEFAULT reduce 51 + WHILE reduce 51 + FOR reduce 51 + FOREACH reduce 51 + CONTINUE reduce 51 + BREAK reduce 51 + RETURN reduce 51 + ACTIONNAME reduce 51 + +State 183: + (50) bodyStmt ::= actionStmt * + + $ reduce 50 + ELSE reduce 50 + QMARK reduce 50 + COMMA reduce 50 + LOR reduce 50 + LAND reduce 50 + EQ reduce 50 + LE reduce 50 + LT reduce 50 + GE reduce 50 + GT reduce 50 + NE reduce 50 + BITOR reduce 50 + BITXOR reduce 50 + BITAND reduce 50 + LSHIFT reduce 50 + RSHIFT reduce 50 + PLUS reduce 50 + MINUS reduce 50 + DIVIDE reduce 50 + MULTIPLY reduce 50 + MOD reduce 50 + BITNOT reduce 50 + LPAREN reduce 50 + LSQBRACKET reduce 50 + PERIOD reduce 50 + SEMICOLON reduce 50 + IMPORT reduce 50 + NAME reduce 50 + COLON reduce 50 + FUNCTION reduce 50 + RPAREN reduce 50 + OBJECT reduce 50 + LBRACKET reduce 50 + VAR reduce 50 + RBRACKET reduce 50 + NUMBER reduce 50 + RSQBRACKET reduce 50 + KILLS reduce 50 + TRGCONST reduce 50 + L2V reduce 50 + MAPSTRING reduce 50 + UNIT reduce 50 + SWITCH reduce 50 + LOCATION reduce 50 + STATTXTTBL reduce 50 + VARRAY reduce 50 + STATIC reduce 50 + CONST reduce 50 + INC reduce 50 + DEC reduce 50 + ONCE reduce 50 + IF reduce 50 + SWITCHCASE reduce 50 + CASE reduce 50 + DEFAULT reduce 50 + WHILE reduce 50 + FOR reduce 50 + FOREACH reduce 50 + CONTINUE reduce 50 + BREAK reduce 50 + RETURN reduce 50 + ACTIONNAME reduce 50 + +State 184: + (49) bodyStmt ::= funcexprStmt SEMICOLON * + + $ reduce 49 + ELSE reduce 49 + QMARK reduce 49 + COMMA reduce 49 + LOR reduce 49 + LAND reduce 49 + EQ reduce 49 + LE reduce 49 + LT reduce 49 + GE reduce 49 + GT reduce 49 + NE reduce 49 + BITOR reduce 49 + BITXOR reduce 49 + BITAND reduce 49 + LSHIFT reduce 49 + RSHIFT reduce 49 + PLUS reduce 49 + MINUS reduce 49 + DIVIDE reduce 49 + MULTIPLY reduce 49 + MOD reduce 49 + BITNOT reduce 49 + LPAREN reduce 49 + LSQBRACKET reduce 49 + PERIOD reduce 49 + SEMICOLON reduce 49 + IMPORT reduce 49 + NAME reduce 49 + COLON reduce 49 + FUNCTION reduce 49 + RPAREN reduce 49 + OBJECT reduce 49 + LBRACKET reduce 49 + VAR reduce 49 + RBRACKET reduce 49 + NUMBER reduce 49 + RSQBRACKET reduce 49 + KILLS reduce 49 + TRGCONST reduce 49 + L2V reduce 49 + MAPSTRING reduce 49 + UNIT reduce 49 + SWITCH reduce 49 + LOCATION reduce 49 + STATTXTTBL reduce 49 + VARRAY reduce 49 + STATIC reduce 49 + CONST reduce 49 + INC reduce 49 + DEC reduce 49 + ONCE reduce 49 + IF reduce 49 + SWITCHCASE reduce 49 + CASE reduce 49 + DEFAULT reduce 49 + WHILE reduce 49 + FOR reduce 49 + FOREACH reduce 49 + CONTINUE reduce 49 + BREAK reduce 49 + RETURN reduce 49 + ACTIONNAME reduce 49 + +State 185: + (48) bodyStmt ::= assign_stmt SEMICOLON * + + $ reduce 48 + ELSE reduce 48 + QMARK reduce 48 + COMMA reduce 48 + LOR reduce 48 + LAND reduce 48 + EQ reduce 48 + LE reduce 48 + LT reduce 48 + GE reduce 48 + GT reduce 48 + NE reduce 48 + BITOR reduce 48 + BITXOR reduce 48 + BITAND reduce 48 + LSHIFT reduce 48 + RSHIFT reduce 48 + PLUS reduce 48 + MINUS reduce 48 + DIVIDE reduce 48 + MULTIPLY reduce 48 + MOD reduce 48 + BITNOT reduce 48 + LPAREN reduce 48 + LSQBRACKET reduce 48 + PERIOD reduce 48 + SEMICOLON reduce 48 + IMPORT reduce 48 + NAME reduce 48 + COLON reduce 48 + FUNCTION reduce 48 + RPAREN reduce 48 + OBJECT reduce 48 + LBRACKET reduce 48 + VAR reduce 48 + RBRACKET reduce 48 + NUMBER reduce 48 + RSQBRACKET reduce 48 + KILLS reduce 48 + TRGCONST reduce 48 + L2V reduce 48 + MAPSTRING reduce 48 + UNIT reduce 48 + SWITCH reduce 48 + LOCATION reduce 48 + STATTXTTBL reduce 48 + VARRAY reduce 48 + STATIC reduce 48 + CONST reduce 48 + INC reduce 48 + DEC reduce 48 + ONCE reduce 48 + IF reduce 48 + SWITCHCASE reduce 48 + CASE reduce 48 + DEFAULT reduce 48 + WHILE reduce 48 + FOR reduce 48 + FOREACH reduce 48 + CONTINUE reduce 48 + BREAK reduce 48 + RETURN reduce 48 + ACTIONNAME reduce 48 + +State 186: + (47) bodyStmt ::= cdef_stmt SEMICOLON * + + $ reduce 47 + ELSE reduce 47 + QMARK reduce 47 + COMMA reduce 47 + LOR reduce 47 + LAND reduce 47 + EQ reduce 47 + LE reduce 47 + LT reduce 47 + GE reduce 47 + GT reduce 47 + NE reduce 47 + BITOR reduce 47 + BITXOR reduce 47 + BITAND reduce 47 + LSHIFT reduce 47 + RSHIFT reduce 47 + PLUS reduce 47 + MINUS reduce 47 + DIVIDE reduce 47 + MULTIPLY reduce 47 + MOD reduce 47 + BITNOT reduce 47 + LPAREN reduce 47 + LSQBRACKET reduce 47 + PERIOD reduce 47 + SEMICOLON reduce 47 + IMPORT reduce 47 + NAME reduce 47 + COLON reduce 47 + FUNCTION reduce 47 + RPAREN reduce 47 + OBJECT reduce 47 + LBRACKET reduce 47 + VAR reduce 47 + RBRACKET reduce 47 + NUMBER reduce 47 + RSQBRACKET reduce 47 + KILLS reduce 47 + TRGCONST reduce 47 + L2V reduce 47 + MAPSTRING reduce 47 + UNIT reduce 47 + SWITCH reduce 47 + LOCATION reduce 47 + STATTXTTBL reduce 47 + VARRAY reduce 47 + STATIC reduce 47 + CONST reduce 47 + INC reduce 47 + DEC reduce 47 + ONCE reduce 47 + IF reduce 47 + SWITCHCASE reduce 47 + CASE reduce 47 + DEFAULT reduce 47 + WHILE reduce 47 + FOR reduce 47 + FOREACH reduce 47 + CONTINUE reduce 47 + BREAK reduce 47 + RETURN reduce 47 + ACTIONNAME reduce 47 + +State 187: + (46) bodyStmt ::= vdefAssign_stmt SEMICOLON * + + $ reduce 46 + ELSE reduce 46 + QMARK reduce 46 + COMMA reduce 46 + LOR reduce 46 + LAND reduce 46 + EQ reduce 46 + LE reduce 46 + LT reduce 46 + GE reduce 46 + GT reduce 46 + NE reduce 46 + BITOR reduce 46 + BITXOR reduce 46 + BITAND reduce 46 + LSHIFT reduce 46 + RSHIFT reduce 46 + PLUS reduce 46 + MINUS reduce 46 + DIVIDE reduce 46 + MULTIPLY reduce 46 + MOD reduce 46 + BITNOT reduce 46 + LPAREN reduce 46 + LSQBRACKET reduce 46 + PERIOD reduce 46 + SEMICOLON reduce 46 + IMPORT reduce 46 + NAME reduce 46 + COLON reduce 46 + FUNCTION reduce 46 + RPAREN reduce 46 + OBJECT reduce 46 + LBRACKET reduce 46 + VAR reduce 46 + RBRACKET reduce 46 + NUMBER reduce 46 + RSQBRACKET reduce 46 + KILLS reduce 46 + TRGCONST reduce 46 + L2V reduce 46 + MAPSTRING reduce 46 + UNIT reduce 46 + SWITCH reduce 46 + LOCATION reduce 46 + STATTXTTBL reduce 46 + VARRAY reduce 46 + STATIC reduce 46 + CONST reduce 46 + INC reduce 46 + DEC reduce 46 + ONCE reduce 46 + IF reduce 46 + SWITCHCASE reduce 46 + CASE reduce 46 + DEFAULT reduce 46 + WHILE reduce 46 + FOR reduce 46 + FOREACH reduce 46 + CONTINUE reduce 46 + BREAK reduce 46 + RETURN reduce 46 + ACTIONNAME reduce 46 + +State 188: + (45) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * + + $ reduce 45 + ELSE reduce 45 + QMARK reduce 45 + COMMA reduce 45 + LOR reduce 45 + LAND reduce 45 + EQ reduce 45 + LE reduce 45 + LT reduce 45 + GE reduce 45 + GT reduce 45 + NE reduce 45 + BITOR reduce 45 + BITXOR reduce 45 + BITAND reduce 45 + LSHIFT reduce 45 + RSHIFT reduce 45 + PLUS reduce 45 + MINUS reduce 45 + DIVIDE reduce 45 + MULTIPLY reduce 45 + MOD reduce 45 + BITNOT reduce 45 + LPAREN reduce 45 + LSQBRACKET reduce 45 + PERIOD reduce 45 + SEMICOLON reduce 45 + IMPORT reduce 45 + NAME reduce 45 + COLON reduce 45 + FUNCTION reduce 45 + RPAREN reduce 45 + OBJECT reduce 45 + LBRACKET reduce 45 + VAR reduce 45 + RBRACKET reduce 45 + NUMBER reduce 45 + RSQBRACKET reduce 45 + KILLS reduce 45 + TRGCONST reduce 45 + L2V reduce 45 + MAPSTRING reduce 45 + UNIT reduce 45 + SWITCH reduce 45 + LOCATION reduce 45 + STATTXTTBL reduce 45 + VARRAY reduce 45 + STATIC reduce 45 + CONST reduce 45 + INC reduce 45 + DEC reduce 45 + ONCE reduce 45 + IF reduce 45 + SWITCHCASE reduce 45 + CASE reduce 45 + DEFAULT reduce 45 + WHILE reduce 45 + FOR reduce 45 + FOREACH reduce 45 + CONTINUE reduce 45 + BREAK reduce 45 + RETURN reduce 45 + ACTIONNAME reduce 45 + +State 189: + (44) bodyStmt ::= vdef_stmt SEMICOLON * + + $ reduce 44 + ELSE reduce 44 + QMARK reduce 44 + COMMA reduce 44 + LOR reduce 44 + LAND reduce 44 + EQ reduce 44 + LE reduce 44 + LT reduce 44 + GE reduce 44 + GT reduce 44 + NE reduce 44 + BITOR reduce 44 + BITXOR reduce 44 + BITAND reduce 44 + LSHIFT reduce 44 + RSHIFT reduce 44 + PLUS reduce 44 + MINUS reduce 44 + DIVIDE reduce 44 + MULTIPLY reduce 44 + MOD reduce 44 + BITNOT reduce 44 + LPAREN reduce 44 + LSQBRACKET reduce 44 + PERIOD reduce 44 + SEMICOLON reduce 44 + IMPORT reduce 44 + NAME reduce 44 + COLON reduce 44 + FUNCTION reduce 44 + RPAREN reduce 44 + OBJECT reduce 44 + LBRACKET reduce 44 + VAR reduce 44 + RBRACKET reduce 44 + NUMBER reduce 44 + RSQBRACKET reduce 44 + KILLS reduce 44 + TRGCONST reduce 44 + L2V reduce 44 + MAPSTRING reduce 44 + UNIT reduce 44 + SWITCH reduce 44 + LOCATION reduce 44 + STATTXTTBL reduce 44 + VARRAY reduce 44 + STATIC reduce 44 + CONST reduce 44 + INC reduce 44 + DEC reduce 44 + ONCE reduce 44 + IF reduce 44 + SWITCHCASE reduce 44 + CASE reduce 44 + DEFAULT reduce 44 + WHILE reduce 44 + FOR reduce 44 + FOREACH reduce 44 + CONTINUE reduce 44 + BREAK reduce 44 + RETURN reduce 44 + ACTIONNAME reduce 44 + +State 190: + (43) bodyStmt ::= SEMICOLON * + + $ reduce 43 + ELSE reduce 43 + QMARK reduce 43 + COMMA reduce 43 + LOR reduce 43 + LAND reduce 43 + EQ reduce 43 + LE reduce 43 + LT reduce 43 + GE reduce 43 + GT reduce 43 + NE reduce 43 + BITOR reduce 43 + BITXOR reduce 43 + BITAND reduce 43 + LSHIFT reduce 43 + RSHIFT reduce 43 + PLUS reduce 43 + MINUS reduce 43 + DIVIDE reduce 43 + MULTIPLY reduce 43 + MOD reduce 43 + BITNOT reduce 43 + LPAREN reduce 43 + LSQBRACKET reduce 43 + PERIOD reduce 43 + SEMICOLON reduce 43 + IMPORT reduce 43 + NAME reduce 43 + COLON reduce 43 + FUNCTION reduce 43 + RPAREN reduce 43 + OBJECT reduce 43 + LBRACKET reduce 43 + VAR reduce 43 + RBRACKET reduce 43 + NUMBER reduce 43 + RSQBRACKET reduce 43 + KILLS reduce 43 + TRGCONST reduce 43 + L2V reduce 43 + MAPSTRING reduce 43 + UNIT reduce 43 + SWITCH reduce 43 + LOCATION reduce 43 + STATTXTTBL reduce 43 + VARRAY reduce 43 + STATIC reduce 43 + CONST reduce 43 + INC reduce 43 + DEC reduce 43 + ONCE reduce 43 + IF reduce 43 + SWITCHCASE reduce 43 + CASE reduce 43 + DEFAULT reduce 43 + WHILE reduce 43 + FOR reduce 43 + FOREACH reduce 43 + CONTINUE reduce 43 + BREAK reduce 43 + RETURN reduce 43 + ACTIONNAME reduce 43 + +State 191: + (42) bodyStmt ::= blockStmt * + + $ reduce 42 + ELSE reduce 42 + QMARK reduce 42 + COMMA reduce 42 + LOR reduce 42 + LAND reduce 42 + EQ reduce 42 + LE reduce 42 + LT reduce 42 + GE reduce 42 + GT reduce 42 + NE reduce 42 + BITOR reduce 42 + BITXOR reduce 42 + BITAND reduce 42 + LSHIFT reduce 42 + RSHIFT reduce 42 + PLUS reduce 42 + MINUS reduce 42 + DIVIDE reduce 42 + MULTIPLY reduce 42 + MOD reduce 42 + BITNOT reduce 42 + LPAREN reduce 42 + LSQBRACKET reduce 42 + PERIOD reduce 42 + SEMICOLON reduce 42 + IMPORT reduce 42 + NAME reduce 42 + COLON reduce 42 + FUNCTION reduce 42 + RPAREN reduce 42 + OBJECT reduce 42 + LBRACKET reduce 42 + VAR reduce 42 + RBRACKET reduce 42 + NUMBER reduce 42 + RSQBRACKET reduce 42 + KILLS reduce 42 + TRGCONST reduce 42 + L2V reduce 42 + MAPSTRING reduce 42 + UNIT reduce 42 + SWITCH reduce 42 + LOCATION reduce 42 + STATTXTTBL reduce 42 + VARRAY reduce 42 + STATIC reduce 42 + CONST reduce 42 + INC reduce 42 + DEC reduce 42 + ONCE reduce 42 + IF reduce 42 + SWITCHCASE reduce 42 + CASE reduce 42 + DEFAULT reduce 42 + WHILE reduce 42 + FOR reduce 42 + FOREACH reduce 42 + CONTINUE reduce 42 + BREAK reduce 42 + RETURN reduce 42 + ACTIONNAME reduce 42 + +State 192: + (39) blockStmt ::= lbracket error RBRACKET * + + $ reduce 39 + ELSE reduce 39 + QMARK reduce 39 + COMMA reduce 39 + LOR reduce 39 + LAND reduce 39 + EQ reduce 39 + LE reduce 39 + LT reduce 39 + GE reduce 39 + GT reduce 39 + NE reduce 39 + BITOR reduce 39 + BITXOR reduce 39 + BITAND reduce 39 + LSHIFT reduce 39 + RSHIFT reduce 39 + PLUS reduce 39 + MINUS reduce 39 + DIVIDE reduce 39 + MULTIPLY reduce 39 + MOD reduce 39 + BITNOT reduce 39 + LPAREN reduce 39 + LSQBRACKET reduce 39 + PERIOD reduce 39 + SEMICOLON reduce 39 + IMPORT reduce 39 + NAME reduce 39 + COLON reduce 39 + FUNCTION reduce 39 + RPAREN reduce 39 + OBJECT reduce 39 + LBRACKET reduce 39 + VAR reduce 39 + RBRACKET reduce 39 + NUMBER reduce 39 + RSQBRACKET reduce 39 + KILLS reduce 39 + TRGCONST reduce 39 + L2V reduce 39 + MAPSTRING reduce 39 + UNIT reduce 39 + SWITCH reduce 39 + LOCATION reduce 39 + STATTXTTBL reduce 39 + VARRAY reduce 39 + STATIC reduce 39 + CONST reduce 39 + INC reduce 39 + DEC reduce 39 + ONCE reduce 39 + IF reduce 39 + SWITCHCASE reduce 39 + CASE reduce 39 + DEFAULT reduce 39 + WHILE reduce 39 + FOR reduce 39 + FOREACH reduce 39 + CONTINUE reduce 39 + BREAK reduce 39 + RETURN reduce 39 + ACTIONNAME reduce 39 + +State 193: + (38) blockStmt ::= blockStmtSub rbracket * + + $ reduce 38 + ELSE reduce 38 + QMARK reduce 38 + COMMA reduce 38 + LOR reduce 38 + LAND reduce 38 + EQ reduce 38 + LE reduce 38 + LT reduce 38 + GE reduce 38 + GT reduce 38 + NE reduce 38 + BITOR reduce 38 + BITXOR reduce 38 + BITAND reduce 38 + LSHIFT reduce 38 + RSHIFT reduce 38 + PLUS reduce 38 + MINUS reduce 38 + DIVIDE reduce 38 + MULTIPLY reduce 38 + MOD reduce 38 + BITNOT reduce 38 + LPAREN reduce 38 + LSQBRACKET reduce 38 + PERIOD reduce 38 + SEMICOLON reduce 38 + IMPORT reduce 38 + NAME reduce 38 + COLON reduce 38 + FUNCTION reduce 38 + RPAREN reduce 38 + OBJECT reduce 38 + LBRACKET reduce 38 + VAR reduce 38 + RBRACKET reduce 38 + NUMBER reduce 38 + RSQBRACKET reduce 38 + KILLS reduce 38 + TRGCONST reduce 38 + L2V reduce 38 + MAPSTRING reduce 38 + UNIT reduce 38 + SWITCH reduce 38 + LOCATION reduce 38 + STATTXTTBL reduce 38 + VARRAY reduce 38 + STATIC reduce 38 + CONST reduce 38 + INC reduce 38 + DEC reduce 38 + ONCE reduce 38 + IF reduce 38 + SWITCHCASE reduce 38 + CASE reduce 38 + DEFAULT reduce 38 + WHILE reduce 38 + FOR reduce 38 + FOREACH reduce 38 + CONTINUE reduce 38 + BREAK reduce 38 + RETURN reduce 38 + ACTIONNAME reduce 38 + +State 194: + (37) rbracket ::= RBRACKET * + + $ reduce 37 + ELSE reduce 37 + QMARK reduce 37 + COMMA reduce 37 + LOR reduce 37 + LAND reduce 37 + EQ reduce 37 + LE reduce 37 + LT reduce 37 + GE reduce 37 + GT reduce 37 + NE reduce 37 + BITOR reduce 37 + BITXOR reduce 37 + BITAND reduce 37 + LSHIFT reduce 37 + RSHIFT reduce 37 + PLUS reduce 37 + MINUS reduce 37 + DIVIDE reduce 37 + MULTIPLY reduce 37 + MOD reduce 37 + BITNOT reduce 37 + LPAREN reduce 37 + LSQBRACKET reduce 37 + PERIOD reduce 37 + SEMICOLON reduce 37 + IMPORT reduce 37 + NAME reduce 37 + COLON reduce 37 + FUNCTION reduce 37 + RPAREN reduce 37 + OBJECT reduce 37 + LBRACKET reduce 37 + VAR reduce 37 + RBRACKET reduce 37 + NUMBER reduce 37 + RSQBRACKET reduce 37 + KILLS reduce 37 + TRGCONST reduce 37 + L2V reduce 37 + MAPSTRING reduce 37 + UNIT reduce 37 + SWITCH reduce 37 + LOCATION reduce 37 + STATTXTTBL reduce 37 + VARRAY reduce 37 + STATIC reduce 37 + CONST reduce 37 + INC reduce 37 + DEC reduce 37 + ONCE reduce 37 + IF reduce 37 + SWITCHCASE reduce 37 + CASE reduce 37 + DEFAULT reduce 37 + WHILE reduce 37 + FOR reduce 37 + FOREACH reduce 37 + CONTINUE reduce 37 + BREAK reduce 37 + RETURN reduce 37 + ACTIONNAME reduce 37 + +State 195: + (35) stmt ::= bodyStmt * + + $ reduce 35 + ELSE reduce 35 + QMARK reduce 35 + COMMA reduce 35 + LOR reduce 35 + LAND reduce 35 + EQ reduce 35 + LE reduce 35 + LT reduce 35 + GE reduce 35 + GT reduce 35 + NE reduce 35 + BITOR reduce 35 + BITXOR reduce 35 + BITAND reduce 35 + LSHIFT reduce 35 + RSHIFT reduce 35 + PLUS reduce 35 + MINUS reduce 35 + DIVIDE reduce 35 + MULTIPLY reduce 35 + MOD reduce 35 + BITNOT reduce 35 + LPAREN reduce 35 + LSQBRACKET reduce 35 + PERIOD reduce 35 + SEMICOLON reduce 35 + IMPORT reduce 35 + NAME reduce 35 + COLON reduce 35 + FUNCTION reduce 35 + RPAREN reduce 35 + OBJECT reduce 35 + LBRACKET reduce 35 + VAR reduce 35 + RBRACKET reduce 35 + NUMBER reduce 35 + RSQBRACKET reduce 35 + KILLS reduce 35 + TRGCONST reduce 35 + L2V reduce 35 + MAPSTRING reduce 35 + UNIT reduce 35 + SWITCH reduce 35 + LOCATION reduce 35 + STATTXTTBL reduce 35 + VARRAY reduce 35 + STATIC reduce 35 + CONST reduce 35 + INC reduce 35 + DEC reduce 35 + ONCE reduce 35 + IF reduce 35 + SWITCHCASE reduce 35 + CASE reduce 35 + DEFAULT reduce 35 + WHILE reduce 35 + FOR reduce 35 + FOREACH reduce 35 + CONTINUE reduce 35 + BREAK reduce 35 + RETURN reduce 35 + ACTIONNAME reduce 35 + +State 196: + (34) stmt ::= error SEMICOLON * + + $ reduce 34 + ELSE reduce 34 + QMARK reduce 34 + COMMA reduce 34 + LOR reduce 34 + LAND reduce 34 + EQ reduce 34 + LE reduce 34 + LT reduce 34 + GE reduce 34 + GT reduce 34 + NE reduce 34 + BITOR reduce 34 + BITXOR reduce 34 + BITAND reduce 34 + LSHIFT reduce 34 + RSHIFT reduce 34 + PLUS reduce 34 + MINUS reduce 34 + DIVIDE reduce 34 + MULTIPLY reduce 34 + MOD reduce 34 + BITNOT reduce 34 + LPAREN reduce 34 + LSQBRACKET reduce 34 + PERIOD reduce 34 + SEMICOLON reduce 34 + IMPORT reduce 34 + NAME reduce 34 + COLON reduce 34 + FUNCTION reduce 34 + RPAREN reduce 34 + OBJECT reduce 34 + LBRACKET reduce 34 + VAR reduce 34 + RBRACKET reduce 34 + NUMBER reduce 34 + RSQBRACKET reduce 34 + KILLS reduce 34 + TRGCONST reduce 34 + L2V reduce 34 + MAPSTRING reduce 34 + UNIT reduce 34 + SWITCH reduce 34 + LOCATION reduce 34 + STATTXTTBL reduce 34 + VARRAY reduce 34 + STATIC reduce 34 + CONST reduce 34 + INC reduce 34 + DEC reduce 34 + ONCE reduce 34 + IF reduce 34 + SWITCHCASE reduce 34 + CASE reduce 34 + DEFAULT reduce 34 + WHILE reduce 34 + FOR reduce 34 + FOREACH reduce 34 + CONTINUE reduce 34 + BREAK reduce 34 + RETURN reduce 34 + ACTIONNAME reduce 34 + +State 197: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -16822,279 +19560,88 @@ State 161: nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - LOR shift 67 - LAND shift 68 - EQ shift 74 - LE shift 72 - LT shift 70 - GE shift 71 - GT shift 69 - NE shift 73 + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + (182) logicExpr ::= nonConstExpr GT constExpr * + + QMARK reduce 182 + COMMA reduce 182 + LOR reduce 182 + LAND reduce 182 + EQ error + EQ reduce 182 + LE error + LE reduce 182 + LT error + LT reduce 182 + GE error + GE reduce 182 + GT error + GT reduce 182 + NE error + NE reduce 182 BITOR shift 102 + BITOR reduce 182 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 182 -- dropped by precedence BITAND shift 103 + BITAND reduce 182 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 182 -- dropped by precedence RSHIFT shift 104 - PLUS shift 115 - MINUS shift 109 + RSHIFT reduce 182 -- dropped by precedence + PLUS shift 113 + PLUS reduce 182 -- dropped by precedence + MINUS shift 112 + MINUS reduce 182 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 182 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 182 -- dropped by precedence MOD shift 106 - {default} reduce 86 - -State 162: - (81) nonConstExpr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN - (182) lvalue ::= NAME * - - ASSIGN reduce 182 - COMMA reduce 182 - LPAREN shift 27 + MOD reduce 182 -- dropped by precedence + BITNOT reduce 182 + LPAREN reduce 182 + LSQBRACKET reduce 182 + PERIOD reduce 182 SEMICOLON reduce 182 + NAME reduce 182 + COLON reduce 182 + FUNCTION reduce 182 RPAREN reduce 182 + LBRACKET reduce 182 + VAR reduce 182 + NUMBER reduce 182 + RSQBRACKET reduce 182 + KILLS reduce 182 + TRGCONST reduce 182 + L2V reduce 182 + MAPSTRING reduce 182 + UNIT reduce 182 + SWITCH reduce 182 + LOCATION reduce 182 + STATTXTTBL reduce 182 + VARRAY reduce 182 + STATIC reduce 182 + CONST reduce 182 INC reduce 182 DEC reduce 182 - IADD reduce 182 - ISUB reduce 182 - IMUL reduce 182 - IDIV reduce 182 - IMOD reduce 182 - ILSH reduce 182 - IRSH reduce 182 - IBND reduce 182 - IBOR reduce 182 - IBXR reduce 182 - {default} reduce 81 - -State 163: - (185) lvalueList_nonEmpty ::= lvalue * - assign_stmt ::= lvalue * ASSIGN expr - assign_stmt ::= lvalue * INC - assign_stmt ::= lvalue * DEC - assign_stmt ::= lvalue * IADD expr - assign_stmt ::= lvalue * ISUB expr - assign_stmt ::= lvalue * IMUL expr - assign_stmt ::= lvalue * IDIV expr - assign_stmt ::= lvalue * IMOD expr - assign_stmt ::= lvalue * ILSH expr - assign_stmt ::= lvalue * IRSH expr - assign_stmt ::= lvalue * IBND expr - assign_stmt ::= lvalue * IBOR expr - assign_stmt ::= lvalue * IBXR expr - - ASSIGN shift 64 - INC shift 420 - DEC shift 419 - IADD shift 63 - ISUB shift 62 - IMUL shift 61 - IDIV shift 60 - IMOD shift 59 - ILSH shift 58 - IRSH shift 57 - IBND shift 56 - IBOR shift 55 - IBXR shift 54 - {default} reduce 185 - -State 164: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - (147) nonConstExpr ::= constExpr BITOR nonConstExpr * - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - BITXOR shift 83 - BITAND shift 85 - LSHIFT shift 87 - RSHIFT shift 86 - PLUS shift 94 - MINUS shift 91 - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 147 - -State 165: - constExpr ::= LPAREN constExpr * RPAREN - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - - BITOR shift 127 - BITXOR shift 126 - BITAND shift 128 - LSHIFT shift 130 - RSHIFT shift 129 - PLUS shift 136 - MINUS shift 134 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - RPAREN shift 427 - -State 166: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - (150) nonConstExpr ::= constExpr BITXOR nonConstExpr * - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - BITAND shift 85 - LSHIFT shift 87 - RSHIFT shift 86 - PLUS shift 94 - MINUS shift 91 - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 150 - -State 167: - (89) fConstArg ::= constExpr * - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - - BITOR shift 127 - BITXOR shift 126 - BITAND shift 128 - LSHIFT shift 130 - RSHIFT shift 129 - PLUS shift 136 - MINUS shift 134 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - {default} reduce 89 - -State 168: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - (144) nonConstExpr ::= constExpr BITAND nonConstExpr * - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - LSHIFT shift 87 - RSHIFT shift 86 - PLUS shift 94 - MINUS shift 91 - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 144 - -State 169: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - (146) constExpr ::= constExpr BITOR constExpr * - constExpr ::= constExpr * BITXOR constExpr - - BITXOR shift 126 - BITAND shift 128 - LSHIFT shift 130 - RSHIFT shift 129 - PLUS shift 136 - MINUS shift 134 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - {default} reduce 146 + ONCE reduce 182 + IF reduce 182 + SWITCHCASE reduce 182 + WHILE reduce 182 + FOR reduce 182 + FOREACH reduce 182 + CONTINUE reduce 182 + BREAK reduce 182 + RETURN reduce 182 + ACTIONNAME reduce 182 -State 170: +State 198: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17112,54 +19659,193 @@ State 170: constExpr ::= constExpr * BITAND constExpr nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - (146) constExpr ::= constExpr BITOR constExpr * nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + (178) logicExpr ::= nonConstExpr LT constExpr * + constExpr ::= constExpr * GT constExpr + + QMARK reduce 178 + COMMA reduce 178 + LOR reduce 178 + LAND reduce 178 + EQ error + EQ reduce 178 + LE error + LE reduce 178 + LT error + LT reduce 178 + GE error + GE reduce 178 + GT error + GT reduce 178 + NE error + NE reduce 178 + BITOR shift 102 + BITOR reduce 178 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 178 -- dropped by precedence BITAND shift 103 + BITAND reduce 178 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 178 -- dropped by precedence RSHIFT shift 104 - PLUS shift 115 - MINUS shift 109 + RSHIFT reduce 178 -- dropped by precedence + PLUS shift 113 + PLUS reduce 178 -- dropped by precedence + MINUS shift 112 + MINUS reduce 178 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 178 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 178 -- dropped by precedence MOD shift 106 - {default} reduce 146 + MOD reduce 178 -- dropped by precedence + BITNOT reduce 178 + LPAREN reduce 178 + LSQBRACKET reduce 178 + PERIOD reduce 178 + SEMICOLON reduce 178 + NAME reduce 178 + COLON reduce 178 + FUNCTION reduce 178 + RPAREN reduce 178 + LBRACKET reduce 178 + VAR reduce 178 + NUMBER reduce 178 + RSQBRACKET reduce 178 + KILLS reduce 178 + TRGCONST reduce 178 + L2V reduce 178 + MAPSTRING reduce 178 + UNIT reduce 178 + SWITCH reduce 178 + LOCATION reduce 178 + STATTXTTBL reduce 178 + VARRAY reduce 178 + STATIC reduce 178 + CONST reduce 178 + INC reduce 178 + DEC reduce 178 + ONCE reduce 178 + IF reduce 178 + SWITCHCASE reduce 178 + WHILE reduce 178 + FOR reduce 178 + FOREACH reduce 178 + CONTINUE reduce 178 + BREAK reduce 178 + RETURN reduce 178 + ACTIONNAME reduce 178 -State 171: +State 199: constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - (149) constExpr ::= constExpr BITXOR constExpr * - - BITAND shift 128 - LSHIFT shift 130 - RSHIFT shift 129 - PLUS shift 136 - MINUS shift 134 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - {default} reduce 149 + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + (174) logicExpr ::= nonConstExpr GE constExpr * + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 174 + COMMA reduce 174 + LOR reduce 174 + LAND reduce 174 + EQ error + EQ reduce 174 + LE error + LE reduce 174 + LT error + LT reduce 174 + GE error + GE reduce 174 + GT error + GT reduce 174 + NE error + NE reduce 174 + BITOR shift 102 + BITOR reduce 174 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 174 -- dropped by precedence + BITAND shift 103 + BITAND reduce 174 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 174 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 174 -- dropped by precedence + PLUS shift 113 + PLUS reduce 174 -- dropped by precedence + MINUS shift 112 + MINUS reduce 174 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 174 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 174 -- dropped by precedence + MOD shift 106 + MOD reduce 174 -- dropped by precedence + BITNOT reduce 174 + LPAREN reduce 174 + LSQBRACKET reduce 174 + PERIOD reduce 174 + SEMICOLON reduce 174 + NAME reduce 174 + COLON reduce 174 + FUNCTION reduce 174 + RPAREN reduce 174 + LBRACKET reduce 174 + VAR reduce 174 + NUMBER reduce 174 + RSQBRACKET reduce 174 + KILLS reduce 174 + TRGCONST reduce 174 + L2V reduce 174 + MAPSTRING reduce 174 + UNIT reduce 174 + SWITCH reduce 174 + LOCATION reduce 174 + STATTXTTBL reduce 174 + VARRAY reduce 174 + STATIC reduce 174 + CONST reduce 174 + INC reduce 174 + DEC reduce 174 + ONCE reduce 174 + IF reduce 174 + SWITCHCASE reduce 174 + WHILE reduce 174 + FOR reduce 174 + FOREACH reduce 174 + CONTINUE reduce 174 + BREAK reduce 174 + RETURN reduce 174 + ACTIONNAME reduce 174 -State 172: +State 200: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17179,120 +19865,89 @@ State 172: constExpr ::= constExpr * BITOR constExpr nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - (149) constExpr ::= constExpr BITXOR constExpr * nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + (170) logicExpr ::= nonConstExpr LE constExpr * + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 170 + COMMA reduce 170 + LOR reduce 170 + LAND reduce 170 + EQ error + EQ reduce 170 + LE error + LE reduce 170 + LT error + LT reduce 170 + GE error + GE reduce 170 + GT error + GT reduce 170 + NE error + NE reduce 170 + BITOR shift 102 + BITOR reduce 170 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 170 -- dropped by precedence BITAND shift 103 + BITAND reduce 170 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 170 -- dropped by precedence RSHIFT shift 104 - PLUS shift 115 - MINUS shift 109 + RSHIFT reduce 170 -- dropped by precedence + PLUS shift 113 + PLUS reduce 170 -- dropped by precedence + MINUS shift 112 + MINUS reduce 170 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 170 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 170 -- dropped by precedence MOD shift 106 - {default} reduce 149 - -State 173: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - (141) nonConstExpr ::= constExpr RSHIFT nonConstExpr * - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - PLUS shift 94 - MINUS shift 91 - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 141 - -State 174: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - (138) nonConstExpr ::= constExpr LSHIFT nonConstExpr * - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - PLUS shift 94 - MINUS shift 91 - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 138 - -State 175: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - (143) constExpr ::= constExpr BITAND constExpr * - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - - LSHIFT shift 130 - RSHIFT shift 129 - PLUS shift 136 - MINUS shift 134 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - {default} reduce 143 + MOD reduce 170 -- dropped by precedence + BITNOT reduce 170 + LPAREN reduce 170 + LSQBRACKET reduce 170 + PERIOD reduce 170 + SEMICOLON reduce 170 + NAME reduce 170 + COLON reduce 170 + FUNCTION reduce 170 + RPAREN reduce 170 + LBRACKET reduce 170 + VAR reduce 170 + NUMBER reduce 170 + RSQBRACKET reduce 170 + KILLS reduce 170 + TRGCONST reduce 170 + L2V reduce 170 + MAPSTRING reduce 170 + UNIT reduce 170 + SWITCH reduce 170 + LOCATION reduce 170 + STATTXTTBL reduce 170 + VARRAY reduce 170 + STATIC reduce 170 + CONST reduce 170 + INC reduce 170 + DEC reduce 170 + ONCE reduce 170 + IF reduce 170 + SWITCHCASE reduce 170 + WHILE reduce 170 + FOR reduce 170 + FOREACH reduce 170 + CONTINUE reduce 170 + BREAK reduce 170 + RETURN reduce 170 + ACTIONNAME reduce 170 -State 176: +State 201: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17308,137 +19963,297 @@ State 176: constExpr ::= constExpr * RSHIFT constExpr nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - (143) constExpr ::= constExpr BITAND constExpr * nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + (166) logicExpr ::= nonConstExpr NE constExpr * + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 166 + COMMA reduce 166 + LOR reduce 166 + LAND reduce 166 + EQ error + EQ reduce 166 + LE error + LE reduce 166 + LT error + LT reduce 166 + GE error + GE reduce 166 + GT error + GT reduce 166 + NE error + NE reduce 166 + BITOR shift 102 + BITOR reduce 166 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 166 -- dropped by precedence + BITAND shift 103 + BITAND reduce 166 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 166 -- dropped by precedence RSHIFT shift 104 - PLUS shift 115 - MINUS shift 109 + RSHIFT reduce 166 -- dropped by precedence + PLUS shift 113 + PLUS reduce 166 -- dropped by precedence + MINUS shift 112 + MINUS reduce 166 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 166 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 166 -- dropped by precedence MOD shift 106 - {default} reduce 143 - -State 177: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - (126) nonConstExpr ::= constExpr MINUS nonConstExpr * - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 126 + MOD reduce 166 -- dropped by precedence + BITNOT reduce 166 + LPAREN reduce 166 + LSQBRACKET reduce 166 + PERIOD reduce 166 + SEMICOLON reduce 166 + NAME reduce 166 + COLON reduce 166 + FUNCTION reduce 166 + RPAREN reduce 166 + LBRACKET reduce 166 + VAR reduce 166 + NUMBER reduce 166 + RSQBRACKET reduce 166 + KILLS reduce 166 + TRGCONST reduce 166 + L2V reduce 166 + MAPSTRING reduce 166 + UNIT reduce 166 + SWITCH reduce 166 + LOCATION reduce 166 + STATTXTTBL reduce 166 + VARRAY reduce 166 + STATIC reduce 166 + CONST reduce 166 + INC reduce 166 + DEC reduce 166 + ONCE reduce 166 + IF reduce 166 + SWITCHCASE reduce 166 + WHILE reduce 166 + FOR reduce 166 + FOREACH reduce 166 + CONTINUE reduce 166 + BREAK reduce 166 + RETURN reduce 166 + ACTIONNAME reduce 166 -State 178: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - (123) nonConstExpr ::= constExpr PLUS nonConstExpr * - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - DIVIDE shift 89 - MULTIPLY shift 90 - MOD shift 88 - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 123 - -State 179: +State 202: constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - (140) constExpr ::= constExpr RSHIFT constExpr * + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + (162) logicExpr ::= nonConstExpr EQ constExpr * + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 162 + COMMA reduce 162 + LOR reduce 162 + LAND reduce 162 + EQ error + EQ reduce 162 + LE error + LE reduce 162 + LT error + LT reduce 162 + GE error + GE reduce 162 + GT error + GT reduce 162 + NE error + NE reduce 162 + BITOR shift 102 + BITOR reduce 162 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 162 -- dropped by precedence + BITAND shift 103 + BITAND reduce 162 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 162 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 162 -- dropped by precedence + PLUS shift 113 + PLUS reduce 162 -- dropped by precedence + MINUS shift 112 + MINUS reduce 162 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 162 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 162 -- dropped by precedence + MOD shift 106 + MOD reduce 162 -- dropped by precedence + BITNOT reduce 162 + LPAREN reduce 162 + LSQBRACKET reduce 162 + PERIOD reduce 162 + SEMICOLON reduce 162 + NAME reduce 162 + COLON reduce 162 + FUNCTION reduce 162 + RPAREN reduce 162 + LBRACKET reduce 162 + VAR reduce 162 + NUMBER reduce 162 + RSQBRACKET reduce 162 + KILLS reduce 162 + TRGCONST reduce 162 + L2V reduce 162 + MAPSTRING reduce 162 + UNIT reduce 162 + SWITCH reduce 162 + LOCATION reduce 162 + STATTXTTBL reduce 162 + VARRAY reduce 162 + STATIC reduce 162 + CONST reduce 162 + INC reduce 162 + DEC reduce 162 + ONCE reduce 162 + IF reduce 162 + SWITCHCASE reduce 162 + WHILE reduce 162 + FOR reduce 162 + FOREACH reduce 162 + CONTINUE reduce 162 + BREAK reduce 162 + RETURN reduce 162 + ACTIONNAME reduce 162 - PLUS shift 136 - MINUS shift 134 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - {default} reduce 140 - -State 180: +State 203: constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - (137) constExpr ::= constExpr LSHIFT constExpr * + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + (180) constExpr ::= constExpr GT constExpr * + + QMARK reduce 180 + COMMA reduce 180 + LOR reduce 180 + LAND reduce 180 + EQ error + EQ reduce 180 + LE error + LE reduce 180 + LT error + LT reduce 180 + GE error + GE reduce 180 + GT error + GT reduce 180 + NE error + NE reduce 180 + BITOR shift 102 + BITOR reduce 180 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 180 -- dropped by precedence + BITAND shift 103 + BITAND reduce 180 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 180 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 180 -- dropped by precedence + PLUS shift 113 + PLUS reduce 180 -- dropped by precedence + MINUS shift 112 + MINUS reduce 180 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 180 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 180 -- dropped by precedence + MOD shift 106 + MOD reduce 180 -- dropped by precedence + BITNOT reduce 180 + LPAREN reduce 180 + LSQBRACKET reduce 180 + PERIOD reduce 180 + SEMICOLON reduce 180 + NAME reduce 180 + COLON reduce 180 + FUNCTION reduce 180 + RPAREN reduce 180 + LBRACKET reduce 180 + VAR reduce 180 + NUMBER reduce 180 + RSQBRACKET reduce 180 + KILLS reduce 180 + TRGCONST reduce 180 + L2V reduce 180 + MAPSTRING reduce 180 + UNIT reduce 180 + SWITCH reduce 180 + LOCATION reduce 180 + STATTXTTBL reduce 180 + VARRAY reduce 180 + STATIC reduce 180 + CONST reduce 180 + INC reduce 180 + DEC reduce 180 + ONCE reduce 180 + IF reduce 180 + SWITCHCASE reduce 180 + WHILE reduce 180 + FOR reduce 180 + FOREACH reduce 180 + CONTINUE reduce 180 + BREAK reduce 180 + RETURN reduce 180 + ACTIONNAME reduce 180 - PLUS shift 136 - MINUS shift 134 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - {default} reduce 137 - -State 181: +State 204: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17452,7 +20267,6 @@ State 181: constExpr ::= constExpr * LSHIFT constExpr nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - (140) constExpr ::= constExpr RSHIFT constExpr * nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr nonConstExpr ::= constExpr * BITAND nonConstExpr @@ -17460,23 +20274,88 @@ State 181: nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - PLUS shift 115 - MINUS shift 109 + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + (176) constExpr ::= constExpr LT constExpr * + constExpr ::= constExpr * GT constExpr + + QMARK reduce 176 + COMMA reduce 176 + LOR reduce 176 + LAND reduce 176 + EQ error + EQ reduce 176 + LE error + LE reduce 176 + LT error + LT reduce 176 + GE error + GE reduce 176 + GT error + GT reduce 176 + NE error + NE reduce 176 + BITOR shift 102 + BITOR reduce 176 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 176 -- dropped by precedence + BITAND shift 103 + BITAND reduce 176 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 176 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 176 -- dropped by precedence + PLUS shift 113 + PLUS reduce 176 -- dropped by precedence + MINUS shift 112 + MINUS reduce 176 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 176 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 176 -- dropped by precedence MOD shift 106 - {default} reduce 140 + MOD reduce 176 -- dropped by precedence + BITNOT reduce 176 + LPAREN reduce 176 + LSQBRACKET reduce 176 + PERIOD reduce 176 + SEMICOLON reduce 176 + NAME reduce 176 + COLON reduce 176 + FUNCTION reduce 176 + RPAREN reduce 176 + LBRACKET reduce 176 + VAR reduce 176 + NUMBER reduce 176 + RSQBRACKET reduce 176 + KILLS reduce 176 + TRGCONST reduce 176 + L2V reduce 176 + MAPSTRING reduce 176 + UNIT reduce 176 + SWITCH reduce 176 + LOCATION reduce 176 + STATTXTTBL reduce 176 + VARRAY reduce 176 + STATIC reduce 176 + CONST reduce 176 + INC reduce 176 + DEC reduce 176 + ONCE reduce 176 + IF reduce 176 + SWITCHCASE reduce 176 + WHILE reduce 176 + FOR reduce 176 + FOREACH reduce 176 + CONTINUE reduce 176 + BREAK reduce 176 + RETURN reduce 176 + ACTIONNAME reduce 176 -State 182: +State 205: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17488,7 +20367,6 @@ State 182: constExpr ::= constExpr * MOD constExpr nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - (137) constExpr ::= constExpr LSHIFT constExpr * nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr nonConstExpr ::= constExpr * RSHIFT nonConstExpr @@ -17498,72 +20376,293 @@ State 182: nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - PLUS shift 115 - MINUS shift 109 + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + (172) constExpr ::= constExpr GE constExpr * + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 172 + COMMA reduce 172 + LOR reduce 172 + LAND reduce 172 + EQ error + EQ reduce 172 + LE error + LE reduce 172 + LT error + LT reduce 172 + GE error + GE reduce 172 + GT error + GT reduce 172 + NE error + NE reduce 172 + BITOR shift 102 + BITOR reduce 172 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 172 -- dropped by precedence + BITAND shift 103 + BITAND reduce 172 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 172 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 172 -- dropped by precedence + PLUS shift 113 + PLUS reduce 172 -- dropped by precedence + MINUS shift 112 + MINUS reduce 172 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 172 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 172 -- dropped by precedence MOD shift 106 - {default} reduce 137 - -State 183: - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (104) funcexprStmt ::= funcexpr * - (107) nonConstExpr ::= funcexpr * - - COMMA reduce 104 - LSQBRACKET shift 318 - SEMICOLON reduce 104 - RPAREN reduce 104 - {default} reduce 107 + MOD reduce 172 -- dropped by precedence + BITNOT reduce 172 + LPAREN reduce 172 + LSQBRACKET reduce 172 + PERIOD reduce 172 + SEMICOLON reduce 172 + NAME reduce 172 + COLON reduce 172 + FUNCTION reduce 172 + RPAREN reduce 172 + LBRACKET reduce 172 + VAR reduce 172 + NUMBER reduce 172 + RSQBRACKET reduce 172 + KILLS reduce 172 + TRGCONST reduce 172 + L2V reduce 172 + MAPSTRING reduce 172 + UNIT reduce 172 + SWITCH reduce 172 + LOCATION reduce 172 + STATTXTTBL reduce 172 + VARRAY reduce 172 + STATIC reduce 172 + CONST reduce 172 + INC reduce 172 + DEC reduce 172 + ONCE reduce 172 + IF reduce 172 + SWITCHCASE reduce 172 + WHILE reduce 172 + FOR reduce 172 + FOREACH reduce 172 + CONTINUE reduce 172 + BREAK reduce 172 + RETURN reduce 172 + ACTIONNAME reduce 172 -State 184: +State 206: constExpr ::= constExpr * PLUS constExpr - (122) constExpr ::= constExpr PLUS constExpr * + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + (168) constExpr ::= constExpr LE constExpr * + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 168 + COMMA reduce 168 + LOR reduce 168 + LAND reduce 168 + EQ error + EQ reduce 168 + LE error + LE reduce 168 + LT error + LT reduce 168 + GE error + GE reduce 168 + GT error + GT reduce 168 + NE error + NE reduce 168 + BITOR shift 102 + BITOR reduce 168 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 168 -- dropped by precedence + BITAND shift 103 + BITAND reduce 168 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 168 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 168 -- dropped by precedence + PLUS shift 113 + PLUS reduce 168 -- dropped by precedence + MINUS shift 112 + MINUS reduce 168 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 168 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 168 -- dropped by precedence + MOD shift 106 + MOD reduce 168 -- dropped by precedence + BITNOT reduce 168 + LPAREN reduce 168 + LSQBRACKET reduce 168 + PERIOD reduce 168 + SEMICOLON reduce 168 + NAME reduce 168 + COLON reduce 168 + FUNCTION reduce 168 + RPAREN reduce 168 + LBRACKET reduce 168 + VAR reduce 168 + NUMBER reduce 168 + RSQBRACKET reduce 168 + KILLS reduce 168 + TRGCONST reduce 168 + L2V reduce 168 + MAPSTRING reduce 168 + UNIT reduce 168 + SWITCH reduce 168 + LOCATION reduce 168 + STATTXTTBL reduce 168 + VARRAY reduce 168 + STATIC reduce 168 + CONST reduce 168 + INC reduce 168 + DEC reduce 168 + ONCE reduce 168 + IF reduce 168 + SWITCHCASE reduce 168 + WHILE reduce 168 + FOR reduce 168 + FOREACH reduce 168 + CONTINUE reduce 168 + BREAK reduce 168 + RETURN reduce 168 + ACTIONNAME reduce 168 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - {default} reduce 122 - -State 185: +State 207: constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - (125) constExpr ::= constExpr MINUS constExpr * + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + (164) constExpr ::= constExpr NE constExpr * + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 164 + COMMA reduce 164 + LOR reduce 164 + LAND reduce 164 + EQ error + EQ reduce 164 + LE error + LE reduce 164 + LT error + LT reduce 164 + GE error + GE reduce 164 + GT error + GT reduce 164 + NE error + NE reduce 164 + BITOR shift 102 + BITOR reduce 164 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 164 -- dropped by precedence + BITAND shift 103 + BITAND reduce 164 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 164 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 164 -- dropped by precedence + PLUS shift 113 + PLUS reduce 164 -- dropped by precedence + MINUS shift 112 + MINUS reduce 164 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 164 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 164 -- dropped by precedence + MOD shift 106 + MOD reduce 164 -- dropped by precedence + BITNOT reduce 164 + LPAREN reduce 164 + LSQBRACKET reduce 164 + PERIOD reduce 164 + SEMICOLON reduce 164 + NAME reduce 164 + COLON reduce 164 + FUNCTION reduce 164 + RPAREN reduce 164 + LBRACKET reduce 164 + VAR reduce 164 + NUMBER reduce 164 + RSQBRACKET reduce 164 + KILLS reduce 164 + TRGCONST reduce 164 + L2V reduce 164 + MAPSTRING reduce 164 + UNIT reduce 164 + SWITCH reduce 164 + LOCATION reduce 164 + STATTXTTBL reduce 164 + VARRAY reduce 164 + STATIC reduce 164 + CONST reduce 164 + INC reduce 164 + DEC reduce 164 + ONCE reduce 164 + IF reduce 164 + SWITCHCASE reduce 164 + WHILE reduce 164 + FOR reduce 164 + FOREACH reduce 164 + CONTINUE reduce 164 + BREAK reduce 164 + RETURN reduce 164 + ACTIONNAME reduce 164 - DIVIDE shift 132 - MULTIPLY shift 133 - MOD shift 131 - {default} reduce 125 - -State 186: +State 208: constExpr ::= constExpr * PLUS constExpr - (122) constExpr ::= constExpr PLUS constExpr * nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr nonConstExpr ::= constExpr * MINUS nonConstExpr @@ -17583,59 +20682,768 @@ State 186: nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - + constExpr ::= constExpr * EQ constExpr + (160) constExpr ::= constExpr EQ constExpr * + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 160 + COMMA reduce 160 + LOR reduce 160 + LAND reduce 160 + EQ error + EQ reduce 160 + LE error + LE reduce 160 + LT error + LT reduce 160 + GE error + GE reduce 160 + GT error + GT reduce 160 + NE error + NE reduce 160 + BITOR shift 102 + BITOR reduce 160 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 160 -- dropped by precedence + BITAND shift 103 + BITAND reduce 160 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 160 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 160 -- dropped by precedence + PLUS shift 113 + PLUS reduce 160 -- dropped by precedence + MINUS shift 112 + MINUS reduce 160 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 160 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 160 -- dropped by precedence MOD shift 106 - {default} reduce 122 - -State 187: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - (135) nonConstExpr ::= constExpr MOD nonConstExpr * - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 135 + MOD reduce 160 -- dropped by precedence + BITNOT reduce 160 + LPAREN reduce 160 + LSQBRACKET reduce 160 + PERIOD reduce 160 + SEMICOLON reduce 160 + NAME reduce 160 + COLON reduce 160 + FUNCTION reduce 160 + RPAREN reduce 160 + LBRACKET reduce 160 + VAR reduce 160 + NUMBER reduce 160 + RSQBRACKET reduce 160 + KILLS reduce 160 + TRGCONST reduce 160 + L2V reduce 160 + MAPSTRING reduce 160 + UNIT reduce 160 + SWITCH reduce 160 + LOCATION reduce 160 + STATTXTTBL reduce 160 + VARRAY reduce 160 + STATIC reduce 160 + CONST reduce 160 + INC reduce 160 + DEC reduce 160 + ONCE reduce 160 + IF reduce 160 + SWITCHCASE reduce 160 + WHILE reduce 160 + FOR reduce 160 + FOREACH reduce 160 + CONTINUE reduce 160 + BREAK reduce 160 + RETURN reduce 160 + ACTIONNAME reduce 160 -State 188: +State 209: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + (160) constExpr ::= constExpr EQ constExpr * + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 160 + COMMA reduce 160 + LOR reduce 160 + LAND reduce 160 + EQ error + EQ reduce 160 + LE error + LE reduce 160 + LT error + LT reduce 160 + GE error + GE reduce 160 + GT error + GT reduce 160 + NE error + NE reduce 160 + BITOR shift 128 + BITOR reduce 160 -- dropped by precedence + BITXOR shift 127 + BITXOR reduce 160 -- dropped by precedence + BITAND shift 129 + BITAND reduce 160 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 160 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 160 -- dropped by precedence + PLUS shift 136 + PLUS reduce 160 -- dropped by precedence + MINUS shift 135 + MINUS reduce 160 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 160 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 160 -- dropped by precedence + MOD shift 132 + MOD reduce 160 -- dropped by precedence + BITNOT reduce 160 + LPAREN reduce 160 + LSQBRACKET reduce 160 + PERIOD reduce 160 + SEMICOLON reduce 160 + NAME reduce 160 + COLON reduce 160 + FUNCTION reduce 160 + RPAREN reduce 160 + LBRACKET reduce 160 + VAR reduce 160 + NUMBER reduce 160 + RSQBRACKET reduce 160 + KILLS reduce 160 + TRGCONST reduce 160 + L2V reduce 160 + MAPSTRING reduce 160 + UNIT reduce 160 + SWITCH reduce 160 + LOCATION reduce 160 + STATTXTTBL reduce 160 + VARRAY reduce 160 + STATIC reduce 160 + CONST reduce 160 + INC reduce 160 + DEC reduce 160 + ONCE reduce 160 + IF reduce 160 + SWITCHCASE reduce 160 + WHILE reduce 160 + FOR reduce 160 + FOREACH reduce 160 + CONTINUE reduce 160 + BREAK reduce 160 + RETURN reduce 160 + ACTIONNAME reduce 160 + +State 210: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + (180) constExpr ::= constExpr GT constExpr * + + QMARK reduce 180 + COMMA reduce 180 + LOR reduce 180 + LAND reduce 180 + EQ error + EQ reduce 180 + LE error + LE reduce 180 + LT error + LT reduce 180 + GE error + GE reduce 180 + GT error + GT reduce 180 + NE error + NE reduce 180 + BITOR shift 128 + BITOR reduce 180 -- dropped by precedence + BITXOR shift 127 + BITXOR reduce 180 -- dropped by precedence + BITAND shift 129 + BITAND reduce 180 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 180 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 180 -- dropped by precedence + PLUS shift 136 + PLUS reduce 180 -- dropped by precedence + MINUS shift 135 + MINUS reduce 180 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 180 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 180 -- dropped by precedence + MOD shift 132 + MOD reduce 180 -- dropped by precedence + BITNOT reduce 180 + LPAREN reduce 180 + LSQBRACKET reduce 180 + PERIOD reduce 180 + SEMICOLON reduce 180 + NAME reduce 180 + COLON reduce 180 + FUNCTION reduce 180 + RPAREN reduce 180 + LBRACKET reduce 180 + VAR reduce 180 + NUMBER reduce 180 + RSQBRACKET reduce 180 + KILLS reduce 180 + TRGCONST reduce 180 + L2V reduce 180 + MAPSTRING reduce 180 + UNIT reduce 180 + SWITCH reduce 180 + LOCATION reduce 180 + STATTXTTBL reduce 180 + VARRAY reduce 180 + STATIC reduce 180 + CONST reduce 180 + INC reduce 180 + DEC reduce 180 + ONCE reduce 180 + IF reduce 180 + SWITCHCASE reduce 180 + WHILE reduce 180 + FOR reduce 180 + FOREACH reduce 180 + CONTINUE reduce 180 + BREAK reduce 180 + RETURN reduce 180 + ACTIONNAME reduce 180 + +State 211: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + (176) constExpr ::= constExpr LT constExpr * + constExpr ::= constExpr * GT constExpr + + QMARK reduce 176 + COMMA reduce 176 + LOR reduce 176 + LAND reduce 176 + EQ error + EQ reduce 176 + LE error + LE reduce 176 + LT error + LT reduce 176 + GE error + GE reduce 176 + GT error + GT reduce 176 + NE error + NE reduce 176 + BITOR shift 128 + BITOR reduce 176 -- dropped by precedence + BITXOR shift 127 + BITXOR reduce 176 -- dropped by precedence + BITAND shift 129 + BITAND reduce 176 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 176 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 176 -- dropped by precedence + PLUS shift 136 + PLUS reduce 176 -- dropped by precedence + MINUS shift 135 + MINUS reduce 176 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 176 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 176 -- dropped by precedence + MOD shift 132 + MOD reduce 176 -- dropped by precedence + BITNOT reduce 176 + LPAREN reduce 176 + LSQBRACKET reduce 176 + PERIOD reduce 176 + SEMICOLON reduce 176 + NAME reduce 176 + COLON reduce 176 + FUNCTION reduce 176 + RPAREN reduce 176 + LBRACKET reduce 176 + VAR reduce 176 + NUMBER reduce 176 + RSQBRACKET reduce 176 + KILLS reduce 176 + TRGCONST reduce 176 + L2V reduce 176 + MAPSTRING reduce 176 + UNIT reduce 176 + SWITCH reduce 176 + LOCATION reduce 176 + STATTXTTBL reduce 176 + VARRAY reduce 176 + STATIC reduce 176 + CONST reduce 176 + INC reduce 176 + DEC reduce 176 + ONCE reduce 176 + IF reduce 176 + SWITCHCASE reduce 176 + WHILE reduce 176 + FOR reduce 176 + FOREACH reduce 176 + CONTINUE reduce 176 + BREAK reduce 176 + RETURN reduce 176 + ACTIONNAME reduce 176 + +State 212: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + (172) constExpr ::= constExpr GE constExpr * + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 172 + COMMA reduce 172 + LOR reduce 172 + LAND reduce 172 + EQ error + EQ reduce 172 + LE error + LE reduce 172 + LT error + LT reduce 172 + GE error + GE reduce 172 + GT error + GT reduce 172 + NE error + NE reduce 172 + BITOR shift 128 + BITOR reduce 172 -- dropped by precedence + BITXOR shift 127 + BITXOR reduce 172 -- dropped by precedence + BITAND shift 129 + BITAND reduce 172 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 172 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 172 -- dropped by precedence + PLUS shift 136 + PLUS reduce 172 -- dropped by precedence + MINUS shift 135 + MINUS reduce 172 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 172 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 172 -- dropped by precedence + MOD shift 132 + MOD reduce 172 -- dropped by precedence + BITNOT reduce 172 + LPAREN reduce 172 + LSQBRACKET reduce 172 + PERIOD reduce 172 + SEMICOLON reduce 172 + NAME reduce 172 + COLON reduce 172 + FUNCTION reduce 172 + RPAREN reduce 172 + LBRACKET reduce 172 + VAR reduce 172 + NUMBER reduce 172 + RSQBRACKET reduce 172 + KILLS reduce 172 + TRGCONST reduce 172 + L2V reduce 172 + MAPSTRING reduce 172 + UNIT reduce 172 + SWITCH reduce 172 + LOCATION reduce 172 + STATTXTTBL reduce 172 + VARRAY reduce 172 + STATIC reduce 172 + CONST reduce 172 + INC reduce 172 + DEC reduce 172 + ONCE reduce 172 + IF reduce 172 + SWITCHCASE reduce 172 + WHILE reduce 172 + FOR reduce 172 + FOREACH reduce 172 + CONTINUE reduce 172 + BREAK reduce 172 + RETURN reduce 172 + ACTIONNAME reduce 172 + +State 213: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + (168) constExpr ::= constExpr LE constExpr * + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 168 + COMMA reduce 168 + LOR reduce 168 + LAND reduce 168 + EQ error + EQ reduce 168 + LE error + LE reduce 168 + LT error + LT reduce 168 + GE error + GE reduce 168 + GT error + GT reduce 168 + NE error + NE reduce 168 + BITOR shift 128 + BITOR reduce 168 -- dropped by precedence + BITXOR shift 127 + BITXOR reduce 168 -- dropped by precedence + BITAND shift 129 + BITAND reduce 168 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 168 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 168 -- dropped by precedence + PLUS shift 136 + PLUS reduce 168 -- dropped by precedence + MINUS shift 135 + MINUS reduce 168 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 168 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 168 -- dropped by precedence + MOD shift 132 + MOD reduce 168 -- dropped by precedence + BITNOT reduce 168 + LPAREN reduce 168 + LSQBRACKET reduce 168 + PERIOD reduce 168 + SEMICOLON reduce 168 + NAME reduce 168 + COLON reduce 168 + FUNCTION reduce 168 + RPAREN reduce 168 + LBRACKET reduce 168 + VAR reduce 168 + NUMBER reduce 168 + RSQBRACKET reduce 168 + KILLS reduce 168 + TRGCONST reduce 168 + L2V reduce 168 + MAPSTRING reduce 168 + UNIT reduce 168 + SWITCH reduce 168 + LOCATION reduce 168 + STATTXTTBL reduce 168 + VARRAY reduce 168 + STATIC reduce 168 + CONST reduce 168 + INC reduce 168 + DEC reduce 168 + ONCE reduce 168 + IF reduce 168 + SWITCHCASE reduce 168 + WHILE reduce 168 + FOR reduce 168 + FOREACH reduce 168 + CONTINUE reduce 168 + BREAK reduce 168 + RETURN reduce 168 + ACTIONNAME reduce 168 + +State 214: + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + (164) constExpr ::= constExpr NE constExpr * + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 164 + COMMA reduce 164 + LOR reduce 164 + LAND reduce 164 + EQ error + EQ reduce 164 + LE error + LE reduce 164 + LT error + LT reduce 164 + GE error + GE reduce 164 + GT error + GT reduce 164 + NE error + NE reduce 164 + BITOR shift 128 + BITOR reduce 164 -- dropped by precedence + BITXOR shift 127 + BITXOR reduce 164 -- dropped by precedence + BITAND shift 129 + BITAND reduce 164 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 164 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 164 -- dropped by precedence + PLUS shift 136 + PLUS reduce 164 -- dropped by precedence + MINUS shift 135 + MINUS reduce 164 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 164 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 164 -- dropped by precedence + MOD shift 132 + MOD reduce 164 -- dropped by precedence + BITNOT reduce 164 + LPAREN reduce 164 + LSQBRACKET reduce 164 + PERIOD reduce 164 + SEMICOLON reduce 164 + NAME reduce 164 + COLON reduce 164 + FUNCTION reduce 164 + RPAREN reduce 164 + LBRACKET reduce 164 + VAR reduce 164 + NUMBER reduce 164 + RSQBRACKET reduce 164 + KILLS reduce 164 + TRGCONST reduce 164 + L2V reduce 164 + MAPSTRING reduce 164 + UNIT reduce 164 + SWITCH reduce 164 + LOCATION reduce 164 + STATTXTTBL reduce 164 + VARRAY reduce 164 + STATIC reduce 164 + CONST reduce 164 + INC reduce 164 + DEC reduce 164 + ONCE reduce 164 + IF reduce 164 + SWITCHCASE reduce 164 + WHILE reduce 164 + FOR reduce 164 + FOREACH reduce 164 + CONTINUE reduce 164 + BREAK reduce 164 + RETURN reduce 164 + ACTIONNAME reduce 164 + +State 215: + (272) logicExpr ::= KILLS LPAREN fArgs RPAREN * + + QMARK reduce 272 + COMMA reduce 272 + LOR reduce 272 + LAND reduce 272 + EQ reduce 272 + LE reduce 272 + LT reduce 272 + GE reduce 272 + GT reduce 272 + NE reduce 272 + BITOR reduce 272 + BITXOR reduce 272 + BITAND reduce 272 + LSHIFT reduce 272 + RSHIFT reduce 272 + PLUS reduce 272 + MINUS reduce 272 + DIVIDE reduce 272 + MULTIPLY reduce 272 + MOD reduce 272 + BITNOT reduce 272 + LPAREN reduce 272 + LSQBRACKET reduce 272 + PERIOD reduce 272 + SEMICOLON reduce 272 + NAME reduce 272 + COLON reduce 272 + FUNCTION reduce 272 + RPAREN reduce 272 + LBRACKET reduce 272 + VAR reduce 272 + NUMBER reduce 272 + RSQBRACKET reduce 272 + KILLS reduce 272 + TRGCONST reduce 272 + L2V reduce 272 + MAPSTRING reduce 272 + UNIT reduce 272 + SWITCH reduce 272 + LOCATION reduce 272 + STATTXTTBL reduce 272 + VARRAY reduce 272 + STATIC reduce 272 + CONST reduce 272 + INC reduce 272 + DEC reduce 272 + ONCE reduce 272 + IF reduce 272 + SWITCHCASE reduce 272 + WHILE reduce 272 + FOR reduce 272 + FOREACH reduce 272 + CONTINUE reduce 272 + BREAK reduce 272 + RETURN reduce 272 + ACTIONNAME reduce 272 + +State 216: + (107) funcexpr ::= NAME LPAREN fArgs RPAREN * + + QMARK reduce 107 + COMMA reduce 107 + LOR reduce 107 + LAND reduce 107 + EQ reduce 107 + LE reduce 107 + LT reduce 107 + GE reduce 107 + GT reduce 107 + NE reduce 107 + BITOR reduce 107 + BITXOR reduce 107 + BITAND reduce 107 + LSHIFT reduce 107 + RSHIFT reduce 107 + PLUS reduce 107 + MINUS reduce 107 + DIVIDE reduce 107 + MULTIPLY reduce 107 + MOD reduce 107 + BITNOT reduce 107 + LPAREN reduce 107 + LSQBRACKET reduce 107 + PERIOD reduce 107 + SEMICOLON reduce 107 + NAME reduce 107 + COLON reduce 107 + FUNCTION reduce 107 + RPAREN reduce 107 + LBRACKET reduce 107 + VAR reduce 107 + NUMBER reduce 107 + RSQBRACKET reduce 107 + KILLS reduce 107 + TRGCONST reduce 107 + L2V reduce 107 + MAPSTRING reduce 107 + UNIT reduce 107 + SWITCH reduce 107 + LOCATION reduce 107 + STATTXTTBL reduce 107 + VARRAY reduce 107 + STATIC reduce 107 + CONST reduce 107 + INC reduce 107 + DEC reduce 107 + ONCE reduce 107 + IF reduce 107 + SWITCHCASE reduce 107 + WHILE reduce 107 + FOR reduce 107 + FOREACH reduce 107 + CONTINUE reduce 107 + BREAK reduce 107 + RETURN reduce 107 + ACTIONNAME reduce 107 + +State 217: nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN nonConstExpr ::= nonConstExpr * QMARK expr COLON expr nonConstExpr ::= nonConstExpr * PLUS expr nonConstExpr ::= nonConstExpr * MINUS expr nonConstExpr ::= nonConstExpr * MULTIPLY expr - (132) nonConstExpr ::= constExpr DIVIDE nonConstExpr * nonConstExpr ::= nonConstExpr * DIVIDE expr nonConstExpr ::= nonConstExpr * MOD expr nonConstExpr ::= nonConstExpr * LSHIFT expr @@ -17643,28 +21451,87 @@ State 188: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 132 + (183) logicExpr ::= nonConstExpr GT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 183 + COMMA reduce 183 + LOR reduce 183 + LAND reduce 183 + EQ reduce 183 + LE reduce 183 + LT reduce 183 + GE reduce 183 + GT reduce 183 + NE reduce 183 + BITOR shift 66 + BITOR reduce 183 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 183 -- dropped by precedence + BITAND shift 67 + BITAND reduce 183 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 183 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 183 -- dropped by precedence + PLUS shift 74 + PLUS reduce 183 -- dropped by precedence + MINUS shift 73 + MINUS reduce 183 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 183 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 183 -- dropped by precedence + MOD shift 70 + MOD reduce 183 -- dropped by precedence + BITNOT reduce 183 + LPAREN shift 23 + LPAREN reduce 183 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 183 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 183 -- dropped by precedence + SEMICOLON reduce 183 + NAME reduce 183 + COLON reduce 183 + FUNCTION reduce 183 + RPAREN reduce 183 + LBRACKET reduce 183 + VAR reduce 183 + NUMBER reduce 183 + RSQBRACKET reduce 183 + KILLS reduce 183 + TRGCONST reduce 183 + L2V reduce 183 + MAPSTRING reduce 183 + UNIT reduce 183 + SWITCH reduce 183 + LOCATION reduce 183 + STATTXTTBL reduce 183 + VARRAY reduce 183 + STATIC reduce 183 + CONST reduce 183 + INC reduce 183 + DEC reduce 183 + ONCE reduce 183 + IF reduce 183 + SWITCHCASE reduce 183 + WHILE reduce 183 + FOR reduce 183 + FOREACH reduce 183 + CONTINUE reduce 183 + BREAK reduce 183 + RETURN reduce 183 + ACTIONNAME reduce 183 -State 189: +State 218: nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN nonConstExpr ::= nonConstExpr * QMARK expr COLON expr nonConstExpr ::= nonConstExpr * PLUS expr nonConstExpr ::= nonConstExpr * MINUS expr - (129) nonConstExpr ::= constExpr MULTIPLY nonConstExpr * nonConstExpr ::= nonConstExpr * MULTIPLY expr nonConstExpr ::= nonConstExpr * DIVIDE expr nonConstExpr ::= nonConstExpr * MOD expr @@ -17673,58 +21540,82 @@ State 189: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 129 - -State 190: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - (125) constExpr ::= constExpr MINUS constExpr * - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 125 + (179) logicExpr ::= nonConstExpr LT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 179 + COMMA reduce 179 + LOR reduce 179 + LAND reduce 179 + EQ reduce 179 + LE reduce 179 + LT reduce 179 + GE reduce 179 + GT reduce 179 + NE reduce 179 + BITOR shift 66 + BITOR reduce 179 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 179 -- dropped by precedence + BITAND shift 67 + BITAND reduce 179 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 179 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 179 -- dropped by precedence + PLUS shift 74 + PLUS reduce 179 -- dropped by precedence + MINUS shift 73 + MINUS reduce 179 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 179 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 179 -- dropped by precedence + MOD shift 70 + MOD reduce 179 -- dropped by precedence + BITNOT reduce 179 + LPAREN shift 23 + LPAREN reduce 179 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 179 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 179 -- dropped by precedence + SEMICOLON reduce 179 + NAME reduce 179 + COLON reduce 179 + FUNCTION reduce 179 + RPAREN reduce 179 + LBRACKET reduce 179 + VAR reduce 179 + NUMBER reduce 179 + RSQBRACKET reduce 179 + KILLS reduce 179 + TRGCONST reduce 179 + L2V reduce 179 + MAPSTRING reduce 179 + UNIT reduce 179 + SWITCH reduce 179 + LOCATION reduce 179 + STATTXTTBL reduce 179 + VARRAY reduce 179 + STATIC reduce 179 + CONST reduce 179 + INC reduce 179 + DEC reduce 179 + ONCE reduce 179 + IF reduce 179 + SWITCHCASE reduce 179 + WHILE reduce 179 + FOR reduce 179 + FOREACH reduce 179 + CONTINUE reduce 179 + BREAK reduce 179 + RETURN reduce 179 + ACTIONNAME reduce 179 -State 191: +State 219: nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN nonConstExpr ::= nonConstExpr * QMARK expr COLON expr @@ -17738,23 +21629,82 @@ State 191: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - (175) nonConstExpr ::= LNOT nonConstExpr * - - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 175 + (175) logicExpr ::= nonConstExpr GE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 175 + COMMA reduce 175 + LOR reduce 175 + LAND reduce 175 + EQ reduce 175 + LE reduce 175 + LT reduce 175 + GE reduce 175 + GT reduce 175 + NE reduce 175 + BITOR shift 66 + BITOR reduce 175 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 175 -- dropped by precedence + BITAND shift 67 + BITAND reduce 175 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 175 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 175 -- dropped by precedence + PLUS shift 74 + PLUS reduce 175 -- dropped by precedence + MINUS shift 73 + MINUS reduce 175 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 175 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 175 -- dropped by precedence + MOD shift 70 + MOD reduce 175 -- dropped by precedence + BITNOT reduce 175 + LPAREN shift 23 + LPAREN reduce 175 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 175 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 175 -- dropped by precedence + SEMICOLON reduce 175 + NAME reduce 175 + COLON reduce 175 + FUNCTION reduce 175 + RPAREN reduce 175 + LBRACKET reduce 175 + VAR reduce 175 + NUMBER reduce 175 + RSQBRACKET reduce 175 + KILLS reduce 175 + TRGCONST reduce 175 + L2V reduce 175 + MAPSTRING reduce 175 + UNIT reduce 175 + SWITCH reduce 175 + LOCATION reduce 175 + STATTXTTBL reduce 175 + VARRAY reduce 175 + STATIC reduce 175 + CONST reduce 175 + INC reduce 175 + DEC reduce 175 + ONCE reduce 175 + IF reduce 175 + SWITCHCASE reduce 175 + WHILE reduce 175 + FOR reduce 175 + FOREACH reduce 175 + CONTINUE reduce 175 + BREAK reduce 175 + RETURN reduce 175 + ACTIONNAME reduce 175 -State 192: +State 220: nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN nonConstExpr ::= nonConstExpr * QMARK expr COLON expr @@ -17768,23 +21718,82 @@ State 192: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (157) nonConstExpr ::= BITNOT nonConstExpr * - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 157 + (171) logicExpr ::= nonConstExpr LE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 171 + COMMA reduce 171 + LOR reduce 171 + LAND reduce 171 + EQ reduce 171 + LE reduce 171 + LT reduce 171 + GE reduce 171 + GT reduce 171 + NE reduce 171 + BITOR shift 66 + BITOR reduce 171 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 171 -- dropped by precedence + BITAND shift 67 + BITAND reduce 171 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 171 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 171 -- dropped by precedence + PLUS shift 74 + PLUS reduce 171 -- dropped by precedence + MINUS shift 73 + MINUS reduce 171 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 171 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 171 -- dropped by precedence + MOD shift 70 + MOD reduce 171 -- dropped by precedence + BITNOT reduce 171 + LPAREN shift 23 + LPAREN reduce 171 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 171 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 171 -- dropped by precedence + SEMICOLON reduce 171 + NAME reduce 171 + COLON reduce 171 + FUNCTION reduce 171 + RPAREN reduce 171 + LBRACKET reduce 171 + VAR reduce 171 + NUMBER reduce 171 + RSQBRACKET reduce 171 + KILLS reduce 171 + TRGCONST reduce 171 + L2V reduce 171 + MAPSTRING reduce 171 + UNIT reduce 171 + SWITCH reduce 171 + LOCATION reduce 171 + STATTXTTBL reduce 171 + VARRAY reduce 171 + STATIC reduce 171 + CONST reduce 171 + INC reduce 171 + DEC reduce 171 + ONCE reduce 171 + IF reduce 171 + SWITCHCASE reduce 171 + WHILE reduce 171 + FOR reduce 171 + FOREACH reduce 171 + CONTINUE reduce 171 + BREAK reduce 171 + RETURN reduce 171 + ACTIONNAME reduce 171 -State 193: +State 221: nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN nonConstExpr ::= nonConstExpr * QMARK expr COLON expr @@ -17798,23 +21807,82 @@ State 193: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (155) nonConstExpr ::= MINUS nonConstExpr * - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 155 + (167) logicExpr ::= nonConstExpr NE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 167 + COMMA reduce 167 + LOR reduce 167 + LAND reduce 167 + EQ reduce 167 + LE reduce 167 + LT reduce 167 + GE reduce 167 + GT reduce 167 + NE reduce 167 + BITOR shift 66 + BITOR reduce 167 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 167 -- dropped by precedence + BITAND shift 67 + BITAND reduce 167 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 167 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 167 -- dropped by precedence + PLUS shift 74 + PLUS reduce 167 -- dropped by precedence + MINUS shift 73 + MINUS reduce 167 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 167 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 167 -- dropped by precedence + MOD shift 70 + MOD reduce 167 -- dropped by precedence + BITNOT reduce 167 + LPAREN shift 23 + LPAREN reduce 167 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 167 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 167 -- dropped by precedence + SEMICOLON reduce 167 + NAME reduce 167 + COLON reduce 167 + FUNCTION reduce 167 + RPAREN reduce 167 + LBRACKET reduce 167 + VAR reduce 167 + NUMBER reduce 167 + RSQBRACKET reduce 167 + KILLS reduce 167 + TRGCONST reduce 167 + L2V reduce 167 + MAPSTRING reduce 167 + UNIT reduce 167 + SWITCH reduce 167 + LOCATION reduce 167 + STATTXTTBL reduce 167 + VARRAY reduce 167 + STATIC reduce 167 + CONST reduce 167 + INC reduce 167 + DEC reduce 167 + ONCE reduce 167 + IF reduce 167 + SWITCHCASE reduce 167 + WHILE reduce 167 + FOR reduce 167 + FOREACH reduce 167 + CONTINUE reduce 167 + BREAK reduce 167 + RETURN reduce 167 + ACTIONNAME reduce 167 -State 194: +State 222: nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN nonConstExpr ::= nonConstExpr * QMARK expr COLON expr @@ -17828,2100 +21896,9615 @@ State 194: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (153) nonConstExpr ::= PLUS nonConstExpr * - nonConstExpr ::= nonConstExpr * EQ expr - nonConstExpr ::= nonConstExpr * NE expr - nonConstExpr ::= nonConstExpr * LE expr - nonConstExpr ::= nonConstExpr * GE expr - nonConstExpr ::= nonConstExpr * LT expr - nonConstExpr ::= nonConstExpr * GT expr - nonConstExpr ::= nonConstExpr * LAND expr - nonConstExpr ::= nonConstExpr * LOR expr - - LPAREN shift 26 - LSQBRACKET shift 97 - PERIOD shift 312 - {default} reduce 153 - -State 195: - relimp_path ::= relimp_path * PERIOD NAME - relimp_chunk ::= relimp_path * SEMICOLON - relimp_chunk ::= relimp_path * AS NAME SEMICOLON - - PERIOD shift 326 - SEMICOLON shift 517 - AS shift 325 - -State 196: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - cdef_global_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - - ASSIGN shift 32 - COMMA shift 264 - -State 197: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (176) vdef_stmt ::= VAR nameList_nonEmpty * - vdefAssign_global_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - - ASSIGN shift 33 - COMMA shift 264 - {default} reduce 176 + (163) logicExpr ::= nonConstExpr EQ nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 163 + COMMA reduce 163 + LOR reduce 163 + LAND reduce 163 + EQ reduce 163 + LE reduce 163 + LT reduce 163 + GE reduce 163 + GT reduce 163 + NE reduce 163 + BITOR shift 66 + BITOR reduce 163 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 163 -- dropped by precedence + BITAND shift 67 + BITAND reduce 163 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 163 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 163 -- dropped by precedence + PLUS shift 74 + PLUS reduce 163 -- dropped by precedence + MINUS shift 73 + MINUS reduce 163 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 163 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 163 -- dropped by precedence + MOD shift 70 + MOD reduce 163 -- dropped by precedence + BITNOT reduce 163 + LPAREN shift 23 + LPAREN reduce 163 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 163 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 163 -- dropped by precedence + SEMICOLON reduce 163 + NAME reduce 163 + COLON reduce 163 + FUNCTION reduce 163 + RPAREN reduce 163 + LBRACKET reduce 163 + VAR reduce 163 + NUMBER reduce 163 + RSQBRACKET reduce 163 + KILLS reduce 163 + TRGCONST reduce 163 + L2V reduce 163 + MAPSTRING reduce 163 + UNIT reduce 163 + SWITCH reduce 163 + LOCATION reduce 163 + STATTXTTBL reduce 163 + VARRAY reduce 163 + STATIC reduce 163 + CONST reduce 163 + INC reduce 163 + DEC reduce 163 + ONCE reduce 163 + IF reduce 163 + SWITCHCASE reduce 163 + WHILE reduce 163 + FOR reduce 163 + FOREACH reduce 163 + CONTINUE reduce 163 + BREAK reduce 163 + RETURN reduce 163 + ACTIONNAME reduce 163 -State 198: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - - COMMA shift 117 - RPAREN shift 232 +State 223: + (87) constExpr ::= lambdaExprStart stmt * + + QMARK reduce 87 + COMMA reduce 87 + LOR reduce 87 + LAND reduce 87 + EQ reduce 87 + LE reduce 87 + LT reduce 87 + GE reduce 87 + GT reduce 87 + NE reduce 87 + BITOR reduce 87 + BITXOR reduce 87 + BITAND reduce 87 + LSHIFT reduce 87 + RSHIFT reduce 87 + PLUS reduce 87 + MINUS reduce 87 + DIVIDE reduce 87 + MULTIPLY reduce 87 + MOD reduce 87 + BITNOT reduce 87 + LPAREN reduce 87 + LSQBRACKET reduce 87 + PERIOD reduce 87 + SEMICOLON reduce 87 + NAME reduce 87 + COLON reduce 87 + FUNCTION reduce 87 + RPAREN reduce 87 + LBRACKET reduce 87 + VAR reduce 87 + NUMBER reduce 87 + RSQBRACKET reduce 87 + KILLS reduce 87 + TRGCONST reduce 87 + L2V reduce 87 + MAPSTRING reduce 87 + UNIT reduce 87 + SWITCH reduce 87 + LOCATION reduce 87 + STATTXTTBL reduce 87 + VARRAY reduce 87 + STATIC reduce 87 + CONST reduce 87 + INC reduce 87 + DEC reduce 87 + ONCE reduce 87 + IF reduce 87 + SWITCHCASE reduce 87 + WHILE reduce 87 + FOR reduce 87 + FOREACH reduce 87 + CONTINUE reduce 87 + BREAK reduce 87 + RETURN reduce 87 + ACTIONNAME reduce 87 -State 199: - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - (101) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * - actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON +State 224: + constExpr ::= constExpr * PLUS constExpr + (124) constExpr ::= constExpr PLUS constExpr * + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 124 + COMMA reduce 124 + LOR reduce 124 + LAND reduce 124 + EQ shift 138 -- dropped by precedence + EQ reduce 124 + LE shift 125 -- dropped by precedence + LE reduce 124 + LT shift 123 -- dropped by precedence + LT reduce 124 + GE shift 124 -- dropped by precedence + GE reduce 124 + GT shift 122 -- dropped by precedence + GT reduce 124 + NE shift 126 -- dropped by precedence + NE reduce 124 + BITOR shift 102 -- dropped by precedence + BITOR reduce 124 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 124 + BITAND shift 103 -- dropped by precedence + BITAND reduce 124 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 124 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 124 + PLUS shift 113 -- dropped by precedence + PLUS reduce 124 + MINUS shift 112 -- dropped by precedence + MINUS reduce 124 + DIVIDE shift 107 + DIVIDE reduce 124 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 124 -- dropped by precedence + MOD shift 106 + MOD reduce 124 -- dropped by precedence + BITNOT reduce 124 + LPAREN reduce 124 + LSQBRACKET reduce 124 + PERIOD reduce 124 + SEMICOLON reduce 124 + NAME reduce 124 + COLON reduce 124 + FUNCTION reduce 124 + RPAREN reduce 124 + LBRACKET reduce 124 + VAR reduce 124 + NUMBER reduce 124 + RSQBRACKET reduce 124 + KILLS reduce 124 + TRGCONST reduce 124 + L2V reduce 124 + MAPSTRING reduce 124 + UNIT reduce 124 + SWITCH reduce 124 + LOCATION reduce 124 + STATTXTTBL reduce 124 + VARRAY reduce 124 + STATIC reduce 124 + CONST reduce 124 + INC reduce 124 + DEC reduce 124 + ONCE reduce 124 + IF reduce 124 + SWITCHCASE reduce 124 + WHILE reduce 124 + FOR reduce 124 + FOREACH reduce 124 + CONTINUE reduce 124 + BREAK reduce 124 + RETURN reduce 124 + ACTIONNAME reduce 124 - COMMA shift 29 - RPAREN shift 231 +State 225: + (108) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * + + QMARK reduce 108 + COMMA reduce 108 + LOR reduce 108 + LAND reduce 108 + EQ reduce 108 + LE reduce 108 + LT reduce 108 + GE reduce 108 + GT reduce 108 + NE reduce 108 + BITOR reduce 108 + BITXOR reduce 108 + BITAND reduce 108 + LSHIFT reduce 108 + RSHIFT reduce 108 + PLUS reduce 108 + MINUS reduce 108 + DIVIDE reduce 108 + MULTIPLY reduce 108 + MOD reduce 108 + BITNOT reduce 108 + LPAREN reduce 108 + LSQBRACKET reduce 108 + PERIOD reduce 108 + SEMICOLON reduce 108 + NAME reduce 108 + COLON reduce 108 + FUNCTION reduce 108 + RPAREN reduce 108 + LBRACKET reduce 108 + VAR reduce 108 + NUMBER reduce 108 + RSQBRACKET reduce 108 + KILLS reduce 108 + TRGCONST reduce 108 + L2V reduce 108 + MAPSTRING reduce 108 + UNIT reduce 108 + SWITCH reduce 108 + LOCATION reduce 108 + STATTXTTBL reduce 108 + VARRAY reduce 108 + STATIC reduce 108 + CONST reduce 108 + INC reduce 108 + DEC reduce 108 + ONCE reduce 108 + IF reduce 108 + SWITCHCASE reduce 108 + WHILE reduce 108 + FOR reduce 108 + FOREACH reduce 108 + CONTINUE reduce 108 + BREAK reduce 108 + RETURN reduce 108 + ACTIONNAME reduce 108 -State 200: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - (100) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON +State 226: + logicExpr ::= logicExpr * LAND logicExpr + (185) logicExpr ::= logicExpr LAND logicExpr * + logicExpr ::= logicExpr * LOR logicExpr + + QMARK reduce 185 + COMMA reduce 185 + LOR shift 82 -- dropped by precedence + LOR reduce 185 + LAND shift 84 -- dropped by precedence + LAND reduce 185 + EQ reduce 185 + LE reduce 185 + LT reduce 185 + GE reduce 185 + GT reduce 185 + NE reduce 185 + BITOR reduce 185 + BITXOR reduce 185 + BITAND reduce 185 + LSHIFT reduce 185 + RSHIFT reduce 185 + PLUS reduce 185 + MINUS reduce 185 + DIVIDE reduce 185 + MULTIPLY reduce 185 + MOD reduce 185 + BITNOT reduce 185 + LPAREN reduce 185 + LSQBRACKET reduce 185 + PERIOD reduce 185 + SEMICOLON reduce 185 + NAME reduce 185 + COLON reduce 185 + FUNCTION reduce 185 + RPAREN reduce 185 + LBRACKET reduce 185 + VAR reduce 185 + NUMBER reduce 185 + RSQBRACKET reduce 185 + KILLS reduce 185 + TRGCONST reduce 185 + L2V reduce 185 + MAPSTRING reduce 185 + UNIT reduce 185 + SWITCH reduce 185 + LOCATION reduce 185 + STATTXTTBL reduce 185 + VARRAY reduce 185 + STATIC reduce 185 + CONST reduce 185 + INC reduce 185 + DEC reduce 185 + ONCE reduce 185 + IF reduce 185 + SWITCHCASE reduce 185 + WHILE reduce 185 + FOR reduce 185 + FOREACH reduce 185 + CONTINUE reduce 185 + BREAK reduce 185 + RETURN reduce 185 + ACTIONNAME reduce 185 - COMMA shift 31 - RPAREN shift 232 +State 227: + (111) nonConstExpr ::= LPAREN logicExpr RPAREN * + + QMARK reduce 111 + COMMA reduce 111 + LOR reduce 111 + LAND reduce 111 + EQ reduce 111 + LE reduce 111 + LT reduce 111 + GE reduce 111 + GT reduce 111 + NE reduce 111 + BITOR reduce 111 + BITXOR reduce 111 + BITAND reduce 111 + LSHIFT reduce 111 + RSHIFT reduce 111 + PLUS reduce 111 + MINUS reduce 111 + DIVIDE reduce 111 + MULTIPLY reduce 111 + MOD reduce 111 + BITNOT reduce 111 + LPAREN reduce 111 + LSQBRACKET reduce 111 + PERIOD reduce 111 + SEMICOLON reduce 111 + NAME reduce 111 + COLON reduce 111 + FUNCTION reduce 111 + RPAREN reduce 111 + LBRACKET reduce 111 + VAR reduce 111 + NUMBER reduce 111 + RSQBRACKET reduce 111 + KILLS reduce 111 + TRGCONST reduce 111 + L2V reduce 111 + MAPSTRING reduce 111 + UNIT reduce 111 + SWITCH reduce 111 + LOCATION reduce 111 + STATTXTTBL reduce 111 + VARRAY reduce 111 + STATIC reduce 111 + CONST reduce 111 + INC reduce 111 + DEC reduce 111 + ONCE reduce 111 + IF reduce 111 + SWITCHCASE reduce 111 + WHILE reduce 111 + FOR reduce 111 + FOREACH reduce 111 + CONTINUE reduce 111 + BREAK reduce 111 + RETURN reduce 111 + ACTIONNAME reduce 111 -State 201: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - foreach_header ::= foreach_opener nameList_nonEmpty * COLON exprList_nonEmpty +State 228: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + (127) constExpr ::= constExpr MINUS constExpr * + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 127 + COMMA reduce 127 + LOR reduce 127 + LAND reduce 127 + EQ shift 138 -- dropped by precedence + EQ reduce 127 + LE shift 125 -- dropped by precedence + LE reduce 127 + LT shift 123 -- dropped by precedence + LT reduce 127 + GE shift 124 -- dropped by precedence + GE reduce 127 + GT shift 122 -- dropped by precedence + GT reduce 127 + NE shift 126 -- dropped by precedence + NE reduce 127 + BITOR shift 102 -- dropped by precedence + BITOR reduce 127 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 127 + BITAND shift 103 -- dropped by precedence + BITAND reduce 127 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 127 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 127 + PLUS shift 113 -- dropped by precedence + PLUS reduce 127 + MINUS shift 112 -- dropped by precedence + MINUS reduce 127 + DIVIDE shift 107 + DIVIDE reduce 127 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 127 -- dropped by precedence + MOD shift 106 + MOD reduce 127 -- dropped by precedence + BITNOT reduce 127 + LPAREN reduce 127 + LSQBRACKET reduce 127 + PERIOD reduce 127 + SEMICOLON reduce 127 + NAME reduce 127 + COLON reduce 127 + FUNCTION reduce 127 + RPAREN reduce 127 + LBRACKET reduce 127 + VAR reduce 127 + NUMBER reduce 127 + RSQBRACKET reduce 127 + KILLS reduce 127 + TRGCONST reduce 127 + L2V reduce 127 + MAPSTRING reduce 127 + UNIT reduce 127 + SWITCH reduce 127 + LOCATION reduce 127 + STATTXTTBL reduce 127 + VARRAY reduce 127 + STATIC reduce 127 + CONST reduce 127 + INC reduce 127 + DEC reduce 127 + ONCE reduce 127 + IF reduce 127 + SWITCHCASE reduce 127 + WHILE reduce 127 + FOR reduce 127 + FOREACH reduce 127 + CONTINUE reduce 127 + BREAK reduce 127 + RETURN reduce 127 + ACTIONNAME reduce 127 - COMMA shift 264 - COLON shift 34 +State 229: + (123) nonConstExpr ::= nonConstExpr QMARK expr COLON expr * + + QMARK reduce 123 + COMMA reduce 123 + LOR reduce 123 + LAND reduce 123 + EQ reduce 123 + LE reduce 123 + LT reduce 123 + GE reduce 123 + GT reduce 123 + NE reduce 123 + BITOR reduce 123 + BITXOR reduce 123 + BITAND reduce 123 + LSHIFT reduce 123 + RSHIFT reduce 123 + PLUS reduce 123 + MINUS reduce 123 + DIVIDE reduce 123 + MULTIPLY reduce 123 + MOD reduce 123 + BITNOT reduce 123 + LPAREN reduce 123 + LSQBRACKET reduce 123 + PERIOD reduce 123 + SEMICOLON reduce 123 + NAME reduce 123 + COLON reduce 123 + FUNCTION reduce 123 + RPAREN reduce 123 + LBRACKET reduce 123 + VAR reduce 123 + NUMBER reduce 123 + RSQBRACKET reduce 123 + KILLS reduce 123 + TRGCONST reduce 123 + L2V reduce 123 + MAPSTRING reduce 123 + UNIT reduce 123 + SWITCH reduce 123 + LOCATION reduce 123 + STATTXTTBL reduce 123 + VARRAY reduce 123 + STATIC reduce 123 + CONST reduce 123 + INC reduce 123 + DEC reduce 123 + ONCE reduce 123 + IF reduce 123 + SWITCHCASE reduce 123 + WHILE reduce 123 + FOR reduce 123 + FOREACH reduce 123 + CONTINUE reduce 123 + BREAK reduce 123 + RETURN reduce 123 + ACTIONNAME reduce 123 -State 202: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - case_clause ::= case_start exprList_nonEmpty * COLON +State 230: + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr + (186) logicExpr ::= logicExpr LOR logicExpr * + + QMARK reduce 186 + COMMA reduce 186 + LOR shift 82 -- dropped by precedence + LOR reduce 186 + LAND shift 84 + LAND reduce 186 -- dropped by precedence + EQ reduce 186 + LE reduce 186 + LT reduce 186 + GE reduce 186 + GT reduce 186 + NE reduce 186 + BITOR reduce 186 + BITXOR reduce 186 + BITAND reduce 186 + LSHIFT reduce 186 + RSHIFT reduce 186 + PLUS reduce 186 + MINUS reduce 186 + DIVIDE reduce 186 + MULTIPLY reduce 186 + MOD reduce 186 + BITNOT reduce 186 + LPAREN reduce 186 + LSQBRACKET reduce 186 + PERIOD reduce 186 + SEMICOLON reduce 186 + NAME reduce 186 + COLON reduce 186 + FUNCTION reduce 186 + RPAREN reduce 186 + LBRACKET reduce 186 + VAR reduce 186 + NUMBER reduce 186 + RSQBRACKET reduce 186 + KILLS reduce 186 + TRGCONST reduce 186 + L2V reduce 186 + MAPSTRING reduce 186 + UNIT reduce 186 + SWITCH reduce 186 + LOCATION reduce 186 + STATTXTTBL reduce 186 + VARRAY reduce 186 + STATIC reduce 186 + CONST reduce 186 + INC reduce 186 + DEC reduce 186 + ONCE reduce 186 + IF reduce 186 + SWITCHCASE reduce 186 + WHILE reduce 186 + FOR reduce 186 + FOREACH reduce 186 + CONTINUE reduce 186 + BREAK reduce 186 + RETURN reduce 186 + ACTIONNAME reduce 186 - COMMA shift 98 - COLON shift 392 +State 231: + (114) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * + + QMARK reduce 114 + COMMA reduce 114 + LOR reduce 114 + LAND reduce 114 + EQ reduce 114 + LE reduce 114 + LT reduce 114 + GE reduce 114 + GT reduce 114 + NE reduce 114 + BITOR reduce 114 + BITXOR reduce 114 + BITAND reduce 114 + LSHIFT reduce 114 + RSHIFT reduce 114 + PLUS reduce 114 + MINUS reduce 114 + DIVIDE reduce 114 + MULTIPLY reduce 114 + MOD reduce 114 + BITNOT reduce 114 + LPAREN reduce 114 + LSQBRACKET reduce 114 + PERIOD reduce 114 + SEMICOLON reduce 114 + NAME reduce 114 + COLON reduce 114 + FUNCTION reduce 114 + RPAREN reduce 114 + LBRACKET reduce 114 + VAR reduce 114 + NUMBER reduce 114 + RSQBRACKET reduce 114 + KILLS reduce 114 + TRGCONST reduce 114 + L2V reduce 114 + MAPSTRING reduce 114 + UNIT reduce 114 + SWITCH reduce 114 + LOCATION reduce 114 + STATTXTTBL reduce 114 + VARRAY reduce 114 + STATIC reduce 114 + CONST reduce 114 + INC reduce 114 + DEC reduce 114 + ONCE reduce 114 + IF reduce 114 + SWITCHCASE reduce 114 + WHILE reduce 114 + FOR reduce 114 + FOREACH reduce 114 + CONTINUE reduce 114 + BREAK reduce 114 + RETURN reduce 114 + ACTIONNAME reduce 114 -State 203: - lvalueList_nonEmpty ::= lvalueList_nonEmpty * COMMA lvalue - assign_stmt ::= lvalueList_nonEmpty * ASSIGN exprList_nonEmpty +State 232: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (154) constExpr ::= PLUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 154 + COMMA reduce 154 + LOR reduce 154 + LAND reduce 154 + EQ shift 138 -- dropped by precedence + EQ reduce 154 + LE shift 125 -- dropped by precedence + LE reduce 154 + LT shift 123 -- dropped by precedence + LT reduce 154 + GE shift 124 -- dropped by precedence + GE reduce 154 + GT shift 122 -- dropped by precedence + GT reduce 154 + NE shift 126 -- dropped by precedence + NE reduce 154 + BITOR shift 102 -- dropped by precedence + BITOR reduce 154 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 154 + BITAND shift 103 -- dropped by precedence + BITAND reduce 154 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 154 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 154 + PLUS shift 113 -- dropped by precedence + PLUS reduce 154 + MINUS shift 112 -- dropped by precedence + MINUS reduce 154 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 154 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 154 + MOD shift 106 -- dropped by precedence + MOD reduce 154 + BITNOT reduce 154 + LPAREN reduce 154 + LSQBRACKET reduce 154 + PERIOD reduce 154 + SEMICOLON reduce 154 + NAME reduce 154 + COLON reduce 154 + FUNCTION reduce 154 + RPAREN reduce 154 + LBRACKET reduce 154 + VAR reduce 154 + NUMBER reduce 154 + RSQBRACKET reduce 154 + KILLS reduce 154 + TRGCONST reduce 154 + L2V reduce 154 + MAPSTRING reduce 154 + UNIT reduce 154 + SWITCH reduce 154 + LOCATION reduce 154 + STATTXTTBL reduce 154 + VARRAY reduce 154 + STATIC reduce 154 + CONST reduce 154 + INC reduce 154 + DEC reduce 154 + ONCE reduce 154 + IF reduce 154 + SWITCHCASE reduce 154 + WHILE reduce 154 + FOR reduce 154 + FOREACH reduce 154 + CONTINUE reduce 154 + BREAK reduce 154 + RETURN reduce 154 + ACTIONNAME reduce 154 - ASSIGN shift 38 - COMMA shift 39 - -State 204: - lvalue ::= expr * LSQBRACKET expr RSQBRACKET - lvalue ::= expr * PERIOD NAME - - LSQBRACKET shift 65 - PERIOD shift 258 - -State 205: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - cdef_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - - ASSIGN shift 40 - COMMA shift 264 - -State 206: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - - ASSIGN shift 41 - COMMA shift 264 - -State 207: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (176) vdef_stmt ::= VAR nameList_nonEmpty * - vdefAssign_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - - ASSIGN shift 42 - COMMA shift 264 - {default} reduce 176 - -State 208: - numList_nonEmpty ::= numList_nonEmpty * COMMA NUMBER - exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty * RSQBRACKET RSQBRACKET - - COMMA shift 295 - RSQBRACKET shift 294 - -State 209: - (81) nonConstExpr ::= NAME * - fConstArg ::= NAME * ASSIGN expr - fConstArg ::= NAME * ASSIGN STRING - funcexpr ::= NAME * LPAREN fArgs RPAREN - - ASSIGN shift 47 - LPAREN shift 27 - {default} reduce 81 - -State 210: - relimp_start ::= relimp_start * PERIOD - relimp_path ::= relimp_start * NAME - - PERIOD shift 520 - NAME shift 519 - -State 211: - dottedName ::= dottedName * PERIOD NAME - import_chunk ::= IMPORT dottedName * AS NAME - (22) import_chunk ::= IMPORT dottedName * - - PERIOD shift 328 - AS shift 327 - {default} reduce 22 - -State 212: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (181) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 98 - {default} reduce 181 - -State 213: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (179) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 98 - {default} reduce 179 - -State 214: - object_chunk ::= object_body RBRACKET * SEMICOLON - - SEMICOLON shift 333 - -State 215: - method_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - - RPAREN shift 144 - -State 216: - method_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - - LPAREN shift 118 - -State 217: - method_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - - NAME shift 216 - -State 218: - object_body ::= object_body VAR typedNameList_nonEmpty * SEMICOLON - - SEMICOLON shift 337 - -State 219: - object_body ::= OBJECT NAME * LBRACKET - - LBRACKET shift 338 - -State 220: - object_body ::= OBJECT * NAME LBRACKET - - NAME shift 219 - -State 221: - constExpr ::= KILLS LPAREN fArgs * RPAREN - - RPAREN shift 342 - -State 222: - funcexpr ::= NAME LPAREN fArgs * RPAREN - - RPAREN shift 345 - -State 223: - nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - - RSQBRACKET shift 346 - -State 224: - funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN - - RPAREN shift 347 - -State 225: - lambdaExprStart ::= FUNCTION LPAREN typedNameList * RPAREN fdef_rettypes - - RPAREN shift 145 - -State 226: - (67) typedNameList_nonEmpty ::= typedName * - typedNameList_nonEmpty ::= typedName * COMMA typedNameList_nonEmpty - - COMMA shift 139 - {default} reduce 67 - -State 227: - default_clause ::= DEFAULT * COLON - - COLON shift 355 - -State 228: - fConstArg ::= NAME * ASSIGN expr - fConstArg ::= NAME * ASSIGN STRING - - ASSIGN shift 47 - -State 229: - constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON - - LPAREN shift 100 - -State 230: - constAction ::= ACTIONNAME LPAREN RPAREN * SEMICOLON - - SEMICOLON shift 366 - -State 231: - actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON - - SEMICOLON shift 367 - -State 232: - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN * SEMICOLON - - SEMICOLON shift 368 - -State 233: - actionStmt ::= ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON - constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - - LPAREN shift 22 +State 233: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (156) constExpr ::= MINUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 156 + COMMA reduce 156 + LOR reduce 156 + LAND reduce 156 + EQ shift 138 -- dropped by precedence + EQ reduce 156 + LE shift 125 -- dropped by precedence + LE reduce 156 + LT shift 123 -- dropped by precedence + LT reduce 156 + GE shift 124 -- dropped by precedence + GE reduce 156 + GT shift 122 -- dropped by precedence + GT reduce 156 + NE shift 126 -- dropped by precedence + NE reduce 156 + BITOR shift 102 -- dropped by precedence + BITOR reduce 156 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 156 + BITAND shift 103 -- dropped by precedence + BITAND reduce 156 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 156 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 156 + PLUS shift 113 -- dropped by precedence + PLUS reduce 156 + MINUS shift 112 -- dropped by precedence + MINUS reduce 156 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 156 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 156 + MOD shift 106 -- dropped by precedence + MOD reduce 156 + BITNOT reduce 156 + LPAREN reduce 156 + LSQBRACKET reduce 156 + PERIOD reduce 156 + SEMICOLON reduce 156 + NAME reduce 156 + COLON reduce 156 + FUNCTION reduce 156 + RPAREN reduce 156 + LBRACKET reduce 156 + VAR reduce 156 + NUMBER reduce 156 + RSQBRACKET reduce 156 + KILLS reduce 156 + TRGCONST reduce 156 + L2V reduce 156 + MAPSTRING reduce 156 + UNIT reduce 156 + SWITCH reduce 156 + LOCATION reduce 156 + STATTXTTBL reduce 156 + VARRAY reduce 156 + STATIC reduce 156 + CONST reduce 156 + INC reduce 156 + DEC reduce 156 + ONCE reduce 156 + IF reduce 156 + SWITCHCASE reduce 156 + WHILE reduce 156 + FOR reduce 156 + FOREACH reduce 156 + CONTINUE reduce 156 + BREAK reduce 156 + RETURN reduce 156 + ACTIONNAME reduce 156 State 234: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (78) exprList ::= exprList_nonEmpty * - - COMMA shift 98 - {default} reduce 78 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (158) constExpr ::= BITNOT constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 158 + COMMA reduce 158 + LOR reduce 158 + LAND reduce 158 + EQ shift 138 -- dropped by precedence + EQ reduce 158 + LE shift 125 -- dropped by precedence + LE reduce 158 + LT shift 123 -- dropped by precedence + LT reduce 158 + GE shift 124 -- dropped by precedence + GE reduce 158 + GT shift 122 -- dropped by precedence + GT reduce 158 + NE shift 126 -- dropped by precedence + NE reduce 158 + BITOR shift 102 -- dropped by precedence + BITOR reduce 158 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 158 + BITAND shift 103 -- dropped by precedence + BITAND reduce 158 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 158 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 158 + PLUS shift 113 -- dropped by precedence + PLUS reduce 158 + MINUS shift 112 -- dropped by precedence + MINUS reduce 158 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 158 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 158 + MOD shift 106 -- dropped by precedence + MOD reduce 158 + BITNOT reduce 158 + LPAREN reduce 158 + LSQBRACKET reduce 158 + PERIOD reduce 158 + SEMICOLON reduce 158 + NAME reduce 158 + COLON reduce 158 + FUNCTION reduce 158 + RPAREN reduce 158 + LBRACKET reduce 158 + VAR reduce 158 + NUMBER reduce 158 + RSQBRACKET reduce 158 + KILLS reduce 158 + TRGCONST reduce 158 + L2V reduce 158 + MAPSTRING reduce 158 + UNIT reduce 158 + SWITCH reduce 158 + LOCATION reduce 158 + STATTXTTBL reduce 158 + VARRAY reduce 158 + STATIC reduce 158 + CONST reduce 158 + INC reduce 158 + DEC reduce 158 + ONCE reduce 158 + IF reduce 158 + SWITCHCASE reduce 158 + WHILE reduce 158 + FOR reduce 158 + FOREACH reduce 158 + CONTINUE reduce 158 + BREAK reduce 158 + RETURN reduce 158 + ACTIONNAME reduce 158 State 235: - foreach_stmt ::= foreach_header * RPAREN stmt - - RPAREN shift 4 + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr + (187) logicExpr ::= LNOT logicExpr * + + QMARK reduce 187 + COMMA reduce 187 + LOR shift 82 -- dropped by precedence + LOR reduce 187 + LAND shift 84 -- dropped by precedence + LAND reduce 187 + EQ reduce 187 + LE reduce 187 + LT reduce 187 + GE reduce 187 + GT reduce 187 + NE reduce 187 + BITOR reduce 187 + BITXOR reduce 187 + BITAND reduce 187 + LSHIFT reduce 187 + RSHIFT reduce 187 + PLUS reduce 187 + MINUS reduce 187 + DIVIDE reduce 187 + MULTIPLY reduce 187 + MOD reduce 187 + BITNOT reduce 187 + LPAREN reduce 187 + LSQBRACKET reduce 187 + PERIOD reduce 187 + SEMICOLON reduce 187 + NAME reduce 187 + COLON reduce 187 + FUNCTION reduce 187 + RPAREN reduce 187 + LBRACKET reduce 187 + VAR reduce 187 + NUMBER reduce 187 + RSQBRACKET reduce 187 + KILLS reduce 187 + TRGCONST reduce 187 + L2V reduce 187 + MAPSTRING reduce 187 + UNIT reduce 187 + SWITCH reduce 187 + LOCATION reduce 187 + STATTXTTBL reduce 187 + VARRAY reduce 187 + STATIC reduce 187 + CONST reduce 187 + INC reduce 187 + DEC reduce 187 + ONCE reduce 187 + IF reduce 187 + SWITCHCASE reduce 187 + WHILE reduce 187 + FOR reduce 187 + FOREACH reduce 187 + CONTINUE reduce 187 + BREAK reduce 187 + RETURN reduce 187 + ACTIONNAME reduce 187 State 236: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (253) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * - - COMMA shift 98 - {default} reduce 253 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + (130) constExpr ::= constExpr MULTIPLY constExpr * + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 130 + COMMA reduce 130 + LOR reduce 130 + LAND reduce 130 + EQ shift 138 -- dropped by precedence + EQ reduce 130 + LE shift 125 -- dropped by precedence + LE reduce 130 + LT shift 123 -- dropped by precedence + LT reduce 130 + GE shift 124 -- dropped by precedence + GE reduce 130 + GT shift 122 -- dropped by precedence + GT reduce 130 + NE shift 126 -- dropped by precedence + NE reduce 130 + BITOR shift 102 -- dropped by precedence + BITOR reduce 130 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 130 + BITAND shift 103 -- dropped by precedence + BITAND reduce 130 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 130 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 130 + PLUS shift 113 -- dropped by precedence + PLUS reduce 130 + MINUS shift 112 -- dropped by precedence + MINUS reduce 130 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 130 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 130 + MOD shift 106 -- dropped by precedence + MOD reduce 130 + BITNOT reduce 130 + LPAREN reduce 130 + LSQBRACKET reduce 130 + PERIOD reduce 130 + SEMICOLON reduce 130 + NAME reduce 130 + COLON reduce 130 + FUNCTION reduce 130 + RPAREN reduce 130 + LBRACKET reduce 130 + VAR reduce 130 + NUMBER reduce 130 + RSQBRACKET reduce 130 + KILLS reduce 130 + TRGCONST reduce 130 + L2V reduce 130 + MAPSTRING reduce 130 + UNIT reduce 130 + SWITCH reduce 130 + LOCATION reduce 130 + STATTXTTBL reduce 130 + VARRAY reduce 130 + STATIC reduce 130 + CONST reduce 130 + INC reduce 130 + DEC reduce 130 + ONCE reduce 130 + IF reduce 130 + SWITCHCASE reduce 130 + WHILE reduce 130 + FOR reduce 130 + FOREACH reduce 130 + CONTINUE reduce 130 + BREAK reduce 130 + RETURN reduce 130 + ACTIONNAME reduce 130 State 237: - foreach_opener ::= FOREACH * LPAREN - - LPAREN shift 373 + (271) logicExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * + + QMARK reduce 271 + COMMA reduce 271 + LOR reduce 271 + LAND reduce 271 + EQ reduce 271 + LE reduce 271 + LT reduce 271 + GE reduce 271 + GT reduce 271 + NE reduce 271 + BITOR reduce 271 + BITXOR reduce 271 + BITAND reduce 271 + LSHIFT reduce 271 + RSHIFT reduce 271 + PLUS reduce 271 + MINUS reduce 271 + DIVIDE reduce 271 + MULTIPLY reduce 271 + MOD reduce 271 + BITNOT reduce 271 + LPAREN reduce 271 + LSQBRACKET reduce 271 + PERIOD reduce 271 + SEMICOLON reduce 271 + NAME reduce 271 + COLON reduce 271 + FUNCTION reduce 271 + RPAREN reduce 271 + LBRACKET reduce 271 + VAR reduce 271 + NUMBER reduce 271 + RSQBRACKET reduce 271 + KILLS reduce 271 + TRGCONST reduce 271 + L2V reduce 271 + MAPSTRING reduce 271 + UNIT reduce 271 + SWITCH reduce 271 + LOCATION reduce 271 + STATTXTTBL reduce 271 + VARRAY reduce 271 + STATIC reduce 271 + CONST reduce 271 + INC reduce 271 + DEC reduce 271 + ONCE reduce 271 + IF reduce 271 + SWITCHCASE reduce 271 + WHILE reduce 271 + FOR reduce 271 + FOREACH reduce 271 + CONTINUE reduce 271 + BREAK reduce 271 + RETURN reduce 271 + ACTIONNAME reduce 271 State 238: - for_stmt ::= for_header * RPAREN stmt - - RPAREN shift 5 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (181) logicExpr ::= constExpr GT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 181 + COMMA reduce 181 + LOR reduce 181 + LAND reduce 181 + EQ reduce 181 + LE reduce 181 + LT reduce 181 + GE reduce 181 + GT reduce 181 + NE reduce 181 + BITOR shift 66 + BITOR reduce 181 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 181 -- dropped by precedence + BITAND shift 67 + BITAND reduce 181 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 181 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 181 -- dropped by precedence + PLUS shift 74 + PLUS reduce 181 -- dropped by precedence + MINUS shift 73 + MINUS reduce 181 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 181 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 181 -- dropped by precedence + MOD shift 70 + MOD reduce 181 -- dropped by precedence + BITNOT reduce 181 + LPAREN shift 23 + LPAREN reduce 181 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 181 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 181 -- dropped by precedence + SEMICOLON reduce 181 + NAME reduce 181 + COLON reduce 181 + FUNCTION reduce 181 + RPAREN reduce 181 + LBRACKET reduce 181 + VAR reduce 181 + NUMBER reduce 181 + RSQBRACKET reduce 181 + KILLS reduce 181 + TRGCONST reduce 181 + L2V reduce 181 + MAPSTRING reduce 181 + UNIT reduce 181 + SWITCH reduce 181 + LOCATION reduce 181 + STATTXTTBL reduce 181 + VARRAY reduce 181 + STATIC reduce 181 + CONST reduce 181 + INC reduce 181 + DEC reduce 181 + ONCE reduce 181 + IF reduce 181 + SWITCHCASE reduce 181 + WHILE reduce 181 + FOR reduce 181 + FOREACH reduce 181 + CONTINUE reduce 181 + BREAK reduce 181 + RETURN reduce 181 + ACTIONNAME reduce 181 State 239: - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (247) for_action_stmt ::= for_action_stmt_nonEmpty * - - COMMA shift 23 - {default} reduce 247 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (177) logicExpr ::= constExpr LT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 177 + COMMA reduce 177 + LOR reduce 177 + LAND reduce 177 + EQ reduce 177 + LE reduce 177 + LT reduce 177 + GE reduce 177 + GT reduce 177 + NE reduce 177 + BITOR shift 66 + BITOR reduce 177 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 177 -- dropped by precedence + BITAND shift 67 + BITAND reduce 177 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 177 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 177 -- dropped by precedence + PLUS shift 74 + PLUS reduce 177 -- dropped by precedence + MINUS shift 73 + MINUS reduce 177 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 177 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 177 -- dropped by precedence + MOD shift 70 + MOD reduce 177 -- dropped by precedence + BITNOT reduce 177 + LPAREN shift 23 + LPAREN reduce 177 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 177 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 177 -- dropped by precedence + SEMICOLON reduce 177 + NAME reduce 177 + COLON reduce 177 + FUNCTION reduce 177 + RPAREN reduce 177 + LBRACKET reduce 177 + VAR reduce 177 + NUMBER reduce 177 + RSQBRACKET reduce 177 + KILLS reduce 177 + TRGCONST reduce 177 + L2V reduce 177 + MAPSTRING reduce 177 + UNIT reduce 177 + SWITCH reduce 177 + LOCATION reduce 177 + STATTXTTBL reduce 177 + VARRAY reduce 177 + STATIC reduce 177 + CONST reduce 177 + INC reduce 177 + DEC reduce 177 + ONCE reduce 177 + IF reduce 177 + SWITCHCASE reduce 177 + WHILE reduce 177 + FOR reduce 177 + FOREACH reduce 177 + CONTINUE reduce 177 + BREAK reduce 177 + RETURN reduce 177 + ACTIONNAME reduce 177 State 240: - for_header2 ::= for_header1 expr * SEMICOLON - - SEMICOLON shift 379 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (173) logicExpr ::= constExpr GE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 173 + COMMA reduce 173 + LOR reduce 173 + LAND reduce 173 + EQ reduce 173 + LE reduce 173 + LT reduce 173 + GE reduce 173 + GT reduce 173 + NE reduce 173 + BITOR shift 66 + BITOR reduce 173 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 173 -- dropped by precedence + BITAND shift 67 + BITAND reduce 173 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 173 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 173 -- dropped by precedence + PLUS shift 74 + PLUS reduce 173 -- dropped by precedence + MINUS shift 73 + MINUS reduce 173 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 173 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 173 -- dropped by precedence + MOD shift 70 + MOD reduce 173 -- dropped by precedence + BITNOT reduce 173 + LPAREN shift 23 + LPAREN reduce 173 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 173 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 173 -- dropped by precedence + SEMICOLON reduce 173 + NAME reduce 173 + COLON reduce 173 + FUNCTION reduce 173 + RPAREN reduce 173 + LBRACKET reduce 173 + VAR reduce 173 + NUMBER reduce 173 + RSQBRACKET reduce 173 + KILLS reduce 173 + TRGCONST reduce 173 + L2V reduce 173 + MAPSTRING reduce 173 + UNIT reduce 173 + SWITCH reduce 173 + LOCATION reduce 173 + STATTXTTBL reduce 173 + VARRAY reduce 173 + STATIC reduce 173 + CONST reduce 173 + INC reduce 173 + DEC reduce 173 + ONCE reduce 173 + IF reduce 173 + SWITCHCASE reduce 173 + WHILE reduce 173 + FOR reduce 173 + FOREACH reduce 173 + CONTINUE reduce 173 + BREAK reduce 173 + RETURN reduce 173 + ACTIONNAME reduce 173 State 241: - for_header1 ::= for_opener for_init_stmt * SEMICOLON - - SEMICOLON shift 380 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (169) logicExpr ::= constExpr LE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 169 + COMMA reduce 169 + LOR reduce 169 + LAND reduce 169 + EQ reduce 169 + LE reduce 169 + LT reduce 169 + GE reduce 169 + GT reduce 169 + NE reduce 169 + BITOR shift 66 + BITOR reduce 169 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 169 -- dropped by precedence + BITAND shift 67 + BITAND reduce 169 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 169 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 169 -- dropped by precedence + PLUS shift 74 + PLUS reduce 169 -- dropped by precedence + MINUS shift 73 + MINUS reduce 169 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 169 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 169 -- dropped by precedence + MOD shift 70 + MOD reduce 169 -- dropped by precedence + BITNOT reduce 169 + LPAREN shift 23 + LPAREN reduce 169 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 169 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 169 -- dropped by precedence + SEMICOLON reduce 169 + NAME reduce 169 + COLON reduce 169 + FUNCTION reduce 169 + RPAREN reduce 169 + LBRACKET reduce 169 + VAR reduce 169 + NUMBER reduce 169 + RSQBRACKET reduce 169 + KILLS reduce 169 + TRGCONST reduce 169 + L2V reduce 169 + MAPSTRING reduce 169 + UNIT reduce 169 + SWITCH reduce 169 + LOCATION reduce 169 + STATTXTTBL reduce 169 + VARRAY reduce 169 + STATIC reduce 169 + CONST reduce 169 + INC reduce 169 + DEC reduce 169 + ONCE reduce 169 + IF reduce 169 + SWITCHCASE reduce 169 + WHILE reduce 169 + FOR reduce 169 + FOREACH reduce 169 + CONTINUE reduce 169 + BREAK reduce 169 + RETURN reduce 169 + ACTIONNAME reduce 169 State 242: - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (241) for_init_stmt ::= for_init_stmt_nonEmpty * - - COMMA shift 20 - {default} reduce 241 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (165) logicExpr ::= constExpr NE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 165 + COMMA reduce 165 + LOR reduce 165 + LAND reduce 165 + EQ reduce 165 + LE reduce 165 + LT reduce 165 + GE reduce 165 + GT reduce 165 + NE reduce 165 + BITOR shift 66 + BITOR reduce 165 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 165 -- dropped by precedence + BITAND shift 67 + BITAND reduce 165 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 165 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 165 -- dropped by precedence + PLUS shift 74 + PLUS reduce 165 -- dropped by precedence + MINUS shift 73 + MINUS reduce 165 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 165 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 165 -- dropped by precedence + MOD shift 70 + MOD reduce 165 -- dropped by precedence + BITNOT reduce 165 + LPAREN shift 23 + LPAREN reduce 165 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 165 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 165 -- dropped by precedence + SEMICOLON reduce 165 + NAME reduce 165 + COLON reduce 165 + FUNCTION reduce 165 + RPAREN reduce 165 + LBRACKET reduce 165 + VAR reduce 165 + NUMBER reduce 165 + RSQBRACKET reduce 165 + KILLS reduce 165 + TRGCONST reduce 165 + L2V reduce 165 + MAPSTRING reduce 165 + UNIT reduce 165 + SWITCH reduce 165 + LOCATION reduce 165 + STATTXTTBL reduce 165 + VARRAY reduce 165 + STATIC reduce 165 + CONST reduce 165 + INC reduce 165 + DEC reduce 165 + ONCE reduce 165 + IF reduce 165 + SWITCHCASE reduce 165 + WHILE reduce 165 + FOR reduce 165 + FOREACH reduce 165 + CONTINUE reduce 165 + BREAK reduce 165 + RETURN reduce 165 + ACTIONNAME reduce 165 State 243: - for_opener ::= FOR * LPAREN - - LPAREN shift 386 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (161) logicExpr ::= constExpr EQ nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 161 + COMMA reduce 161 + LOR reduce 161 + LAND reduce 161 + EQ reduce 161 + LE reduce 161 + LT reduce 161 + GE reduce 161 + GT reduce 161 + NE reduce 161 + BITOR shift 66 + BITOR reduce 161 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 161 -- dropped by precedence + BITAND shift 67 + BITAND reduce 161 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 161 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 161 -- dropped by precedence + PLUS shift 74 + PLUS reduce 161 -- dropped by precedence + MINUS shift 73 + MINUS reduce 161 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 161 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 161 -- dropped by precedence + MOD shift 70 + MOD reduce 161 -- dropped by precedence + BITNOT reduce 161 + LPAREN shift 23 + LPAREN reduce 161 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 161 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 161 -- dropped by precedence + SEMICOLON reduce 161 + NAME reduce 161 + COLON reduce 161 + FUNCTION reduce 161 + RPAREN reduce 161 + LBRACKET reduce 161 + VAR reduce 161 + NUMBER reduce 161 + RSQBRACKET reduce 161 + KILLS reduce 161 + TRGCONST reduce 161 + L2V reduce 161 + MAPSTRING reduce 161 + UNIT reduce 161 + SWITCH reduce 161 + LOCATION reduce 161 + STATTXTTBL reduce 161 + VARRAY reduce 161 + STATIC reduce 161 + CONST reduce 161 + INC reduce 161 + DEC reduce 161 + ONCE reduce 161 + IF reduce 161 + SWITCHCASE reduce 161 + WHILE reduce 161 + FOR reduce 161 + FOREACH reduce 161 + CONTINUE reduce 161 + BREAK reduce 161 + RETURN reduce 161 + ACTIONNAME reduce 161 State 244: - while_stmt ::= while_header * RPAREN stmt - - RPAREN shift 6 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (158) constExpr ::= BITNOT constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 158 + COMMA reduce 158 + LOR reduce 158 + LAND reduce 158 + EQ shift 138 -- dropped by precedence + EQ reduce 158 + LE shift 125 -- dropped by precedence + LE reduce 158 + LT shift 123 -- dropped by precedence + LT reduce 158 + GE shift 124 -- dropped by precedence + GE reduce 158 + GT shift 122 -- dropped by precedence + GT reduce 158 + NE shift 126 -- dropped by precedence + NE reduce 158 + BITOR shift 128 -- dropped by precedence + BITOR reduce 158 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 158 + BITAND shift 129 -- dropped by precedence + BITAND reduce 158 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 158 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 158 + PLUS shift 136 -- dropped by precedence + PLUS reduce 158 + MINUS shift 135 -- dropped by precedence + MINUS reduce 158 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 158 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 158 + MOD shift 132 -- dropped by precedence + MOD reduce 158 + BITNOT reduce 158 + LPAREN reduce 158 + LSQBRACKET reduce 158 + PERIOD reduce 158 + SEMICOLON reduce 158 + NAME reduce 158 + COLON reduce 158 + FUNCTION reduce 158 + RPAREN reduce 158 + LBRACKET reduce 158 + VAR reduce 158 + NUMBER reduce 158 + RSQBRACKET reduce 158 + KILLS reduce 158 + TRGCONST reduce 158 + L2V reduce 158 + MAPSTRING reduce 158 + UNIT reduce 158 + SWITCH reduce 158 + LOCATION reduce 158 + STATTXTTBL reduce 158 + VARRAY reduce 158 + STATIC reduce 158 + CONST reduce 158 + INC reduce 158 + DEC reduce 158 + ONCE reduce 158 + IF reduce 158 + SWITCHCASE reduce 158 + WHILE reduce 158 + FOR reduce 158 + FOREACH reduce 158 + CONTINUE reduce 158 + BREAK reduce 158 + RETURN reduce 158 + ACTIONNAME reduce 158 State 245: - while_header ::= while_start * LPAREN expr - - LPAREN shift 49 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (156) constExpr ::= MINUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 156 + COMMA reduce 156 + LOR reduce 156 + LAND reduce 156 + EQ shift 138 -- dropped by precedence + EQ reduce 156 + LE shift 125 -- dropped by precedence + LE reduce 156 + LT shift 123 -- dropped by precedence + LT reduce 156 + GE shift 124 -- dropped by precedence + GE reduce 156 + GT shift 122 -- dropped by precedence + GT reduce 156 + NE shift 126 -- dropped by precedence + NE reduce 156 + BITOR shift 128 -- dropped by precedence + BITOR reduce 156 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 156 + BITAND shift 129 -- dropped by precedence + BITAND reduce 156 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 156 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 156 + PLUS shift 136 -- dropped by precedence + PLUS reduce 156 + MINUS shift 135 -- dropped by precedence + MINUS reduce 156 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 156 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 156 + MOD shift 132 -- dropped by precedence + MOD reduce 156 + BITNOT reduce 156 + LPAREN reduce 156 + LSQBRACKET reduce 156 + PERIOD reduce 156 + SEMICOLON reduce 156 + NAME reduce 156 + COLON reduce 156 + FUNCTION reduce 156 + RPAREN reduce 156 + LBRACKET reduce 156 + VAR reduce 156 + NUMBER reduce 156 + RSQBRACKET reduce 156 + KILLS reduce 156 + TRGCONST reduce 156 + L2V reduce 156 + MAPSTRING reduce 156 + UNIT reduce 156 + SWITCH reduce 156 + LOCATION reduce 156 + STATTXTTBL reduce 156 + VARRAY reduce 156 + STATIC reduce 156 + CONST reduce 156 + INC reduce 156 + DEC reduce 156 + ONCE reduce 156 + IF reduce 156 + SWITCHCASE reduce 156 + WHILE reduce 156 + FOR reduce 156 + FOREACH reduce 156 + CONTINUE reduce 156 + BREAK reduce 156 + RETURN reduce 156 + ACTIONNAME reduce 156 State 246: - switchcase_stmt ::= switchcase_block * RBRACKET - - RBRACKET shift 390 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (154) constExpr ::= PLUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 154 + COMMA reduce 154 + LOR reduce 154 + LAND reduce 154 + EQ shift 138 -- dropped by precedence + EQ reduce 154 + LE shift 125 -- dropped by precedence + LE reduce 154 + LT shift 123 -- dropped by precedence + LT reduce 154 + GE shift 124 -- dropped by precedence + GE reduce 154 + GT shift 122 -- dropped by precedence + GT reduce 154 + NE shift 126 -- dropped by precedence + NE reduce 154 + BITOR shift 128 -- dropped by precedence + BITOR reduce 154 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 154 + BITAND shift 129 -- dropped by precedence + BITAND reduce 154 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 154 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 154 + PLUS shift 136 -- dropped by precedence + PLUS reduce 154 + MINUS shift 135 -- dropped by precedence + MINUS reduce 154 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 154 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 154 + MOD shift 132 -- dropped by precedence + MOD reduce 154 + BITNOT reduce 154 + LPAREN reduce 154 + LSQBRACKET reduce 154 + PERIOD reduce 154 + SEMICOLON reduce 154 + NAME reduce 154 + COLON reduce 154 + FUNCTION reduce 154 + RPAREN reduce 154 + LBRACKET reduce 154 + VAR reduce 154 + NUMBER reduce 154 + RSQBRACKET reduce 154 + KILLS reduce 154 + TRGCONST reduce 154 + L2V reduce 154 + MAPSTRING reduce 154 + UNIT reduce 154 + SWITCH reduce 154 + LOCATION reduce 154 + STATTXTTBL reduce 154 + VARRAY reduce 154 + STATIC reduce 154 + CONST reduce 154 + INC reduce 154 + DEC reduce 154 + ONCE reduce 154 + IF reduce 154 + SWITCHCASE reduce 154 + WHILE reduce 154 + FOR reduce 154 + FOREACH reduce 154 + CONTINUE reduce 154 + BREAK reduce 154 + RETURN reduce 154 + ACTIONNAME reduce 154 State 247: - switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks default_chunk - switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks - switchcase_block ::= switchcase_header RPAREN * LBRACKET - - LBRACKET shift 116 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (151) constExpr ::= constExpr BITXOR constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 151 + COMMA reduce 151 + LOR reduce 151 + LAND reduce 151 + EQ shift 138 -- dropped by precedence + EQ reduce 151 + LE shift 125 -- dropped by precedence + LE reduce 151 + LT shift 123 -- dropped by precedence + LT reduce 151 + GE shift 124 -- dropped by precedence + GE reduce 151 + GT shift 122 -- dropped by precedence + GT reduce 151 + NE shift 126 -- dropped by precedence + NE reduce 151 + BITOR shift 128 -- dropped by precedence + BITOR reduce 151 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 151 + BITAND shift 129 + BITAND reduce 151 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 151 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 151 -- dropped by precedence + PLUS shift 136 + PLUS reduce 151 -- dropped by precedence + MINUS shift 135 + MINUS reduce 151 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 151 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 151 -- dropped by precedence + MOD shift 132 + MOD reduce 151 -- dropped by precedence + BITNOT reduce 151 + LPAREN reduce 151 + LSQBRACKET reduce 151 + PERIOD reduce 151 + SEMICOLON reduce 151 + NAME reduce 151 + COLON reduce 151 + FUNCTION reduce 151 + RPAREN reduce 151 + LBRACKET reduce 151 + VAR reduce 151 + NUMBER reduce 151 + RSQBRACKET reduce 151 + KILLS reduce 151 + TRGCONST reduce 151 + L2V reduce 151 + MAPSTRING reduce 151 + UNIT reduce 151 + SWITCH reduce 151 + LOCATION reduce 151 + STATTXTTBL reduce 151 + VARRAY reduce 151 + STATIC reduce 151 + CONST reduce 151 + INC reduce 151 + DEC reduce 151 + ONCE reduce 151 + IF reduce 151 + SWITCHCASE reduce 151 + WHILE reduce 151 + FOR reduce 151 + FOREACH reduce 151 + CONTINUE reduce 151 + BREAK reduce 151 + RETURN reduce 151 + ACTIONNAME reduce 151 State 248: - switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks default_chunk - switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks - switchcase_block ::= switchcase_header * RPAREN LBRACKET - - RPAREN shift 247 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + (148) constExpr ::= constExpr BITOR constExpr * + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 148 + COMMA reduce 148 + LOR reduce 148 + LAND reduce 148 + EQ shift 138 -- dropped by precedence + EQ reduce 148 + LE shift 125 -- dropped by precedence + LE reduce 148 + LT shift 123 -- dropped by precedence + LT reduce 148 + GE shift 124 -- dropped by precedence + GE reduce 148 + GT shift 122 -- dropped by precedence + GT reduce 148 + NE shift 126 -- dropped by precedence + NE reduce 148 + BITOR shift 128 -- dropped by precedence + BITOR reduce 148 + BITXOR shift 127 + BITXOR reduce 148 -- dropped by precedence + BITAND shift 129 + BITAND reduce 148 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 148 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 148 -- dropped by precedence + PLUS shift 136 + PLUS reduce 148 -- dropped by precedence + MINUS shift 135 + MINUS reduce 148 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 148 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 148 -- dropped by precedence + MOD shift 132 + MOD reduce 148 -- dropped by precedence + BITNOT reduce 148 + LPAREN reduce 148 + LSQBRACKET reduce 148 + PERIOD reduce 148 + SEMICOLON reduce 148 + NAME reduce 148 + COLON reduce 148 + FUNCTION reduce 148 + RPAREN reduce 148 + LBRACKET reduce 148 + VAR reduce 148 + NUMBER reduce 148 + RSQBRACKET reduce 148 + KILLS reduce 148 + TRGCONST reduce 148 + L2V reduce 148 + MAPSTRING reduce 148 + UNIT reduce 148 + SWITCH reduce 148 + LOCATION reduce 148 + STATTXTTBL reduce 148 + VARRAY reduce 148 + STATIC reduce 148 + CONST reduce 148 + INC reduce 148 + DEC reduce 148 + ONCE reduce 148 + IF reduce 148 + SWITCHCASE reduce 148 + WHILE reduce 148 + FOR reduce 148 + FOREACH reduce 148 + CONTINUE reduce 148 + BREAK reduce 148 + RETURN reduce 148 + ACTIONNAME reduce 148 State 249: - switchcase_header ::= SWITCHCASE * LPAREN expr - - LPAREN shift 50 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + (145) constExpr ::= constExpr BITAND constExpr * + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 145 + COMMA reduce 145 + LOR reduce 145 + LAND reduce 145 + EQ shift 138 -- dropped by precedence + EQ reduce 145 + LE shift 125 -- dropped by precedence + LE reduce 145 + LT shift 123 -- dropped by precedence + LT reduce 145 + GE shift 124 -- dropped by precedence + GE reduce 145 + GT shift 122 -- dropped by precedence + GT reduce 145 + NE shift 126 -- dropped by precedence + NE reduce 145 + BITOR shift 128 -- dropped by precedence + BITOR reduce 145 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 145 + BITAND shift 129 -- dropped by precedence + BITAND reduce 145 + LSHIFT shift 131 + LSHIFT reduce 145 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 145 -- dropped by precedence + PLUS shift 136 + PLUS reduce 145 -- dropped by precedence + MINUS shift 135 + MINUS reduce 145 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 145 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 145 -- dropped by precedence + MOD shift 132 + MOD reduce 145 -- dropped by precedence + BITNOT reduce 145 + LPAREN reduce 145 + LSQBRACKET reduce 145 + PERIOD reduce 145 + SEMICOLON reduce 145 + NAME reduce 145 + COLON reduce 145 + FUNCTION reduce 145 + RPAREN reduce 145 + LBRACKET reduce 145 + VAR reduce 145 + NUMBER reduce 145 + RSQBRACKET reduce 145 + KILLS reduce 145 + TRGCONST reduce 145 + L2V reduce 145 + MAPSTRING reduce 145 + UNIT reduce 145 + SWITCH reduce 145 + LOCATION reduce 145 + STATTXTTBL reduce 145 + VARRAY reduce 145 + STATIC reduce 145 + CONST reduce 145 + INC reduce 145 + DEC reduce 145 + ONCE reduce 145 + IF reduce 145 + SWITCHCASE reduce 145 + WHILE reduce 145 + FOR reduce 145 + FOREACH reduce 145 + CONTINUE reduce 145 + BREAK reduce 145 + RETURN reduce 145 + ACTIONNAME reduce 145 State 250: - if_block ::= if_block elif_header * RPAREN stmt - - RPAREN shift 7 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + (142) constExpr ::= constExpr RSHIFT constExpr * + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 142 + COMMA reduce 142 + LOR reduce 142 + LAND reduce 142 + EQ shift 138 -- dropped by precedence + EQ reduce 142 + LE shift 125 -- dropped by precedence + LE reduce 142 + LT shift 123 -- dropped by precedence + LT reduce 142 + GE shift 124 -- dropped by precedence + GE reduce 142 + GT shift 122 -- dropped by precedence + GT reduce 142 + NE shift 126 -- dropped by precedence + NE reduce 142 + BITOR shift 128 -- dropped by precedence + BITOR reduce 142 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 142 + BITAND shift 129 -- dropped by precedence + BITAND reduce 142 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 142 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 142 + PLUS shift 136 + PLUS reduce 142 -- dropped by precedence + MINUS shift 135 + MINUS reduce 142 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 142 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 142 -- dropped by precedence + MOD shift 132 + MOD reduce 142 -- dropped by precedence + BITNOT reduce 142 + LPAREN reduce 142 + LSQBRACKET reduce 142 + PERIOD reduce 142 + SEMICOLON reduce 142 + NAME reduce 142 + COLON reduce 142 + FUNCTION reduce 142 + RPAREN reduce 142 + LBRACKET reduce 142 + VAR reduce 142 + NUMBER reduce 142 + RSQBRACKET reduce 142 + KILLS reduce 142 + TRGCONST reduce 142 + L2V reduce 142 + MAPSTRING reduce 142 + UNIT reduce 142 + SWITCH reduce 142 + LOCATION reduce 142 + STATTXTTBL reduce 142 + VARRAY reduce 142 + STATIC reduce 142 + CONST reduce 142 + INC reduce 142 + DEC reduce 142 + ONCE reduce 142 + IF reduce 142 + SWITCHCASE reduce 142 + WHILE reduce 142 + FOR reduce 142 + FOREACH reduce 142 + CONTINUE reduce 142 + BREAK reduce 142 + RETURN reduce 142 + ACTIONNAME reduce 142 State 251: - elif_header ::= elif_start * LPAREN expr - - LPAREN shift 51 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + (139) constExpr ::= constExpr LSHIFT constExpr * + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 139 + COMMA reduce 139 + LOR reduce 139 + LAND reduce 139 + EQ shift 138 -- dropped by precedence + EQ reduce 139 + LE shift 125 -- dropped by precedence + LE reduce 139 + LT shift 123 -- dropped by precedence + LT reduce 139 + GE shift 124 -- dropped by precedence + GE reduce 139 + GT shift 122 -- dropped by precedence + GT reduce 139 + NE shift 126 -- dropped by precedence + NE reduce 139 + BITOR shift 128 -- dropped by precedence + BITOR reduce 139 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 139 + BITAND shift 129 -- dropped by precedence + BITAND reduce 139 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 139 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 139 + PLUS shift 136 + PLUS reduce 139 -- dropped by precedence + MINUS shift 135 + MINUS reduce 139 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 139 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 139 -- dropped by precedence + MOD shift 132 + MOD reduce 139 -- dropped by precedence + BITNOT reduce 139 + LPAREN reduce 139 + LSQBRACKET reduce 139 + PERIOD reduce 139 + SEMICOLON reduce 139 + NAME reduce 139 + COLON reduce 139 + FUNCTION reduce 139 + RPAREN reduce 139 + LBRACKET reduce 139 + VAR reduce 139 + NUMBER reduce 139 + RSQBRACKET reduce 139 + KILLS reduce 139 + TRGCONST reduce 139 + L2V reduce 139 + MAPSTRING reduce 139 + UNIT reduce 139 + SWITCH reduce 139 + LOCATION reduce 139 + STATTXTTBL reduce 139 + VARRAY reduce 139 + STATIC reduce 139 + CONST reduce 139 + INC reduce 139 + DEC reduce 139 + ONCE reduce 139 + IF reduce 139 + SWITCHCASE reduce 139 + WHILE reduce 139 + FOR reduce 139 + FOREACH reduce 139 + CONTINUE reduce 139 + BREAK reduce 139 + RETURN reduce 139 + ACTIONNAME reduce 139 State 252: - elif_start ::= ELSE * IF - (215) else_header ::= ELSE * - - IF shift 397 - {default} reduce 215 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + (136) constExpr ::= constExpr MOD constExpr * + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 136 + COMMA reduce 136 + LOR reduce 136 + LAND reduce 136 + EQ shift 138 -- dropped by precedence + EQ reduce 136 + LE shift 125 -- dropped by precedence + LE reduce 136 + LT shift 123 -- dropped by precedence + LT reduce 136 + GE shift 124 -- dropped by precedence + GE reduce 136 + GT shift 122 -- dropped by precedence + GT reduce 136 + NE shift 126 -- dropped by precedence + NE reduce 136 + BITOR shift 128 -- dropped by precedence + BITOR reduce 136 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 136 + BITAND shift 129 -- dropped by precedence + BITAND reduce 136 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 136 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 136 + PLUS shift 136 -- dropped by precedence + PLUS reduce 136 + MINUS shift 135 -- dropped by precedence + MINUS reduce 136 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 136 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 136 + MOD shift 132 -- dropped by precedence + MOD reduce 136 + BITNOT reduce 136 + LPAREN reduce 136 + LSQBRACKET reduce 136 + PERIOD reduce 136 + SEMICOLON reduce 136 + NAME reduce 136 + COLON reduce 136 + FUNCTION reduce 136 + RPAREN reduce 136 + LBRACKET reduce 136 + VAR reduce 136 + NUMBER reduce 136 + RSQBRACKET reduce 136 + KILLS reduce 136 + TRGCONST reduce 136 + L2V reduce 136 + MAPSTRING reduce 136 + UNIT reduce 136 + SWITCH reduce 136 + LOCATION reduce 136 + STATTXTTBL reduce 136 + VARRAY reduce 136 + STATIC reduce 136 + CONST reduce 136 + INC reduce 136 + DEC reduce 136 + ONCE reduce 136 + IF reduce 136 + SWITCHCASE reduce 136 + WHILE reduce 136 + FOR reduce 136 + FOREACH reduce 136 + CONTINUE reduce 136 + BREAK reduce 136 + RETURN reduce 136 + ACTIONNAME reduce 136 State 253: - if_block ::= if_header * RPAREN stmt - - RPAREN shift 8 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + (133) constExpr ::= constExpr DIVIDE constExpr * + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 133 + COMMA reduce 133 + LOR reduce 133 + LAND reduce 133 + EQ shift 138 -- dropped by precedence + EQ reduce 133 + LE shift 125 -- dropped by precedence + LE reduce 133 + LT shift 123 -- dropped by precedence + LT reduce 133 + GE shift 124 -- dropped by precedence + GE reduce 133 + GT shift 122 -- dropped by precedence + GT reduce 133 + NE shift 126 -- dropped by precedence + NE reduce 133 + BITOR shift 128 -- dropped by precedence + BITOR reduce 133 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 133 + BITAND shift 129 -- dropped by precedence + BITAND reduce 133 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 133 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 133 + PLUS shift 136 -- dropped by precedence + PLUS reduce 133 + MINUS shift 135 -- dropped by precedence + MINUS reduce 133 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 133 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 133 + MOD shift 132 -- dropped by precedence + MOD reduce 133 + BITNOT reduce 133 + LPAREN reduce 133 + LSQBRACKET reduce 133 + PERIOD reduce 133 + SEMICOLON reduce 133 + NAME reduce 133 + COLON reduce 133 + FUNCTION reduce 133 + RPAREN reduce 133 + LBRACKET reduce 133 + VAR reduce 133 + NUMBER reduce 133 + RSQBRACKET reduce 133 + KILLS reduce 133 + TRGCONST reduce 133 + L2V reduce 133 + MAPSTRING reduce 133 + UNIT reduce 133 + SWITCH reduce 133 + LOCATION reduce 133 + STATTXTTBL reduce 133 + VARRAY reduce 133 + STATIC reduce 133 + CONST reduce 133 + INC reduce 133 + DEC reduce 133 + ONCE reduce 133 + IF reduce 133 + SWITCHCASE reduce 133 + WHILE reduce 133 + FOR reduce 133 + FOREACH reduce 133 + CONTINUE reduce 133 + BREAK reduce 133 + RETURN reduce 133 + ACTIONNAME reduce 133 State 254: - if_header ::= if_start * LPAREN expr - - LPAREN shift 52 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + (130) constExpr ::= constExpr MULTIPLY constExpr * + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 130 + COMMA reduce 130 + LOR reduce 130 + LAND reduce 130 + EQ shift 138 -- dropped by precedence + EQ reduce 130 + LE shift 125 -- dropped by precedence + LE reduce 130 + LT shift 123 -- dropped by precedence + LT reduce 130 + GE shift 124 -- dropped by precedence + GE reduce 130 + GT shift 122 -- dropped by precedence + GT reduce 130 + NE shift 126 -- dropped by precedence + NE reduce 130 + BITOR shift 128 -- dropped by precedence + BITOR reduce 130 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 130 + BITAND shift 129 -- dropped by precedence + BITAND reduce 130 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 130 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 130 + PLUS shift 136 -- dropped by precedence + PLUS reduce 130 + MINUS shift 135 -- dropped by precedence + MINUS reduce 130 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 130 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 130 + MOD shift 132 -- dropped by precedence + MOD reduce 130 + BITNOT reduce 130 + LPAREN reduce 130 + LSQBRACKET reduce 130 + PERIOD reduce 130 + SEMICOLON reduce 130 + NAME reduce 130 + COLON reduce 130 + FUNCTION reduce 130 + RPAREN reduce 130 + LBRACKET reduce 130 + VAR reduce 130 + NUMBER reduce 130 + RSQBRACKET reduce 130 + KILLS reduce 130 + TRGCONST reduce 130 + L2V reduce 130 + MAPSTRING reduce 130 + UNIT reduce 130 + SWITCH reduce 130 + LOCATION reduce 130 + STATTXTTBL reduce 130 + VARRAY reduce 130 + STATIC reduce 130 + CONST reduce 130 + INC reduce 130 + DEC reduce 130 + ONCE reduce 130 + IF reduce 130 + SWITCHCASE reduce 130 + WHILE reduce 130 + FOR reduce 130 + FOREACH reduce 130 + CONTINUE reduce 130 + BREAK reduce 130 + RETURN reduce 130 + ACTIONNAME reduce 130 State 255: - once_block ::= once_header * RPAREN stmt - - RPAREN shift 10 + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + (127) constExpr ::= constExpr MINUS constExpr * + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 127 + COMMA reduce 127 + LOR reduce 127 + LAND reduce 127 + EQ shift 138 -- dropped by precedence + EQ reduce 127 + LE shift 125 -- dropped by precedence + LE reduce 127 + LT shift 123 -- dropped by precedence + LT reduce 127 + GE shift 124 -- dropped by precedence + GE reduce 127 + GT shift 122 -- dropped by precedence + GT reduce 127 + NE shift 126 -- dropped by precedence + NE reduce 127 + BITOR shift 128 -- dropped by precedence + BITOR reduce 127 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 127 + BITAND shift 129 -- dropped by precedence + BITAND reduce 127 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 127 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 127 + PLUS shift 136 -- dropped by precedence + PLUS reduce 127 + MINUS shift 135 -- dropped by precedence + MINUS reduce 127 + DIVIDE shift 133 + DIVIDE reduce 127 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 127 -- dropped by precedence + MOD shift 132 + MOD reduce 127 -- dropped by precedence + BITNOT reduce 127 + LPAREN reduce 127 + LSQBRACKET reduce 127 + PERIOD reduce 127 + SEMICOLON reduce 127 + NAME reduce 127 + COLON reduce 127 + FUNCTION reduce 127 + RPAREN reduce 127 + LBRACKET reduce 127 + VAR reduce 127 + NUMBER reduce 127 + RSQBRACKET reduce 127 + KILLS reduce 127 + TRGCONST reduce 127 + L2V reduce 127 + MAPSTRING reduce 127 + UNIT reduce 127 + SWITCH reduce 127 + LOCATION reduce 127 + STATTXTTBL reduce 127 + VARRAY reduce 127 + STATIC reduce 127 + CONST reduce 127 + INC reduce 127 + DEC reduce 127 + ONCE reduce 127 + IF reduce 127 + SWITCHCASE reduce 127 + WHILE reduce 127 + FOR reduce 127 + FOREACH reduce 127 + CONTINUE reduce 127 + BREAK reduce 127 + RETURN reduce 127 + ACTIONNAME reduce 127 State 256: - once_header ::= once_start * LPAREN expr - (206) once_nocond ::= once_start * - - LPAREN shift 53 - {default} reduce 206 + constExpr ::= constExpr * PLUS constExpr + (124) constExpr ::= constExpr PLUS constExpr * + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 124 + COMMA reduce 124 + LOR reduce 124 + LAND reduce 124 + EQ shift 138 -- dropped by precedence + EQ reduce 124 + LE shift 125 -- dropped by precedence + LE reduce 124 + LT shift 123 -- dropped by precedence + LT reduce 124 + GE shift 124 -- dropped by precedence + GE reduce 124 + GT shift 122 -- dropped by precedence + GT reduce 124 + NE shift 126 -- dropped by precedence + NE reduce 124 + BITOR shift 128 -- dropped by precedence + BITOR reduce 124 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 124 + BITAND shift 129 -- dropped by precedence + BITAND reduce 124 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 124 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 124 + PLUS shift 136 -- dropped by precedence + PLUS reduce 124 + MINUS shift 135 -- dropped by precedence + MINUS reduce 124 + DIVIDE shift 133 + DIVIDE reduce 124 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 124 -- dropped by precedence + MOD shift 132 + MOD reduce 124 -- dropped by precedence + BITNOT reduce 124 + LPAREN reduce 124 + LSQBRACKET reduce 124 + PERIOD reduce 124 + SEMICOLON reduce 124 + NAME reduce 124 + COLON reduce 124 + FUNCTION reduce 124 + RPAREN reduce 124 + LBRACKET reduce 124 + VAR reduce 124 + NUMBER reduce 124 + RSQBRACKET reduce 124 + KILLS reduce 124 + TRGCONST reduce 124 + L2V reduce 124 + MAPSTRING reduce 124 + UNIT reduce 124 + SWITCH reduce 124 + LOCATION reduce 124 + STATTXTTBL reduce 124 + VARRAY reduce 124 + STATIC reduce 124 + CONST reduce 124 + INC reduce 124 + DEC reduce 124 + ONCE reduce 124 + IF reduce 124 + SWITCHCASE reduce 124 + WHILE reduce 124 + FOR reduce 124 + FOREACH reduce 124 + CONTINUE reduce 124 + BREAK reduce 124 + RETURN reduce 124 + ACTIONNAME reduce 124 State 257: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (188) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 98 - {default} reduce 188 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + (151) constExpr ::= constExpr BITXOR constExpr * + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 151 + COMMA reduce 151 + LOR reduce 151 + LAND reduce 151 + EQ shift 138 -- dropped by precedence + EQ reduce 151 + LE shift 125 -- dropped by precedence + LE reduce 151 + LT shift 123 -- dropped by precedence + LT reduce 151 + GE shift 124 -- dropped by precedence + GE reduce 151 + GT shift 122 -- dropped by precedence + GT reduce 151 + NE shift 126 -- dropped by precedence + NE reduce 151 + BITOR shift 102 -- dropped by precedence + BITOR reduce 151 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 151 + BITAND shift 103 + BITAND reduce 151 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 151 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 151 -- dropped by precedence + PLUS shift 113 + PLUS reduce 151 -- dropped by precedence + MINUS shift 112 + MINUS reduce 151 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 151 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 151 -- dropped by precedence + MOD shift 106 + MOD reduce 151 -- dropped by precedence + BITNOT reduce 151 + LPAREN reduce 151 + LSQBRACKET reduce 151 + PERIOD reduce 151 + SEMICOLON reduce 151 + NAME reduce 151 + COLON reduce 151 + FUNCTION reduce 151 + RPAREN reduce 151 + LBRACKET reduce 151 + VAR reduce 151 + NUMBER reduce 151 + RSQBRACKET reduce 151 + KILLS reduce 151 + TRGCONST reduce 151 + L2V reduce 151 + MAPSTRING reduce 151 + UNIT reduce 151 + SWITCH reduce 151 + LOCATION reduce 151 + STATTXTTBL reduce 151 + VARRAY reduce 151 + STATIC reduce 151 + CONST reduce 151 + INC reduce 151 + DEC reduce 151 + ONCE reduce 151 + IF reduce 151 + SWITCHCASE reduce 151 + WHILE reduce 151 + FOR reduce 151 + FOREACH reduce 151 + CONTINUE reduce 151 + BREAK reduce 151 + RETURN reduce 151 + ACTIONNAME reduce 151 State 258: - lvalue ::= expr PERIOD * NAME + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + (152) nonConstExpr ::= constExpr BITXOR nonConstExpr * + nonConstExpr ::= nonConstExpr * BITXOR expr - NAME shift 422 + QMARK shift 76 -- dropped by precedence + QMARK reduce 152 + COMMA reduce 152 + LOR reduce 152 + LAND reduce 152 + EQ reduce 152 + LE reduce 152 + LT reduce 152 + GE reduce 152 + GT reduce 152 + NE reduce 152 + BITOR shift 66 -- dropped by precedence + BITOR reduce 152 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 152 + BITAND shift 67 + BITAND reduce 152 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 152 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 152 -- dropped by precedence + PLUS shift 74 + PLUS reduce 152 -- dropped by precedence + MINUS shift 73 + MINUS reduce 152 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 152 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 152 -- dropped by precedence + MOD shift 70 + MOD reduce 152 -- dropped by precedence + BITNOT reduce 152 + LPAREN shift 23 + LPAREN reduce 152 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 152 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 152 -- dropped by precedence + SEMICOLON reduce 152 + NAME reduce 152 + COLON reduce 152 + FUNCTION reduce 152 + RPAREN reduce 152 + LBRACKET reduce 152 + VAR reduce 152 + NUMBER reduce 152 + RSQBRACKET reduce 152 + KILLS reduce 152 + TRGCONST reduce 152 + L2V reduce 152 + MAPSTRING reduce 152 + UNIT reduce 152 + SWITCH reduce 152 + LOCATION reduce 152 + STATTXTTBL reduce 152 + VARRAY reduce 152 + STATIC reduce 152 + CONST reduce 152 + INC reduce 152 + DEC reduce 152 + ONCE reduce 152 + IF reduce 152 + SWITCHCASE reduce 152 + WHILE reduce 152 + FOR reduce 152 + FOREACH reduce 152 + CONTINUE reduce 152 + BREAK reduce 152 + RETURN reduce 152 + ACTIONNAME reduce 152 State 259: - lvalue ::= expr LSQBRACKET expr * RSQBRACKET - - RSQBRACKET shift 423 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + (148) constExpr ::= constExpr BITOR constExpr * + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 148 + COMMA reduce 148 + LOR reduce 148 + LAND reduce 148 + EQ shift 138 -- dropped by precedence + EQ reduce 148 + LE shift 125 -- dropped by precedence + LE reduce 148 + LT shift 123 -- dropped by precedence + LT reduce 148 + GE shift 124 -- dropped by precedence + GE reduce 148 + GT shift 122 -- dropped by precedence + GT reduce 148 + NE shift 126 -- dropped by precedence + NE reduce 148 + BITOR shift 102 -- dropped by precedence + BITOR reduce 148 + BITXOR shift 101 + BITXOR reduce 148 -- dropped by precedence + BITAND shift 103 + BITAND reduce 148 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 148 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 148 -- dropped by precedence + PLUS shift 113 + PLUS reduce 148 -- dropped by precedence + MINUS shift 112 + MINUS reduce 148 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 148 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 148 -- dropped by precedence + MOD shift 106 + MOD reduce 148 -- dropped by precedence + BITNOT reduce 148 + LPAREN reduce 148 + LSQBRACKET reduce 148 + PERIOD reduce 148 + SEMICOLON reduce 148 + NAME reduce 148 + COLON reduce 148 + FUNCTION reduce 148 + RPAREN reduce 148 + LBRACKET reduce 148 + VAR reduce 148 + NUMBER reduce 148 + RSQBRACKET reduce 148 + KILLS reduce 148 + TRGCONST reduce 148 + L2V reduce 148 + MAPSTRING reduce 148 + UNIT reduce 148 + SWITCH reduce 148 + LOCATION reduce 148 + STATTXTTBL reduce 148 + VARRAY reduce 148 + STATIC reduce 148 + CONST reduce 148 + INC reduce 148 + DEC reduce 148 + ONCE reduce 148 + IF reduce 148 + SWITCHCASE reduce 148 + WHILE reduce 148 + FOR reduce 148 + FOREACH reduce 148 + CONTINUE reduce 148 + BREAK reduce 148 + RETURN reduce 148 + ACTIONNAME reduce 148 State 260: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (180) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + (149) nonConstExpr ::= constExpr BITOR nonConstExpr * + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - COMMA shift 98 - {default} reduce 180 + QMARK shift 76 -- dropped by precedence + QMARK reduce 149 + COMMA reduce 149 + LOR reduce 149 + LAND reduce 149 + EQ reduce 149 + LE reduce 149 + LT reduce 149 + GE reduce 149 + GT reduce 149 + NE reduce 149 + BITOR shift 66 -- dropped by precedence + BITOR reduce 149 + BITXOR shift 65 + BITXOR reduce 149 -- dropped by precedence + BITAND shift 67 + BITAND reduce 149 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 149 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 149 -- dropped by precedence + PLUS shift 74 + PLUS reduce 149 -- dropped by precedence + MINUS shift 73 + MINUS reduce 149 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 149 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 149 -- dropped by precedence + MOD shift 70 + MOD reduce 149 -- dropped by precedence + BITNOT reduce 149 + LPAREN shift 23 + LPAREN reduce 149 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 149 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 149 -- dropped by precedence + SEMICOLON reduce 149 + NAME reduce 149 + COLON reduce 149 + FUNCTION reduce 149 + RPAREN reduce 149 + LBRACKET reduce 149 + VAR reduce 149 + NUMBER reduce 149 + RSQBRACKET reduce 149 + KILLS reduce 149 + TRGCONST reduce 149 + L2V reduce 149 + MAPSTRING reduce 149 + UNIT reduce 149 + SWITCH reduce 149 + LOCATION reduce 149 + STATTXTTBL reduce 149 + VARRAY reduce 149 + STATIC reduce 149 + CONST reduce 149 + INC reduce 149 + DEC reduce 149 + ONCE reduce 149 + IF reduce 149 + SWITCHCASE reduce 149 + WHILE reduce 149 + FOR reduce 149 + FOREACH reduce 149 + CONTINUE reduce 149 + BREAK reduce 149 + RETURN reduce 149 + ACTIONNAME reduce 149 State 261: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (178) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 98 - {default} reduce 178 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + (145) constExpr ::= constExpr BITAND constExpr * + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 145 + COMMA reduce 145 + LOR reduce 145 + LAND reduce 145 + EQ shift 138 -- dropped by precedence + EQ reduce 145 + LE shift 125 -- dropped by precedence + LE reduce 145 + LT shift 123 -- dropped by precedence + LT reduce 145 + GE shift 124 -- dropped by precedence + GE reduce 145 + GT shift 122 -- dropped by precedence + GT reduce 145 + NE shift 126 -- dropped by precedence + NE reduce 145 + BITOR shift 102 -- dropped by precedence + BITOR reduce 145 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 145 + BITAND shift 103 -- dropped by precedence + BITAND reduce 145 + LSHIFT shift 105 + LSHIFT reduce 145 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 145 -- dropped by precedence + PLUS shift 113 + PLUS reduce 145 -- dropped by precedence + MINUS shift 112 + MINUS reduce 145 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 145 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 145 -- dropped by precedence + MOD shift 106 + MOD reduce 145 -- dropped by precedence + BITNOT reduce 145 + LPAREN reduce 145 + LSQBRACKET reduce 145 + PERIOD reduce 145 + SEMICOLON reduce 145 + NAME reduce 145 + COLON reduce 145 + FUNCTION reduce 145 + RPAREN reduce 145 + LBRACKET reduce 145 + VAR reduce 145 + NUMBER reduce 145 + RSQBRACKET reduce 145 + KILLS reduce 145 + TRGCONST reduce 145 + L2V reduce 145 + MAPSTRING reduce 145 + UNIT reduce 145 + SWITCH reduce 145 + LOCATION reduce 145 + STATTXTTBL reduce 145 + VARRAY reduce 145 + STATIC reduce 145 + CONST reduce 145 + INC reduce 145 + DEC reduce 145 + ONCE reduce 145 + IF reduce 145 + SWITCHCASE reduce 145 + WHILE reduce 145 + FOR reduce 145 + FOREACH reduce 145 + CONTINUE reduce 145 + BREAK reduce 145 + RETURN reduce 145 + ACTIONNAME reduce 145 State 262: - vdefAssignStatic_stmt ::= STATIC * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + (146) nonConstExpr ::= constExpr BITAND nonConstExpr * + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - VAR shift 149 + QMARK shift 76 -- dropped by precedence + QMARK reduce 146 + COMMA reduce 146 + LOR reduce 146 + LAND reduce 146 + EQ reduce 146 + LE reduce 146 + LT reduce 146 + GE reduce 146 + GT reduce 146 + NE reduce 146 + BITOR shift 66 -- dropped by precedence + BITOR reduce 146 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 146 + BITAND shift 67 -- dropped by precedence + BITAND reduce 146 + LSHIFT shift 69 + LSHIFT reduce 146 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 146 -- dropped by precedence + PLUS shift 74 + PLUS reduce 146 -- dropped by precedence + MINUS shift 73 + MINUS reduce 146 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 146 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 146 -- dropped by precedence + MOD shift 70 + MOD reduce 146 -- dropped by precedence + BITNOT reduce 146 + LPAREN shift 23 + LPAREN reduce 146 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 146 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 146 -- dropped by precedence + SEMICOLON reduce 146 + NAME reduce 146 + COLON reduce 146 + FUNCTION reduce 146 + RPAREN reduce 146 + LBRACKET reduce 146 + VAR reduce 146 + NUMBER reduce 146 + RSQBRACKET reduce 146 + KILLS reduce 146 + TRGCONST reduce 146 + L2V reduce 146 + MAPSTRING reduce 146 + UNIT reduce 146 + SWITCH reduce 146 + LOCATION reduce 146 + STATTXTTBL reduce 146 + VARRAY reduce 146 + STATIC reduce 146 + CONST reduce 146 + INC reduce 146 + DEC reduce 146 + ONCE reduce 146 + IF reduce 146 + SWITCHCASE reduce 146 + WHILE reduce 146 + FOR reduce 146 + FOREACH reduce 146 + CONTINUE reduce 146 + BREAK reduce 146 + RETURN reduce 146 + ACTIONNAME reduce 146 State 263: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (177) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 98 - {default} reduce 177 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + (142) constExpr ::= constExpr RSHIFT constExpr * + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 142 + COMMA reduce 142 + LOR reduce 142 + LAND reduce 142 + EQ shift 138 -- dropped by precedence + EQ reduce 142 + LE shift 125 -- dropped by precedence + LE reduce 142 + LT shift 123 -- dropped by precedence + LT reduce 142 + GE shift 124 -- dropped by precedence + GE reduce 142 + GT shift 122 -- dropped by precedence + GT reduce 142 + NE shift 126 -- dropped by precedence + NE reduce 142 + BITOR shift 102 -- dropped by precedence + BITOR reduce 142 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 142 + BITAND shift 103 -- dropped by precedence + BITAND reduce 142 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 142 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 142 + PLUS shift 113 + PLUS reduce 142 -- dropped by precedence + MINUS shift 112 + MINUS reduce 142 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 142 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 142 -- dropped by precedence + MOD shift 106 + MOD reduce 142 -- dropped by precedence + BITNOT reduce 142 + LPAREN reduce 142 + LSQBRACKET reduce 142 + PERIOD reduce 142 + SEMICOLON reduce 142 + NAME reduce 142 + COLON reduce 142 + FUNCTION reduce 142 + RPAREN reduce 142 + LBRACKET reduce 142 + VAR reduce 142 + NUMBER reduce 142 + RSQBRACKET reduce 142 + KILLS reduce 142 + TRGCONST reduce 142 + L2V reduce 142 + MAPSTRING reduce 142 + UNIT reduce 142 + SWITCH reduce 142 + LOCATION reduce 142 + STATTXTTBL reduce 142 + VARRAY reduce 142 + STATIC reduce 142 + CONST reduce 142 + INC reduce 142 + DEC reduce 142 + ONCE reduce 142 + IF reduce 142 + SWITCHCASE reduce 142 + WHILE reduce 142 + FOR reduce 142 + FOREACH reduce 142 + CONTINUE reduce 142 + BREAK reduce 142 + RETURN reduce 142 + ACTIONNAME reduce 142 State 264: - nameList_nonEmpty ::= nameList_nonEmpty COMMA * NAME + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + (143) nonConstExpr ::= constExpr RSHIFT nonConstExpr * + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - NAME shift 424 + QMARK shift 76 -- dropped by precedence + QMARK reduce 143 + COMMA reduce 143 + LOR reduce 143 + LAND reduce 143 + EQ reduce 143 + LE reduce 143 + LT reduce 143 + GE reduce 143 + GT reduce 143 + NE reduce 143 + BITOR shift 66 -- dropped by precedence + BITOR reduce 143 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 143 + BITAND shift 67 -- dropped by precedence + BITAND reduce 143 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 143 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 143 + PLUS shift 74 + PLUS reduce 143 -- dropped by precedence + MINUS shift 73 + MINUS reduce 143 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 143 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 143 -- dropped by precedence + MOD shift 70 + MOD reduce 143 -- dropped by precedence + BITNOT reduce 143 + LPAREN shift 23 + LPAREN reduce 143 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 143 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 143 -- dropped by precedence + SEMICOLON reduce 143 + NAME reduce 143 + COLON reduce 143 + FUNCTION reduce 143 + RPAREN reduce 143 + LBRACKET reduce 143 + VAR reduce 143 + NUMBER reduce 143 + RSQBRACKET reduce 143 + KILLS reduce 143 + TRGCONST reduce 143 + L2V reduce 143 + MAPSTRING reduce 143 + UNIT reduce 143 + SWITCH reduce 143 + LOCATION reduce 143 + STATTXTTBL reduce 143 + VARRAY reduce 143 + STATIC reduce 143 + CONST reduce 143 + INC reduce 143 + DEC reduce 143 + ONCE reduce 143 + IF reduce 143 + SWITCHCASE reduce 143 + WHILE reduce 143 + FOR reduce 143 + FOREACH reduce 143 + CONTINUE reduce 143 + BREAK reduce 143 + RETURN reduce 143 + ACTIONNAME reduce 143 State 265: - nonConstExpr ::= nonConstExpr QMARK expr * COLON expr - - COLON shift 66 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + (139) constExpr ::= constExpr LSHIFT constExpr * + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 139 + COMMA reduce 139 + LOR reduce 139 + LAND reduce 139 + EQ shift 138 -- dropped by precedence + EQ reduce 139 + LE shift 125 -- dropped by precedence + LE reduce 139 + LT shift 123 -- dropped by precedence + LT reduce 139 + GE shift 124 -- dropped by precedence + GE reduce 139 + GT shift 122 -- dropped by precedence + GT reduce 139 + NE shift 126 -- dropped by precedence + NE reduce 139 + BITOR shift 102 -- dropped by precedence + BITOR reduce 139 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 139 + BITAND shift 103 -- dropped by precedence + BITAND reduce 139 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 139 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 139 + PLUS shift 113 + PLUS reduce 139 -- dropped by precedence + MINUS shift 112 + MINUS reduce 139 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 139 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 139 -- dropped by precedence + MOD shift 106 + MOD reduce 139 -- dropped by precedence + BITNOT reduce 139 + LPAREN reduce 139 + LSQBRACKET reduce 139 + PERIOD reduce 139 + SEMICOLON reduce 139 + NAME reduce 139 + COLON reduce 139 + FUNCTION reduce 139 + RPAREN reduce 139 + LBRACKET reduce 139 + VAR reduce 139 + NUMBER reduce 139 + RSQBRACKET reduce 139 + KILLS reduce 139 + TRGCONST reduce 139 + L2V reduce 139 + MAPSTRING reduce 139 + UNIT reduce 139 + SWITCH reduce 139 + LOCATION reduce 139 + STATTXTTBL reduce 139 + VARRAY reduce 139 + STATIC reduce 139 + CONST reduce 139 + INC reduce 139 + DEC reduce 139 + ONCE reduce 139 + IF reduce 139 + SWITCHCASE reduce 139 + WHILE reduce 139 + FOR reduce 139 + FOREACH reduce 139 + CONTINUE reduce 139 + BREAK reduce 139 + RETURN reduce 139 + ACTIONNAME reduce 139 State 266: - constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + (140) nonConstExpr ::= constExpr LSHIFT nonConstExpr * + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - RSQBRACKET shift 429 + QMARK shift 76 -- dropped by precedence + QMARK reduce 140 + COMMA reduce 140 + LOR reduce 140 + LAND reduce 140 + EQ reduce 140 + LE reduce 140 + LT reduce 140 + GE reduce 140 + GT reduce 140 + NE reduce 140 + BITOR shift 66 -- dropped by precedence + BITOR reduce 140 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 140 + BITAND shift 67 -- dropped by precedence + BITAND reduce 140 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 140 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 140 + PLUS shift 74 + PLUS reduce 140 -- dropped by precedence + MINUS shift 73 + MINUS reduce 140 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 140 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 140 -- dropped by precedence + MOD shift 70 + MOD reduce 140 -- dropped by precedence + BITNOT reduce 140 + LPAREN shift 23 + LPAREN reduce 140 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 140 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 140 -- dropped by precedence + SEMICOLON reduce 140 + NAME reduce 140 + COLON reduce 140 + FUNCTION reduce 140 + RPAREN reduce 140 + LBRACKET reduce 140 + VAR reduce 140 + NUMBER reduce 140 + RSQBRACKET reduce 140 + KILLS reduce 140 + TRGCONST reduce 140 + L2V reduce 140 + MAPSTRING reduce 140 + UNIT reduce 140 + SWITCH reduce 140 + LOCATION reduce 140 + STATTXTTBL reduce 140 + VARRAY reduce 140 + STATIC reduce 140 + CONST reduce 140 + INC reduce 140 + DEC reduce 140 + ONCE reduce 140 + IF reduce 140 + SWITCHCASE reduce 140 + WHILE reduce 140 + FOR reduce 140 + FOREACH reduce 140 + CONTINUE reduce 140 + BREAK reduce 140 + RETURN reduce 140 + ACTIONNAME reduce 140 State 267: - constExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN - - RPAREN shift 434 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + (136) constExpr ::= constExpr MOD constExpr * + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 136 + COMMA reduce 136 + LOR reduce 136 + LAND reduce 136 + EQ shift 138 -- dropped by precedence + EQ reduce 136 + LE shift 125 -- dropped by precedence + LE reduce 136 + LT shift 123 -- dropped by precedence + LT reduce 136 + GE shift 124 -- dropped by precedence + GE reduce 136 + GT shift 122 -- dropped by precedence + GT reduce 136 + NE shift 126 -- dropped by precedence + NE reduce 136 + BITOR shift 102 -- dropped by precedence + BITOR reduce 136 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 136 + BITAND shift 103 -- dropped by precedence + BITAND reduce 136 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 136 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 136 + PLUS shift 113 -- dropped by precedence + PLUS reduce 136 + MINUS shift 112 -- dropped by precedence + MINUS reduce 136 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 136 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 136 + MOD shift 106 -- dropped by precedence + MOD reduce 136 + BITNOT reduce 136 + LPAREN reduce 136 + LSQBRACKET reduce 136 + PERIOD reduce 136 + SEMICOLON reduce 136 + NAME reduce 136 + COLON reduce 136 + FUNCTION reduce 136 + RPAREN reduce 136 + LBRACKET reduce 136 + VAR reduce 136 + NUMBER reduce 136 + RSQBRACKET reduce 136 + KILLS reduce 136 + TRGCONST reduce 136 + L2V reduce 136 + MAPSTRING reduce 136 + UNIT reduce 136 + SWITCH reduce 136 + LOCATION reduce 136 + STATTXTTBL reduce 136 + VARRAY reduce 136 + STATIC reduce 136 + CONST reduce 136 + INC reduce 136 + DEC reduce 136 + ONCE reduce 136 + IF reduce 136 + SWITCHCASE reduce 136 + WHILE reduce 136 + FOR reduce 136 + FOREACH reduce 136 + CONTINUE reduce 136 + BREAK reduce 136 + RETURN reduce 136 + ACTIONNAME reduce 136 State 268: - constExpr ::= ACTIONNAME LPAREN fArgs * RPAREN + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + (137) nonConstExpr ::= constExpr MOD nonConstExpr * + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - RPAREN shift 458 + QMARK shift 76 -- dropped by precedence + QMARK reduce 137 + COMMA reduce 137 + LOR reduce 137 + LAND reduce 137 + EQ reduce 137 + LE reduce 137 + LT reduce 137 + GE reduce 137 + GT reduce 137 + NE reduce 137 + BITOR shift 66 -- dropped by precedence + BITOR reduce 137 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 137 + BITAND shift 67 -- dropped by precedence + BITAND reduce 137 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 137 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 137 + PLUS shift 74 -- dropped by precedence + PLUS reduce 137 + MINUS shift 73 -- dropped by precedence + MINUS reduce 137 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 137 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 137 + MOD shift 70 -- dropped by precedence + MOD reduce 137 + BITNOT reduce 137 + LPAREN shift 23 + LPAREN reduce 137 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 137 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 137 -- dropped by precedence + SEMICOLON reduce 137 + NAME reduce 137 + COLON reduce 137 + FUNCTION reduce 137 + RPAREN reduce 137 + LBRACKET reduce 137 + VAR reduce 137 + NUMBER reduce 137 + RSQBRACKET reduce 137 + KILLS reduce 137 + TRGCONST reduce 137 + L2V reduce 137 + MAPSTRING reduce 137 + UNIT reduce 137 + SWITCH reduce 137 + LOCATION reduce 137 + STATTXTTBL reduce 137 + VARRAY reduce 137 + STATIC reduce 137 + CONST reduce 137 + INC reduce 137 + DEC reduce 137 + ONCE reduce 137 + IF reduce 137 + SWITCHCASE reduce 137 + WHILE reduce 137 + FOR reduce 137 + FOREACH reduce 137 + CONTINUE reduce 137 + BREAK reduce 137 + RETURN reduce 137 + ACTIONNAME reduce 137 State 269: - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - (101) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * - - COMMA shift 29 - {default} reduce 101 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + (133) constExpr ::= constExpr DIVIDE constExpr * + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 133 + COMMA reduce 133 + LOR reduce 133 + LAND reduce 133 + EQ shift 138 -- dropped by precedence + EQ reduce 133 + LE shift 125 -- dropped by precedence + LE reduce 133 + LT shift 123 -- dropped by precedence + LT reduce 133 + GE shift 124 -- dropped by precedence + GE reduce 133 + GT shift 122 -- dropped by precedence + GT reduce 133 + NE shift 126 -- dropped by precedence + NE reduce 133 + BITOR shift 102 -- dropped by precedence + BITOR reduce 133 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 133 + BITAND shift 103 -- dropped by precedence + BITAND reduce 133 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 133 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 133 + PLUS shift 113 -- dropped by precedence + PLUS reduce 133 + MINUS shift 112 -- dropped by precedence + MINUS reduce 133 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 133 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 133 + MOD shift 106 -- dropped by precedence + MOD reduce 133 + BITNOT reduce 133 + LPAREN reduce 133 + LSQBRACKET reduce 133 + PERIOD reduce 133 + SEMICOLON reduce 133 + NAME reduce 133 + COLON reduce 133 + FUNCTION reduce 133 + RPAREN reduce 133 + LBRACKET reduce 133 + VAR reduce 133 + NUMBER reduce 133 + RSQBRACKET reduce 133 + KILLS reduce 133 + TRGCONST reduce 133 + L2V reduce 133 + MAPSTRING reduce 133 + UNIT reduce 133 + SWITCH reduce 133 + LOCATION reduce 133 + STATTXTTBL reduce 133 + VARRAY reduce 133 + STATIC reduce 133 + CONST reduce 133 + INC reduce 133 + DEC reduce 133 + ONCE reduce 133 + IF reduce 133 + SWITCHCASE reduce 133 + WHILE reduce 133 + FOR reduce 133 + FOREACH reduce 133 + CONTINUE reduce 133 + BREAK reduce 133 + RETURN reduce 133 + ACTIONNAME reduce 133 State 270: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - (100) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - - COMMA shift 31 - {default} reduce 100 + (153) nonConstExpr ::= nonConstExpr BITXOR expr * + + QMARK reduce 153 + COMMA reduce 153 + LOR reduce 153 + LAND reduce 153 + EQ reduce 153 + LE reduce 153 + LT reduce 153 + GE reduce 153 + GT reduce 153 + NE reduce 153 + BITOR reduce 153 + BITXOR reduce 153 + BITAND reduce 153 + LSHIFT reduce 153 + RSHIFT reduce 153 + PLUS reduce 153 + MINUS reduce 153 + DIVIDE reduce 153 + MULTIPLY reduce 153 + MOD reduce 153 + BITNOT reduce 153 + LPAREN reduce 153 + LSQBRACKET reduce 153 + PERIOD reduce 153 + SEMICOLON reduce 153 + NAME reduce 153 + COLON reduce 153 + FUNCTION reduce 153 + RPAREN reduce 153 + LBRACKET reduce 153 + VAR reduce 153 + NUMBER reduce 153 + RSQBRACKET reduce 153 + KILLS reduce 153 + TRGCONST reduce 153 + L2V reduce 153 + MAPSTRING reduce 153 + UNIT reduce 153 + SWITCH reduce 153 + LOCATION reduce 153 + STATTXTTBL reduce 153 + VARRAY reduce 153 + STATIC reduce 153 + CONST reduce 153 + INC reduce 153 + DEC reduce 153 + ONCE reduce 153 + IF reduce 153 + SWITCHCASE reduce 153 + WHILE reduce 153 + FOR reduce 153 + FOREACH reduce 153 + CONTINUE reduce 153 + BREAK reduce 153 + RETURN reduce 153 + ACTIONNAME reduce 153 State 271: - constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - - LPAREN shift 24 + (150) nonConstExpr ::= nonConstExpr BITOR expr * + + QMARK reduce 150 + COMMA reduce 150 + LOR reduce 150 + LAND reduce 150 + EQ reduce 150 + LE reduce 150 + LT reduce 150 + GE reduce 150 + GT reduce 150 + NE reduce 150 + BITOR reduce 150 + BITXOR reduce 150 + BITAND reduce 150 + LSHIFT reduce 150 + RSHIFT reduce 150 + PLUS reduce 150 + MINUS reduce 150 + DIVIDE reduce 150 + MULTIPLY reduce 150 + MOD reduce 150 + BITNOT reduce 150 + LPAREN reduce 150 + LSQBRACKET reduce 150 + PERIOD reduce 150 + SEMICOLON reduce 150 + NAME reduce 150 + COLON reduce 150 + FUNCTION reduce 150 + RPAREN reduce 150 + LBRACKET reduce 150 + VAR reduce 150 + NUMBER reduce 150 + RSQBRACKET reduce 150 + KILLS reduce 150 + TRGCONST reduce 150 + L2V reduce 150 + MAPSTRING reduce 150 + UNIT reduce 150 + SWITCH reduce 150 + LOCATION reduce 150 + STATTXTTBL reduce 150 + VARRAY reduce 150 + STATIC reduce 150 + CONST reduce 150 + INC reduce 150 + DEC reduce 150 + ONCE reduce 150 + IF reduce 150 + SWITCHCASE reduce 150 + WHILE reduce 150 + FOR reduce 150 + FOREACH reduce 150 + CONTINUE reduce 150 + BREAK reduce 150 + RETURN reduce 150 + ACTIONNAME reduce 150 State 272: - constExpr ::= CONDITIONNAME * LPAREN fArgs RPAREN - - LPAREN shift 25 + (147) nonConstExpr ::= nonConstExpr BITAND expr * + + QMARK reduce 147 + COMMA reduce 147 + LOR reduce 147 + LAND reduce 147 + EQ reduce 147 + LE reduce 147 + LT reduce 147 + GE reduce 147 + GT reduce 147 + NE reduce 147 + BITOR reduce 147 + BITXOR reduce 147 + BITAND reduce 147 + LSHIFT reduce 147 + RSHIFT reduce 147 + PLUS reduce 147 + MINUS reduce 147 + DIVIDE reduce 147 + MULTIPLY reduce 147 + MOD reduce 147 + BITNOT reduce 147 + LPAREN reduce 147 + LSQBRACKET reduce 147 + PERIOD reduce 147 + SEMICOLON reduce 147 + NAME reduce 147 + COLON reduce 147 + FUNCTION reduce 147 + RPAREN reduce 147 + LBRACKET reduce 147 + VAR reduce 147 + NUMBER reduce 147 + RSQBRACKET reduce 147 + KILLS reduce 147 + TRGCONST reduce 147 + L2V reduce 147 + MAPSTRING reduce 147 + UNIT reduce 147 + SWITCH reduce 147 + LOCATION reduce 147 + STATTXTTBL reduce 147 + VARRAY reduce 147 + STATIC reduce 147 + CONST reduce 147 + INC reduce 147 + DEC reduce 147 + ONCE reduce 147 + IF reduce 147 + SWITCHCASE reduce 147 + WHILE reduce 147 + FOR reduce 147 + FOREACH reduce 147 + CONTINUE reduce 147 + BREAK reduce 147 + RETURN reduce 147 + ACTIONNAME reduce 147 State 273: - constExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN - - RPAREN shift 473 + (144) nonConstExpr ::= nonConstExpr RSHIFT expr * + + QMARK reduce 144 + COMMA reduce 144 + LOR reduce 144 + LAND reduce 144 + EQ reduce 144 + LE reduce 144 + LT reduce 144 + GE reduce 144 + GT reduce 144 + NE reduce 144 + BITOR reduce 144 + BITXOR reduce 144 + BITAND reduce 144 + LSHIFT reduce 144 + RSHIFT reduce 144 + PLUS reduce 144 + MINUS reduce 144 + DIVIDE reduce 144 + MULTIPLY reduce 144 + MOD reduce 144 + BITNOT reduce 144 + LPAREN reduce 144 + LSQBRACKET reduce 144 + PERIOD reduce 144 + SEMICOLON reduce 144 + NAME reduce 144 + COLON reduce 144 + FUNCTION reduce 144 + RPAREN reduce 144 + LBRACKET reduce 144 + VAR reduce 144 + NUMBER reduce 144 + RSQBRACKET reduce 144 + KILLS reduce 144 + TRGCONST reduce 144 + L2V reduce 144 + MAPSTRING reduce 144 + UNIT reduce 144 + SWITCH reduce 144 + LOCATION reduce 144 + STATTXTTBL reduce 144 + VARRAY reduce 144 + STATIC reduce 144 + CONST reduce 144 + INC reduce 144 + DEC reduce 144 + ONCE reduce 144 + IF reduce 144 + SWITCHCASE reduce 144 + WHILE reduce 144 + FOR reduce 144 + FOREACH reduce 144 + CONTINUE reduce 144 + BREAK reduce 144 + RETURN reduce 144 + ACTIONNAME reduce 144 State 274: - constExpr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN - - LPAREN shift 43 + (141) nonConstExpr ::= nonConstExpr LSHIFT expr * + + QMARK reduce 141 + COMMA reduce 141 + LOR reduce 141 + LAND reduce 141 + EQ reduce 141 + LE reduce 141 + LT reduce 141 + GE reduce 141 + GT reduce 141 + NE reduce 141 + BITOR reduce 141 + BITXOR reduce 141 + BITAND reduce 141 + LSHIFT reduce 141 + RSHIFT reduce 141 + PLUS reduce 141 + MINUS reduce 141 + DIVIDE reduce 141 + MULTIPLY reduce 141 + MOD reduce 141 + BITNOT reduce 141 + LPAREN reduce 141 + LSQBRACKET reduce 141 + PERIOD reduce 141 + SEMICOLON reduce 141 + NAME reduce 141 + COLON reduce 141 + FUNCTION reduce 141 + RPAREN reduce 141 + LBRACKET reduce 141 + VAR reduce 141 + NUMBER reduce 141 + RSQBRACKET reduce 141 + KILLS reduce 141 + TRGCONST reduce 141 + L2V reduce 141 + MAPSTRING reduce 141 + UNIT reduce 141 + SWITCH reduce 141 + LOCATION reduce 141 + STATTXTTBL reduce 141 + VARRAY reduce 141 + STATIC reduce 141 + CONST reduce 141 + INC reduce 141 + DEC reduce 141 + ONCE reduce 141 + IF reduce 141 + SWITCHCASE reduce 141 + WHILE reduce 141 + FOR reduce 141 + FOREACH reduce 141 + CONTINUE reduce 141 + BREAK reduce 141 + RETURN reduce 141 + ACTIONNAME reduce 141 State 275: - constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN - - RPAREN shift 474 + (280) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * + + QMARK reduce 280 + COMMA reduce 280 + LOR reduce 280 + LAND reduce 280 + EQ reduce 280 + LE reduce 280 + LT reduce 280 + GE reduce 280 + GT reduce 280 + NE reduce 280 + BITOR reduce 280 + BITXOR reduce 280 + BITAND reduce 280 + LSHIFT reduce 280 + RSHIFT reduce 280 + PLUS reduce 280 + MINUS reduce 280 + DIVIDE reduce 280 + MULTIPLY reduce 280 + MOD reduce 280 + BITNOT reduce 280 + LPAREN reduce 280 + LSQBRACKET reduce 280 + PERIOD reduce 280 + SEMICOLON reduce 280 + NAME reduce 280 + COLON reduce 280 + FUNCTION reduce 280 + RPAREN reduce 280 + LBRACKET reduce 280 + VAR reduce 280 + NUMBER reduce 280 + RSQBRACKET reduce 280 + KILLS reduce 280 + TRGCONST reduce 280 + L2V reduce 280 + MAPSTRING reduce 280 + UNIT reduce 280 + SWITCH reduce 280 + LOCATION reduce 280 + STATTXTTBL reduce 280 + VARRAY reduce 280 + STATIC reduce 280 + CONST reduce 280 + INC reduce 280 + DEC reduce 280 + ONCE reduce 280 + IF reduce 280 + SWITCHCASE reduce 280 + WHILE reduce 280 + FOR reduce 280 + FOREACH reduce 280 + CONTINUE reduce 280 + BREAK reduce 280 + RETURN reduce 280 + ACTIONNAME reduce 280 State 276: - constExpr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN - - LPAREN shift 44 + (138) nonConstExpr ::= nonConstExpr MOD expr * + + QMARK reduce 138 + COMMA reduce 138 + LOR reduce 138 + LAND reduce 138 + EQ reduce 138 + LE reduce 138 + LT reduce 138 + GE reduce 138 + GT reduce 138 + NE reduce 138 + BITOR reduce 138 + BITXOR reduce 138 + BITAND reduce 138 + LSHIFT reduce 138 + RSHIFT reduce 138 + PLUS reduce 138 + MINUS reduce 138 + DIVIDE reduce 138 + MULTIPLY reduce 138 + MOD reduce 138 + BITNOT reduce 138 + LPAREN reduce 138 + LSQBRACKET reduce 138 + PERIOD reduce 138 + SEMICOLON reduce 138 + NAME reduce 138 + COLON reduce 138 + FUNCTION reduce 138 + RPAREN reduce 138 + LBRACKET reduce 138 + VAR reduce 138 + NUMBER reduce 138 + RSQBRACKET reduce 138 + KILLS reduce 138 + TRGCONST reduce 138 + L2V reduce 138 + MAPSTRING reduce 138 + UNIT reduce 138 + SWITCH reduce 138 + LOCATION reduce 138 + STATTXTTBL reduce 138 + VARRAY reduce 138 + STATIC reduce 138 + CONST reduce 138 + INC reduce 138 + DEC reduce 138 + ONCE reduce 138 + IF reduce 138 + SWITCHCASE reduce 138 + WHILE reduce 138 + FOR reduce 138 + FOREACH reduce 138 + CONTINUE reduce 138 + BREAK reduce 138 + RETURN reduce 138 + ACTIONNAME reduce 138 State 277: - constExpr ::= STATTXTTBL LPAREN STRING * RPAREN + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + (134) nonConstExpr ::= constExpr DIVIDE nonConstExpr * + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - RPAREN shift 475 + QMARK shift 76 -- dropped by precedence + QMARK reduce 134 + COMMA reduce 134 + LOR reduce 134 + LAND reduce 134 + EQ reduce 134 + LE reduce 134 + LT reduce 134 + GE reduce 134 + GT reduce 134 + NE reduce 134 + BITOR shift 66 -- dropped by precedence + BITOR reduce 134 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 134 + BITAND shift 67 -- dropped by precedence + BITAND reduce 134 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 134 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 134 + PLUS shift 74 -- dropped by precedence + PLUS reduce 134 + MINUS shift 73 -- dropped by precedence + MINUS reduce 134 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 134 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 134 + MOD shift 70 -- dropped by precedence + MOD reduce 134 + BITNOT reduce 134 + LPAREN shift 23 + LPAREN reduce 134 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 134 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 134 -- dropped by precedence + SEMICOLON reduce 134 + NAME reduce 134 + COLON reduce 134 + FUNCTION reduce 134 + RPAREN reduce 134 + LBRACKET reduce 134 + VAR reduce 134 + NUMBER reduce 134 + RSQBRACKET reduce 134 + KILLS reduce 134 + TRGCONST reduce 134 + L2V reduce 134 + MAPSTRING reduce 134 + UNIT reduce 134 + SWITCH reduce 134 + LOCATION reduce 134 + STATTXTTBL reduce 134 + VARRAY reduce 134 + STATIC reduce 134 + CONST reduce 134 + INC reduce 134 + DEC reduce 134 + ONCE reduce 134 + IF reduce 134 + SWITCHCASE reduce 134 + WHILE reduce 134 + FOR reduce 134 + FOREACH reduce 134 + CONTINUE reduce 134 + BREAK reduce 134 + RETURN reduce 134 + ACTIONNAME reduce 134 State 278: - constExpr ::= STATTXTTBL LPAREN * STRING RPAREN - - STRING shift 277 + (135) nonConstExpr ::= nonConstExpr DIVIDE expr * + + QMARK reduce 135 + COMMA reduce 135 + LOR reduce 135 + LAND reduce 135 + EQ reduce 135 + LE reduce 135 + LT reduce 135 + GE reduce 135 + GT reduce 135 + NE reduce 135 + BITOR reduce 135 + BITXOR reduce 135 + BITAND reduce 135 + LSHIFT reduce 135 + RSHIFT reduce 135 + PLUS reduce 135 + MINUS reduce 135 + DIVIDE reduce 135 + MULTIPLY reduce 135 + MOD reduce 135 + BITNOT reduce 135 + LPAREN reduce 135 + LSQBRACKET reduce 135 + PERIOD reduce 135 + SEMICOLON reduce 135 + NAME reduce 135 + COLON reduce 135 + FUNCTION reduce 135 + RPAREN reduce 135 + LBRACKET reduce 135 + VAR reduce 135 + NUMBER reduce 135 + RSQBRACKET reduce 135 + KILLS reduce 135 + TRGCONST reduce 135 + L2V reduce 135 + MAPSTRING reduce 135 + UNIT reduce 135 + SWITCH reduce 135 + LOCATION reduce 135 + STATTXTTBL reduce 135 + VARRAY reduce 135 + STATIC reduce 135 + CONST reduce 135 + INC reduce 135 + DEC reduce 135 + ONCE reduce 135 + IF reduce 135 + SWITCHCASE reduce 135 + WHILE reduce 135 + FOR reduce 135 + FOREACH reduce 135 + CONTINUE reduce 135 + BREAK reduce 135 + RETURN reduce 135 + ACTIONNAME reduce 135 State 279: - constExpr ::= STATTXTTBL * LPAREN STRING RPAREN + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + (131) nonConstExpr ::= constExpr MULTIPLY nonConstExpr * + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - LPAREN shift 278 + QMARK shift 76 -- dropped by precedence + QMARK reduce 131 + COMMA reduce 131 + LOR reduce 131 + LAND reduce 131 + EQ reduce 131 + LE reduce 131 + LT reduce 131 + GE reduce 131 + GT reduce 131 + NE reduce 131 + BITOR shift 66 -- dropped by precedence + BITOR reduce 131 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 131 + BITAND shift 67 -- dropped by precedence + BITAND reduce 131 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 131 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 131 + PLUS shift 74 -- dropped by precedence + PLUS reduce 131 + MINUS shift 73 -- dropped by precedence + MINUS reduce 131 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 131 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 131 + MOD shift 70 -- dropped by precedence + MOD reduce 131 + BITNOT reduce 131 + LPAREN shift 23 + LPAREN reduce 131 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 131 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 131 -- dropped by precedence + SEMICOLON reduce 131 + NAME reduce 131 + COLON reduce 131 + FUNCTION reduce 131 + RPAREN reduce 131 + LBRACKET reduce 131 + VAR reduce 131 + NUMBER reduce 131 + RSQBRACKET reduce 131 + KILLS reduce 131 + TRGCONST reduce 131 + L2V reduce 131 + MAPSTRING reduce 131 + UNIT reduce 131 + SWITCH reduce 131 + LOCATION reduce 131 + STATTXTTBL reduce 131 + VARRAY reduce 131 + STATIC reduce 131 + CONST reduce 131 + INC reduce 131 + DEC reduce 131 + ONCE reduce 131 + IF reduce 131 + SWITCHCASE reduce 131 + WHILE reduce 131 + FOR reduce 131 + FOREACH reduce 131 + CONTINUE reduce 131 + BREAK reduce 131 + RETURN reduce 131 + ACTIONNAME reduce 131 State 280: - constExpr ::= LOCATION LPAREN STRING * RPAREN - - RPAREN shift 476 + (132) nonConstExpr ::= nonConstExpr MULTIPLY expr * + + QMARK reduce 132 + COMMA reduce 132 + LOR reduce 132 + LAND reduce 132 + EQ reduce 132 + LE reduce 132 + LT reduce 132 + GE reduce 132 + GT reduce 132 + NE reduce 132 + BITOR reduce 132 + BITXOR reduce 132 + BITAND reduce 132 + LSHIFT reduce 132 + RSHIFT reduce 132 + PLUS reduce 132 + MINUS reduce 132 + DIVIDE reduce 132 + MULTIPLY reduce 132 + MOD reduce 132 + BITNOT reduce 132 + LPAREN reduce 132 + LSQBRACKET reduce 132 + PERIOD reduce 132 + SEMICOLON reduce 132 + NAME reduce 132 + COLON reduce 132 + FUNCTION reduce 132 + RPAREN reduce 132 + LBRACKET reduce 132 + VAR reduce 132 + NUMBER reduce 132 + RSQBRACKET reduce 132 + KILLS reduce 132 + TRGCONST reduce 132 + L2V reduce 132 + MAPSTRING reduce 132 + UNIT reduce 132 + SWITCH reduce 132 + LOCATION reduce 132 + STATTXTTBL reduce 132 + VARRAY reduce 132 + STATIC reduce 132 + CONST reduce 132 + INC reduce 132 + DEC reduce 132 + ONCE reduce 132 + IF reduce 132 + SWITCHCASE reduce 132 + WHILE reduce 132 + FOR reduce 132 + FOREACH reduce 132 + CONTINUE reduce 132 + BREAK reduce 132 + RETURN reduce 132 + ACTIONNAME reduce 132 State 281: - constExpr ::= LOCATION LPAREN * STRING RPAREN - - STRING shift 280 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (159) nonConstExpr ::= BITNOT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 159 + COMMA reduce 159 + LOR reduce 159 + LAND reduce 159 + EQ reduce 159 + LE reduce 159 + LT reduce 159 + GE reduce 159 + GT reduce 159 + NE reduce 159 + BITOR shift 66 -- dropped by precedence + BITOR reduce 159 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 159 + BITAND shift 67 -- dropped by precedence + BITAND reduce 159 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 159 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 159 + PLUS shift 74 -- dropped by precedence + PLUS reduce 159 + MINUS shift 73 -- dropped by precedence + MINUS reduce 159 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 159 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 159 + MOD shift 70 -- dropped by precedence + MOD reduce 159 + BITNOT reduce 159 + LPAREN shift 23 + LPAREN reduce 159 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 159 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 159 -- dropped by precedence + SEMICOLON reduce 159 + NAME reduce 159 + COLON reduce 159 + FUNCTION reduce 159 + RPAREN reduce 159 + LBRACKET reduce 159 + VAR reduce 159 + NUMBER reduce 159 + RSQBRACKET reduce 159 + KILLS reduce 159 + TRGCONST reduce 159 + L2V reduce 159 + MAPSTRING reduce 159 + UNIT reduce 159 + SWITCH reduce 159 + LOCATION reduce 159 + STATTXTTBL reduce 159 + VARRAY reduce 159 + STATIC reduce 159 + CONST reduce 159 + INC reduce 159 + DEC reduce 159 + ONCE reduce 159 + IF reduce 159 + SWITCHCASE reduce 159 + WHILE reduce 159 + FOR reduce 159 + FOREACH reduce 159 + CONTINUE reduce 159 + BREAK reduce 159 + RETURN reduce 159 + ACTIONNAME reduce 159 State 282: - constExpr ::= LOCATION * LPAREN STRING RPAREN - - LPAREN shift 281 + (129) nonConstExpr ::= nonConstExpr MINUS expr * + + QMARK reduce 129 + COMMA reduce 129 + LOR reduce 129 + LAND reduce 129 + EQ reduce 129 + LE reduce 129 + LT reduce 129 + GE reduce 129 + GT reduce 129 + NE reduce 129 + BITOR reduce 129 + BITXOR reduce 129 + BITAND reduce 129 + LSHIFT reduce 129 + RSHIFT reduce 129 + PLUS reduce 129 + MINUS reduce 129 + DIVIDE reduce 129 + MULTIPLY reduce 129 + MOD reduce 129 + BITNOT reduce 129 + LPAREN reduce 129 + LSQBRACKET reduce 129 + PERIOD reduce 129 + SEMICOLON reduce 129 + NAME reduce 129 + COLON reduce 129 + FUNCTION reduce 129 + RPAREN reduce 129 + LBRACKET reduce 129 + VAR reduce 129 + NUMBER reduce 129 + RSQBRACKET reduce 129 + KILLS reduce 129 + TRGCONST reduce 129 + L2V reduce 129 + MAPSTRING reduce 129 + UNIT reduce 129 + SWITCH reduce 129 + LOCATION reduce 129 + STATTXTTBL reduce 129 + VARRAY reduce 129 + STATIC reduce 129 + CONST reduce 129 + INC reduce 129 + DEC reduce 129 + ONCE reduce 129 + IF reduce 129 + SWITCHCASE reduce 129 + WHILE reduce 129 + FOR reduce 129 + FOREACH reduce 129 + CONTINUE reduce 129 + BREAK reduce 129 + RETURN reduce 129 + ACTIONNAME reduce 129 State 283: - constExpr ::= SWITCH LPAREN STRING * RPAREN - - RPAREN shift 477 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (157) nonConstExpr ::= MINUS nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 157 + COMMA reduce 157 + LOR reduce 157 + LAND reduce 157 + EQ reduce 157 + LE reduce 157 + LT reduce 157 + GE reduce 157 + GT reduce 157 + NE reduce 157 + BITOR shift 66 -- dropped by precedence + BITOR reduce 157 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 157 + BITAND shift 67 -- dropped by precedence + BITAND reduce 157 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 157 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 157 + PLUS shift 74 -- dropped by precedence + PLUS reduce 157 + MINUS shift 73 -- dropped by precedence + MINUS reduce 157 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 157 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 157 + MOD shift 70 -- dropped by precedence + MOD reduce 157 + BITNOT reduce 157 + LPAREN shift 23 + LPAREN reduce 157 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 157 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 157 -- dropped by precedence + SEMICOLON reduce 157 + NAME reduce 157 + COLON reduce 157 + FUNCTION reduce 157 + RPAREN reduce 157 + LBRACKET reduce 157 + VAR reduce 157 + NUMBER reduce 157 + RSQBRACKET reduce 157 + KILLS reduce 157 + TRGCONST reduce 157 + L2V reduce 157 + MAPSTRING reduce 157 + UNIT reduce 157 + SWITCH reduce 157 + LOCATION reduce 157 + STATTXTTBL reduce 157 + VARRAY reduce 157 + STATIC reduce 157 + CONST reduce 157 + INC reduce 157 + DEC reduce 157 + ONCE reduce 157 + IF reduce 157 + SWITCHCASE reduce 157 + WHILE reduce 157 + FOR reduce 157 + FOREACH reduce 157 + CONTINUE reduce 157 + BREAK reduce 157 + RETURN reduce 157 + ACTIONNAME reduce 157 State 284: - constExpr ::= SWITCH LPAREN * STRING RPAREN - - STRING shift 283 + (126) nonConstExpr ::= nonConstExpr PLUS expr * + + QMARK reduce 126 + COMMA reduce 126 + LOR reduce 126 + LAND reduce 126 + EQ reduce 126 + LE reduce 126 + LT reduce 126 + GE reduce 126 + GT reduce 126 + NE reduce 126 + BITOR reduce 126 + BITXOR reduce 126 + BITAND reduce 126 + LSHIFT reduce 126 + RSHIFT reduce 126 + PLUS reduce 126 + MINUS reduce 126 + DIVIDE reduce 126 + MULTIPLY reduce 126 + MOD reduce 126 + BITNOT reduce 126 + LPAREN reduce 126 + LSQBRACKET reduce 126 + PERIOD reduce 126 + SEMICOLON reduce 126 + NAME reduce 126 + COLON reduce 126 + FUNCTION reduce 126 + RPAREN reduce 126 + LBRACKET reduce 126 + VAR reduce 126 + NUMBER reduce 126 + RSQBRACKET reduce 126 + KILLS reduce 126 + TRGCONST reduce 126 + L2V reduce 126 + MAPSTRING reduce 126 + UNIT reduce 126 + SWITCH reduce 126 + LOCATION reduce 126 + STATTXTTBL reduce 126 + VARRAY reduce 126 + STATIC reduce 126 + CONST reduce 126 + INC reduce 126 + DEC reduce 126 + ONCE reduce 126 + IF reduce 126 + SWITCHCASE reduce 126 + WHILE reduce 126 + FOR reduce 126 + FOREACH reduce 126 + CONTINUE reduce 126 + BREAK reduce 126 + RETURN reduce 126 + ACTIONNAME reduce 126 State 285: - constExpr ::= SWITCH * LPAREN STRING RPAREN - - LPAREN shift 284 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (155) nonConstExpr ::= PLUS nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 155 + COMMA reduce 155 + LOR reduce 155 + LAND reduce 155 + EQ reduce 155 + LE reduce 155 + LT reduce 155 + GE reduce 155 + GT reduce 155 + NE reduce 155 + BITOR shift 66 -- dropped by precedence + BITOR reduce 155 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 155 + BITAND shift 67 -- dropped by precedence + BITAND reduce 155 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 155 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 155 + PLUS shift 74 -- dropped by precedence + PLUS reduce 155 + MINUS shift 73 -- dropped by precedence + MINUS reduce 155 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 155 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 155 + MOD shift 70 -- dropped by precedence + MOD reduce 155 + BITNOT reduce 155 + LPAREN shift 23 + LPAREN reduce 155 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 155 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 155 -- dropped by precedence + SEMICOLON reduce 155 + NAME reduce 155 + COLON reduce 155 + FUNCTION reduce 155 + RPAREN reduce 155 + LBRACKET reduce 155 + VAR reduce 155 + NUMBER reduce 155 + RSQBRACKET reduce 155 + KILLS reduce 155 + TRGCONST reduce 155 + L2V reduce 155 + MAPSTRING reduce 155 + UNIT reduce 155 + SWITCH reduce 155 + LOCATION reduce 155 + STATTXTTBL reduce 155 + VARRAY reduce 155 + STATIC reduce 155 + CONST reduce 155 + INC reduce 155 + DEC reduce 155 + ONCE reduce 155 + IF reduce 155 + SWITCHCASE reduce 155 + WHILE reduce 155 + FOR reduce 155 + FOREACH reduce 155 + CONTINUE reduce 155 + BREAK reduce 155 + RETURN reduce 155 + ACTIONNAME reduce 155 State 286: - constExpr ::= UNIT LPAREN STRING * RPAREN - - RPAREN shift 478 + (122) logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * + + QMARK reduce 122 + COMMA reduce 122 + LOR reduce 122 + LAND reduce 122 + EQ reduce 122 + LE reduce 122 + LT reduce 122 + GE reduce 122 + GT reduce 122 + NE reduce 122 + BITOR reduce 122 + BITXOR reduce 122 + BITAND reduce 122 + LSHIFT reduce 122 + RSHIFT reduce 122 + PLUS reduce 122 + MINUS reduce 122 + DIVIDE reduce 122 + MULTIPLY reduce 122 + MOD reduce 122 + BITNOT reduce 122 + LPAREN reduce 122 + LSQBRACKET reduce 122 + PERIOD reduce 122 + SEMICOLON reduce 122 + NAME reduce 122 + COLON reduce 122 + FUNCTION reduce 122 + RPAREN reduce 122 + LBRACKET reduce 122 + VAR reduce 122 + NUMBER reduce 122 + RSQBRACKET reduce 122 + KILLS reduce 122 + TRGCONST reduce 122 + L2V reduce 122 + MAPSTRING reduce 122 + UNIT reduce 122 + SWITCH reduce 122 + LOCATION reduce 122 + STATTXTTBL reduce 122 + VARRAY reduce 122 + STATIC reduce 122 + CONST reduce 122 + INC reduce 122 + DEC reduce 122 + ONCE reduce 122 + IF reduce 122 + SWITCHCASE reduce 122 + WHILE reduce 122 + FOR reduce 122 + FOREACH reduce 122 + CONTINUE reduce 122 + BREAK reduce 122 + RETURN reduce 122 + ACTIONNAME reduce 122 State 287: - constExpr ::= UNIT LPAREN * STRING RPAREN - - STRING shift 286 + (121) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * + + QMARK reduce 121 + COMMA reduce 121 + LOR reduce 121 + LAND reduce 121 + EQ reduce 121 + LE reduce 121 + LT reduce 121 + GE reduce 121 + GT reduce 121 + NE reduce 121 + BITOR reduce 121 + BITXOR reduce 121 + BITAND reduce 121 + LSHIFT reduce 121 + RSHIFT reduce 121 + PLUS reduce 121 + MINUS reduce 121 + DIVIDE reduce 121 + MULTIPLY reduce 121 + MOD reduce 121 + BITNOT reduce 121 + LPAREN reduce 121 + LSQBRACKET reduce 121 + PERIOD reduce 121 + SEMICOLON reduce 121 + NAME reduce 121 + COLON reduce 121 + FUNCTION reduce 121 + RPAREN reduce 121 + LBRACKET reduce 121 + VAR reduce 121 + NUMBER reduce 121 + RSQBRACKET reduce 121 + KILLS reduce 121 + TRGCONST reduce 121 + L2V reduce 121 + MAPSTRING reduce 121 + UNIT reduce 121 + SWITCH reduce 121 + LOCATION reduce 121 + STATTXTTBL reduce 121 + VARRAY reduce 121 + STATIC reduce 121 + CONST reduce 121 + INC reduce 121 + DEC reduce 121 + ONCE reduce 121 + IF reduce 121 + SWITCHCASE reduce 121 + WHILE reduce 121 + FOR reduce 121 + FOREACH reduce 121 + CONTINUE reduce 121 + BREAK reduce 121 + RETURN reduce 121 + ACTIONNAME reduce 121 State 288: - constExpr ::= UNIT * LPAREN STRING RPAREN - - LPAREN shift 287 + (120) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * + + QMARK reduce 120 + COMMA reduce 120 + LOR reduce 120 + LAND reduce 120 + EQ reduce 120 + LE reduce 120 + LT reduce 120 + GE reduce 120 + GT reduce 120 + NE reduce 120 + BITOR reduce 120 + BITXOR reduce 120 + BITAND reduce 120 + LSHIFT reduce 120 + RSHIFT reduce 120 + PLUS reduce 120 + MINUS reduce 120 + DIVIDE reduce 120 + MULTIPLY reduce 120 + MOD reduce 120 + BITNOT reduce 120 + LPAREN reduce 120 + LSQBRACKET reduce 120 + PERIOD reduce 120 + SEMICOLON reduce 120 + NAME reduce 120 + COLON reduce 120 + FUNCTION reduce 120 + RPAREN reduce 120 + LBRACKET reduce 120 + VAR reduce 120 + NUMBER reduce 120 + RSQBRACKET reduce 120 + KILLS reduce 120 + TRGCONST reduce 120 + L2V reduce 120 + MAPSTRING reduce 120 + UNIT reduce 120 + SWITCH reduce 120 + LOCATION reduce 120 + STATTXTTBL reduce 120 + VARRAY reduce 120 + STATIC reduce 120 + CONST reduce 120 + INC reduce 120 + DEC reduce 120 + ONCE reduce 120 + IF reduce 120 + SWITCHCASE reduce 120 + WHILE reduce 120 + FOR reduce 120 + FOREACH reduce 120 + CONTINUE reduce 120 + BREAK reduce 120 + RETURN reduce 120 + ACTIONNAME reduce 120 State 289: - constExpr ::= MAPSTRING LPAREN STRING * RPAREN - - RPAREN shift 479 + (119) constExpr ::= LOCATION LPAREN STRING RPAREN * + + QMARK reduce 119 + COMMA reduce 119 + LOR reduce 119 + LAND reduce 119 + EQ reduce 119 + LE reduce 119 + LT reduce 119 + GE reduce 119 + GT reduce 119 + NE reduce 119 + BITOR reduce 119 + BITXOR reduce 119 + BITAND reduce 119 + LSHIFT reduce 119 + RSHIFT reduce 119 + PLUS reduce 119 + MINUS reduce 119 + DIVIDE reduce 119 + MULTIPLY reduce 119 + MOD reduce 119 + BITNOT reduce 119 + LPAREN reduce 119 + LSQBRACKET reduce 119 + PERIOD reduce 119 + SEMICOLON reduce 119 + NAME reduce 119 + COLON reduce 119 + FUNCTION reduce 119 + RPAREN reduce 119 + LBRACKET reduce 119 + VAR reduce 119 + NUMBER reduce 119 + RSQBRACKET reduce 119 + KILLS reduce 119 + TRGCONST reduce 119 + L2V reduce 119 + MAPSTRING reduce 119 + UNIT reduce 119 + SWITCH reduce 119 + LOCATION reduce 119 + STATTXTTBL reduce 119 + VARRAY reduce 119 + STATIC reduce 119 + CONST reduce 119 + INC reduce 119 + DEC reduce 119 + ONCE reduce 119 + IF reduce 119 + SWITCHCASE reduce 119 + WHILE reduce 119 + FOR reduce 119 + FOREACH reduce 119 + CONTINUE reduce 119 + BREAK reduce 119 + RETURN reduce 119 + ACTIONNAME reduce 119 State 290: - constExpr ::= MAPSTRING LPAREN * STRING RPAREN - - STRING shift 289 + (118) constExpr ::= SWITCH LPAREN STRING RPAREN * + + QMARK reduce 118 + COMMA reduce 118 + LOR reduce 118 + LAND reduce 118 + EQ reduce 118 + LE reduce 118 + LT reduce 118 + GE reduce 118 + GT reduce 118 + NE reduce 118 + BITOR reduce 118 + BITXOR reduce 118 + BITAND reduce 118 + LSHIFT reduce 118 + RSHIFT reduce 118 + PLUS reduce 118 + MINUS reduce 118 + DIVIDE reduce 118 + MULTIPLY reduce 118 + MOD reduce 118 + BITNOT reduce 118 + LPAREN reduce 118 + LSQBRACKET reduce 118 + PERIOD reduce 118 + SEMICOLON reduce 118 + NAME reduce 118 + COLON reduce 118 + FUNCTION reduce 118 + RPAREN reduce 118 + LBRACKET reduce 118 + VAR reduce 118 + NUMBER reduce 118 + RSQBRACKET reduce 118 + KILLS reduce 118 + TRGCONST reduce 118 + L2V reduce 118 + MAPSTRING reduce 118 + UNIT reduce 118 + SWITCH reduce 118 + LOCATION reduce 118 + STATTXTTBL reduce 118 + VARRAY reduce 118 + STATIC reduce 118 + CONST reduce 118 + INC reduce 118 + DEC reduce 118 + ONCE reduce 118 + IF reduce 118 + SWITCHCASE reduce 118 + WHILE reduce 118 + FOR reduce 118 + FOREACH reduce 118 + CONTINUE reduce 118 + BREAK reduce 118 + RETURN reduce 118 + ACTIONNAME reduce 118 State 291: - constExpr ::= MAPSTRING * LPAREN STRING RPAREN - - LPAREN shift 290 + (117) constExpr ::= UNIT LPAREN STRING RPAREN * + + QMARK reduce 117 + COMMA reduce 117 + LOR reduce 117 + LAND reduce 117 + EQ reduce 117 + LE reduce 117 + LT reduce 117 + GE reduce 117 + GT reduce 117 + NE reduce 117 + BITOR reduce 117 + BITXOR reduce 117 + BITAND reduce 117 + LSHIFT reduce 117 + RSHIFT reduce 117 + PLUS reduce 117 + MINUS reduce 117 + DIVIDE reduce 117 + MULTIPLY reduce 117 + MOD reduce 117 + BITNOT reduce 117 + LPAREN reduce 117 + LSQBRACKET reduce 117 + PERIOD reduce 117 + SEMICOLON reduce 117 + NAME reduce 117 + COLON reduce 117 + FUNCTION reduce 117 + RPAREN reduce 117 + LBRACKET reduce 117 + VAR reduce 117 + NUMBER reduce 117 + RSQBRACKET reduce 117 + KILLS reduce 117 + TRGCONST reduce 117 + L2V reduce 117 + MAPSTRING reduce 117 + UNIT reduce 117 + SWITCH reduce 117 + LOCATION reduce 117 + STATTXTTBL reduce 117 + VARRAY reduce 117 + STATIC reduce 117 + CONST reduce 117 + INC reduce 117 + DEC reduce 117 + ONCE reduce 117 + IF reduce 117 + SWITCHCASE reduce 117 + WHILE reduce 117 + FOR reduce 117 + FOREACH reduce 117 + CONTINUE reduce 117 + BREAK reduce 117 + RETURN reduce 117 + ACTIONNAME reduce 117 State 292: - nonConstExpr ::= L2V LPAREN expr * RPAREN - - RPAREN shift 480 + (116) constExpr ::= MAPSTRING LPAREN STRING RPAREN * + + QMARK reduce 116 + COMMA reduce 116 + LOR reduce 116 + LAND reduce 116 + EQ reduce 116 + LE reduce 116 + LT reduce 116 + GE reduce 116 + GT reduce 116 + NE reduce 116 + BITOR reduce 116 + BITXOR reduce 116 + BITAND reduce 116 + LSHIFT reduce 116 + RSHIFT reduce 116 + PLUS reduce 116 + MINUS reduce 116 + DIVIDE reduce 116 + MULTIPLY reduce 116 + MOD reduce 116 + BITNOT reduce 116 + LPAREN reduce 116 + LSQBRACKET reduce 116 + PERIOD reduce 116 + SEMICOLON reduce 116 + NAME reduce 116 + COLON reduce 116 + FUNCTION reduce 116 + RPAREN reduce 116 + LBRACKET reduce 116 + VAR reduce 116 + NUMBER reduce 116 + RSQBRACKET reduce 116 + KILLS reduce 116 + TRGCONST reduce 116 + L2V reduce 116 + MAPSTRING reduce 116 + UNIT reduce 116 + SWITCH reduce 116 + LOCATION reduce 116 + STATTXTTBL reduce 116 + VARRAY reduce 116 + STATIC reduce 116 + CONST reduce 116 + INC reduce 116 + DEC reduce 116 + ONCE reduce 116 + IF reduce 116 + SWITCHCASE reduce 116 + WHILE reduce 116 + FOR reduce 116 + FOREACH reduce 116 + CONTINUE reduce 116 + BREAK reduce 116 + RETURN reduce 116 + ACTIONNAME reduce 116 State 293: - nonConstExpr ::= L2V * LPAREN expr RPAREN - - LPAREN shift 92 + (115) nonConstExpr ::= L2V LPAREN expr RPAREN * + + QMARK reduce 115 + COMMA reduce 115 + LOR reduce 115 + LAND reduce 115 + EQ reduce 115 + LE reduce 115 + LT reduce 115 + GE reduce 115 + GT reduce 115 + NE reduce 115 + BITOR reduce 115 + BITXOR reduce 115 + BITAND reduce 115 + LSHIFT reduce 115 + RSHIFT reduce 115 + PLUS reduce 115 + MINUS reduce 115 + DIVIDE reduce 115 + MULTIPLY reduce 115 + MOD reduce 115 + BITNOT reduce 115 + LPAREN reduce 115 + LSQBRACKET reduce 115 + PERIOD reduce 115 + SEMICOLON reduce 115 + NAME reduce 115 + COLON reduce 115 + FUNCTION reduce 115 + RPAREN reduce 115 + LBRACKET reduce 115 + VAR reduce 115 + NUMBER reduce 115 + RSQBRACKET reduce 115 + KILLS reduce 115 + TRGCONST reduce 115 + L2V reduce 115 + MAPSTRING reduce 115 + UNIT reduce 115 + SWITCH reduce 115 + LOCATION reduce 115 + STATTXTTBL reduce 115 + VARRAY reduce 115 + STATIC reduce 115 + CONST reduce 115 + INC reduce 115 + DEC reduce 115 + ONCE reduce 115 + IF reduce 115 + SWITCHCASE reduce 115 + WHILE reduce 115 + FOR reduce 115 + FOREACH reduce 115 + CONTINUE reduce 115 + BREAK reduce 115 + RETURN reduce 115 + ACTIONNAME reduce 115 State 294: - exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET - - RSQBRACKET shift 482 + exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (109) nonConstExpr ::= funcexpr * + + QMARK reduce 109 + COMMA reduce 109 + LOR reduce 109 + LAND reduce 109 + EQ reduce 109 + LE reduce 109 + LT reduce 109 + GE reduce 109 + GT reduce 109 + NE reduce 109 + BITOR reduce 109 + BITXOR reduce 109 + BITAND reduce 109 + LSHIFT reduce 109 + RSHIFT reduce 109 + PLUS reduce 109 + MINUS reduce 109 + DIVIDE reduce 109 + MULTIPLY reduce 109 + MOD reduce 109 + BITNOT reduce 109 + LPAREN reduce 109 + LSQBRACKET shift 528 + LSQBRACKET reduce 109 -- dropped by precedence + PERIOD reduce 109 + SEMICOLON reduce 109 + NAME reduce 109 + COLON reduce 109 + FUNCTION reduce 109 + RPAREN reduce 109 + LBRACKET reduce 109 + VAR reduce 109 + NUMBER reduce 109 + RSQBRACKET reduce 109 + KILLS reduce 109 + TRGCONST reduce 109 + L2V reduce 109 + MAPSTRING reduce 109 + UNIT reduce 109 + SWITCH reduce 109 + LOCATION reduce 109 + STATTXTTBL reduce 109 + VARRAY reduce 109 + STATIC reduce 109 + CONST reduce 109 + INC reduce 109 + DEC reduce 109 + ONCE reduce 109 + IF reduce 109 + SWITCHCASE reduce 109 + WHILE reduce 109 + FOR reduce 109 + FOREACH reduce 109 + CONTINUE reduce 109 + BREAK reduce 109 + RETURN reduce 109 + ACTIONNAME reduce 109 State 295: - numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER - - NUMBER shift 483 + (89) expr ::= logicExpr * + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr + + QMARK reduce 89 + COMMA reduce 89 + LOR shift 82 + LOR reduce 89 -- dropped by precedence + LAND shift 84 + LAND reduce 89 -- dropped by precedence + EQ reduce 89 + LE reduce 89 + LT reduce 89 + GE reduce 89 + GT reduce 89 + NE reduce 89 + BITOR reduce 89 + BITXOR reduce 89 + BITAND reduce 89 + LSHIFT reduce 89 + RSHIFT reduce 89 + PLUS reduce 89 + MINUS reduce 89 + DIVIDE reduce 89 + MULTIPLY reduce 89 + MOD reduce 89 + BITNOT reduce 89 + LPAREN reduce 89 + LSQBRACKET reduce 89 + PERIOD reduce 89 + SEMICOLON reduce 89 + NAME reduce 89 + COLON reduce 89 + FUNCTION reduce 89 + RPAREN reduce 89 + LBRACKET reduce 89 + VAR reduce 89 + NUMBER reduce 89 + RSQBRACKET reduce 89 + KILLS reduce 89 + TRGCONST reduce 89 + L2V reduce 89 + MAPSTRING reduce 89 + UNIT reduce 89 + SWITCH reduce 89 + LOCATION reduce 89 + STATTXTTBL reduce 89 + VARRAY reduce 89 + STATIC reduce 89 + CONST reduce 89 + INC reduce 89 + DEC reduce 89 + ONCE reduce 89 + IF reduce 89 + SWITCHCASE reduce 89 + WHILE reduce 89 + FOR reduce 89 + FOREACH reduce 89 + CONTINUE reduce 89 + BREAK reduce 89 + RETURN reduce 89 + ACTIONNAME reduce 89 State 296: - (63) numList_nonEmpty ::= NUMBER * - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + (128) nonConstExpr ::= constExpr MINUS nonConstExpr * + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - RSQBRACKET shift 315 - {default} reduce 63 + QMARK shift 76 -- dropped by precedence + QMARK reduce 128 + COMMA reduce 128 + LOR reduce 128 + LAND reduce 128 + EQ reduce 128 + LE reduce 128 + LT reduce 128 + GE reduce 128 + GT reduce 128 + NE reduce 128 + BITOR shift 66 -- dropped by precedence + BITOR reduce 128 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 128 + BITAND shift 67 -- dropped by precedence + BITAND reduce 128 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 128 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 128 + PLUS shift 74 -- dropped by precedence + PLUS reduce 128 + MINUS shift 73 -- dropped by precedence + MINUS reduce 128 + DIVIDE shift 71 + DIVIDE reduce 128 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 128 -- dropped by precedence + MOD shift 70 + MOD reduce 128 -- dropped by precedence + BITNOT reduce 128 + LPAREN shift 23 + LPAREN reduce 128 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 128 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 128 -- dropped by precedence + SEMICOLON reduce 128 + NAME reduce 128 + COLON reduce 128 + FUNCTION reduce 128 + RPAREN reduce 128 + LBRACKET reduce 128 + VAR reduce 128 + NUMBER reduce 128 + RSQBRACKET reduce 128 + KILLS reduce 128 + TRGCONST reduce 128 + L2V reduce 128 + MAPSTRING reduce 128 + UNIT reduce 128 + SWITCH reduce 128 + LOCATION reduce 128 + STATTXTTBL reduce 128 + VARRAY reduce 128 + STATIC reduce 128 + CONST reduce 128 + INC reduce 128 + DEC reduce 128 + ONCE reduce 128 + IF reduce 128 + SWITCHCASE reduce 128 + WHILE reduce 128 + FOR reduce 128 + FOREACH reduce 128 + CONTINUE reduce 128 + BREAK reduce 128 + RETURN reduce 128 + ACTIONNAME reduce 128 State 297: - exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - - LSQBRACKET shift 154 + (110) constExpr ::= LPAREN constExpr RPAREN * + + QMARK reduce 110 + COMMA reduce 110 + LOR reduce 110 + LAND reduce 110 + EQ reduce 110 + LE reduce 110 + LT reduce 110 + GE reduce 110 + GT reduce 110 + NE reduce 110 + BITOR reduce 110 + BITXOR reduce 110 + BITAND reduce 110 + LSHIFT reduce 110 + RSHIFT reduce 110 + PLUS reduce 110 + MINUS reduce 110 + DIVIDE reduce 110 + MULTIPLY reduce 110 + MOD reduce 110 + BITNOT reduce 110 + LPAREN reduce 110 + LSQBRACKET reduce 110 + PERIOD reduce 110 + SEMICOLON reduce 110 + NAME reduce 110 + COLON reduce 110 + FUNCTION reduce 110 + RPAREN reduce 110 + LBRACKET reduce 110 + VAR reduce 110 + NUMBER reduce 110 + RSQBRACKET reduce 110 + KILLS reduce 110 + TRGCONST reduce 110 + L2V reduce 110 + MAPSTRING reduce 110 + UNIT reduce 110 + SWITCH reduce 110 + LOCATION reduce 110 + STATTXTTBL reduce 110 + VARRAY reduce 110 + STATIC reduce 110 + CONST reduce 110 + INC reduce 110 + DEC reduce 110 + ONCE reduce 110 + IF reduce 110 + SWITCHCASE reduce 110 + WHILE reduce 110 + FOR reduce 110 + FOREACH reduce 110 + CONTINUE reduce 110 + BREAK reduce 110 + RETURN reduce 110 + ACTIONNAME reduce 110 State 298: - exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (107) nonConstExpr ::= funcexpr * + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + (125) nonConstExpr ::= constExpr PLUS nonConstExpr * + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - LSQBRACKET shift 297 - {default} reduce 107 + QMARK shift 76 -- dropped by precedence + QMARK reduce 125 + COMMA reduce 125 + LOR reduce 125 + LAND reduce 125 + EQ reduce 125 + LE reduce 125 + LT reduce 125 + GE reduce 125 + GT reduce 125 + NE reduce 125 + BITOR shift 66 -- dropped by precedence + BITOR reduce 125 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 125 + BITAND shift 67 -- dropped by precedence + BITAND reduce 125 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 125 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 125 + PLUS shift 74 -- dropped by precedence + PLUS reduce 125 + MINUS shift 73 -- dropped by precedence + MINUS reduce 125 + DIVIDE shift 71 + DIVIDE reduce 125 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 125 -- dropped by precedence + MOD shift 70 + MOD reduce 125 -- dropped by precedence + BITNOT reduce 125 + LPAREN shift 23 + LPAREN reduce 125 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 125 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 125 -- dropped by precedence + SEMICOLON reduce 125 + NAME reduce 125 + COLON reduce 125 + FUNCTION reduce 125 + RPAREN reduce 125 + LBRACKET reduce 125 + VAR reduce 125 + NUMBER reduce 125 + RSQBRACKET reduce 125 + KILLS reduce 125 + TRGCONST reduce 125 + L2V reduce 125 + MAPSTRING reduce 125 + UNIT reduce 125 + SWITCH reduce 125 + LOCATION reduce 125 + STATTXTTBL reduce 125 + VARRAY reduce 125 + STATIC reduce 125 + CONST reduce 125 + INC reduce 125 + DEC reduce 125 + ONCE reduce 125 + IF reduce 125 + SWITCHCASE reduce 125 + WHILE reduce 125 + FOR reduce 125 + FOREACH reduce 125 + CONTINUE reduce 125 + BREAK reduce 125 + RETURN reduce 125 + ACTIONNAME reduce 125 State 299: - bodyStmt ::= return_stmt * SEMICOLON - - SEMICOLON shift 487 + (88) expr ::= constExpr * + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr + constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr + constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr + constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr + constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr + constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr + + QMARK reduce 88 + COMMA reduce 88 + LOR reduce 88 + LAND reduce 88 + EQ shift 100 + EQ reduce 88 -- dropped by precedence + LE shift 98 + LE reduce 88 -- dropped by precedence + LT shift 96 + LT reduce 88 -- dropped by precedence + GE shift 97 + GE reduce 88 -- dropped by precedence + GT shift 95 + GT reduce 88 -- dropped by precedence + NE shift 99 + NE reduce 88 -- dropped by precedence + BITOR shift 102 + BITOR reduce 88 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 88 -- dropped by precedence + BITAND shift 103 + BITAND reduce 88 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 88 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 88 -- dropped by precedence + PLUS shift 113 + PLUS reduce 88 -- dropped by precedence + MINUS shift 112 + MINUS reduce 88 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 88 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 88 -- dropped by precedence + MOD shift 106 + MOD reduce 88 -- dropped by precedence + BITNOT reduce 88 + LPAREN reduce 88 + LSQBRACKET reduce 88 + PERIOD reduce 88 + SEMICOLON reduce 88 + NAME reduce 88 + COLON reduce 88 + FUNCTION reduce 88 + RPAREN reduce 88 + LBRACKET reduce 88 + VAR reduce 88 + NUMBER reduce 88 + RSQBRACKET reduce 88 + KILLS reduce 88 + TRGCONST reduce 88 + L2V reduce 88 + MAPSTRING reduce 88 + UNIT reduce 88 + SWITCH reduce 88 + LOCATION reduce 88 + STATTXTTBL reduce 88 + VARRAY reduce 88 + STATIC reduce 88 + CONST reduce 88 + INC reduce 88 + DEC reduce 88 + ONCE reduce 88 + IF reduce 88 + SWITCHCASE reduce 88 + WHILE reduce 88 + FOR reduce 88 + FOREACH reduce 88 + CONTINUE reduce 88 + BREAK reduce 88 + RETURN reduce 88 + ACTIONNAME reduce 88 State 300: - bodyStmt ::= break_stmt * SEMICOLON + (80) constExpr ::= KILLS * - SEMICOLON shift 488 + QMARK reduce 80 + COMMA reduce 80 + LOR reduce 80 + LAND reduce 80 + EQ reduce 80 + LE reduce 80 + LT reduce 80 + GE reduce 80 + GT reduce 80 + NE reduce 80 + BITOR reduce 80 + BITXOR reduce 80 + BITAND reduce 80 + LSHIFT reduce 80 + RSHIFT reduce 80 + PLUS reduce 80 + MINUS reduce 80 + DIVIDE reduce 80 + MULTIPLY reduce 80 + MOD reduce 80 + BITNOT reduce 80 + LPAREN reduce 80 + LSQBRACKET reduce 80 + PERIOD reduce 80 + SEMICOLON reduce 80 + NAME reduce 80 + COLON reduce 80 + FUNCTION reduce 80 + RPAREN reduce 80 + LBRACKET reduce 80 + VAR reduce 80 + NUMBER reduce 80 + RSQBRACKET reduce 80 + KILLS reduce 80 + TRGCONST reduce 80 + L2V reduce 80 + MAPSTRING reduce 80 + UNIT reduce 80 + SWITCH reduce 80 + LOCATION reduce 80 + STATTXTTBL reduce 80 + VARRAY reduce 80 + STATIC reduce 80 + CONST reduce 80 + INC reduce 80 + DEC reduce 80 + ONCE reduce 80 + IF reduce 80 + SWITCHCASE reduce 80 + WHILE reduce 80 + FOR reduce 80 + FOREACH reduce 80 + CONTINUE reduce 80 + BREAK reduce 80 + RETURN reduce 80 + ACTIONNAME reduce 80 State 301: - bodyStmt ::= continue_stmt * SEMICOLON - - SEMICOLON shift 489 + (85) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + + QMARK reduce 85 + COMMA reduce 85 + LOR reduce 85 + LAND reduce 85 + EQ reduce 85 + LE reduce 85 + LT reduce 85 + GE reduce 85 + GT reduce 85 + NE reduce 85 + BITOR reduce 85 + BITXOR reduce 85 + BITAND reduce 85 + LSHIFT reduce 85 + RSHIFT reduce 85 + PLUS reduce 85 + MINUS reduce 85 + DIVIDE reduce 85 + MULTIPLY reduce 85 + MOD reduce 85 + BITNOT reduce 85 + LPAREN reduce 85 + LSQBRACKET reduce 85 + PERIOD reduce 85 + SEMICOLON reduce 85 + NAME reduce 85 + COLON reduce 85 + FUNCTION reduce 85 + RPAREN reduce 85 + LBRACKET reduce 85 + VAR reduce 85 + NUMBER reduce 85 + RSQBRACKET reduce 85 + KILLS reduce 85 + TRGCONST reduce 85 + L2V reduce 85 + MAPSTRING reduce 85 + UNIT reduce 85 + SWITCH reduce 85 + LOCATION reduce 85 + STATTXTTBL reduce 85 + VARRAY reduce 85 + STATIC reduce 85 + CONST reduce 85 + INC reduce 85 + DEC reduce 85 + ONCE reduce 85 + IF reduce 85 + SWITCHCASE reduce 85 + WHILE reduce 85 + FOR reduce 85 + FOREACH reduce 85 + CONTINUE reduce 85 + BREAK reduce 85 + RETURN reduce 85 + ACTIONNAME reduce 85 State 302: - bodyStmt ::= funcexprStmt * SEMICOLON - - SEMICOLON shift 497 + (84) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * + + QMARK reduce 84 + COMMA reduce 84 + LOR reduce 84 + LAND reduce 84 + EQ reduce 84 + LE reduce 84 + LT reduce 84 + GE reduce 84 + GT reduce 84 + NE reduce 84 + BITOR reduce 84 + BITXOR reduce 84 + BITAND reduce 84 + LSHIFT reduce 84 + RSHIFT reduce 84 + PLUS reduce 84 + MINUS reduce 84 + DIVIDE reduce 84 + MULTIPLY reduce 84 + MOD reduce 84 + BITNOT reduce 84 + LPAREN reduce 84 + LSQBRACKET reduce 84 + PERIOD reduce 84 + SEMICOLON reduce 84 + NAME reduce 84 + COLON reduce 84 + FUNCTION reduce 84 + RPAREN reduce 84 + LBRACKET reduce 84 + VAR reduce 84 + NUMBER reduce 84 + RSQBRACKET reduce 84 + KILLS reduce 84 + TRGCONST reduce 84 + L2V reduce 84 + MAPSTRING reduce 84 + UNIT reduce 84 + SWITCH reduce 84 + LOCATION reduce 84 + STATTXTTBL reduce 84 + VARRAY reduce 84 + STATIC reduce 84 + CONST reduce 84 + INC reduce 84 + DEC reduce 84 + ONCE reduce 84 + IF reduce 84 + SWITCHCASE reduce 84 + WHILE reduce 84 + FOR reduce 84 + FOREACH reduce 84 + CONTINUE reduce 84 + BREAK reduce 84 + RETURN reduce 84 + ACTIONNAME reduce 84 State 303: - bodyStmt ::= assign_stmt * SEMICOLON - - SEMICOLON shift 498 + (83) nonConstExpr ::= nonConstExpr PERIOD NAME * + + QMARK reduce 83 + COMMA reduce 83 + LOR reduce 83 + LAND reduce 83 + EQ reduce 83 + LE reduce 83 + LT reduce 83 + GE reduce 83 + GT reduce 83 + NE reduce 83 + BITOR reduce 83 + BITXOR reduce 83 + BITAND reduce 83 + LSHIFT reduce 83 + RSHIFT reduce 83 + PLUS reduce 83 + MINUS reduce 83 + DIVIDE reduce 83 + MULTIPLY reduce 83 + MOD reduce 83 + BITNOT reduce 83 + LPAREN reduce 83 + LSQBRACKET reduce 83 + PERIOD reduce 83 + SEMICOLON reduce 83 + NAME reduce 83 + COLON reduce 83 + FUNCTION reduce 83 + RPAREN reduce 83 + LBRACKET reduce 83 + VAR reduce 83 + NUMBER reduce 83 + RSQBRACKET reduce 83 + KILLS reduce 83 + TRGCONST reduce 83 + L2V reduce 83 + MAPSTRING reduce 83 + UNIT reduce 83 + SWITCH reduce 83 + LOCATION reduce 83 + STATTXTTBL reduce 83 + VARRAY reduce 83 + STATIC reduce 83 + CONST reduce 83 + INC reduce 83 + DEC reduce 83 + ONCE reduce 83 + IF reduce 83 + SWITCHCASE reduce 83 + WHILE reduce 83 + FOR reduce 83 + FOREACH reduce 83 + CONTINUE reduce 83 + BREAK reduce 83 + RETURN reduce 83 + ACTIONNAME reduce 83 State 304: - bodyStmt ::= cdef_stmt * SEMICOLON - - SEMICOLON shift 499 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + logicExpr ::= nonConstExpr * EQ constExpr + logicExpr ::= nonConstExpr * EQ nonConstExpr + logicExpr ::= nonConstExpr * NE constExpr + logicExpr ::= nonConstExpr * NE nonConstExpr + logicExpr ::= nonConstExpr * LE constExpr + logicExpr ::= nonConstExpr * LE nonConstExpr + logicExpr ::= nonConstExpr * GE constExpr + logicExpr ::= nonConstExpr * GE nonConstExpr + logicExpr ::= nonConstExpr * LT constExpr + logicExpr ::= nonConstExpr * LT nonConstExpr + logicExpr ::= nonConstExpr * GT constExpr + logicExpr ::= nonConstExpr * GT nonConstExpr + (184) logicExpr ::= nonConstExpr * + + QMARK shift 76 + QMARK reduce 184 -- dropped by precedence + COMMA reduce 184 + LOR reduce 184 + LAND reduce 184 + EQ shift 94 + EQ reduce 184 -- dropped by precedence + LE shift 92 + LE reduce 184 -- dropped by precedence + LT shift 90 + LT reduce 184 -- dropped by precedence + GE shift 91 + GE reduce 184 -- dropped by precedence + GT shift 89 + GT reduce 184 -- dropped by precedence + NE shift 93 + NE reduce 184 -- dropped by precedence + BITOR shift 66 + BITOR reduce 184 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 184 -- dropped by precedence + BITAND shift 67 + BITAND reduce 184 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 184 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 184 -- dropped by precedence + PLUS shift 74 + PLUS reduce 184 -- dropped by precedence + MINUS shift 73 + MINUS reduce 184 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 184 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 184 -- dropped by precedence + MOD shift 70 + MOD reduce 184 -- dropped by precedence + BITNOT reduce 184 + LPAREN shift 23 + LPAREN reduce 184 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 184 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 184 -- dropped by precedence + SEMICOLON reduce 184 + NAME reduce 184 + COLON reduce 184 + FUNCTION reduce 184 + RPAREN reduce 184 + LBRACKET reduce 184 + VAR reduce 184 + NUMBER reduce 184 + RSQBRACKET reduce 184 + KILLS reduce 184 + TRGCONST reduce 184 + L2V reduce 184 + MAPSTRING reduce 184 + UNIT reduce 184 + SWITCH reduce 184 + LOCATION reduce 184 + STATTXTTBL reduce 184 + VARRAY reduce 184 + STATIC reduce 184 + CONST reduce 184 + INC reduce 184 + DEC reduce 184 + ONCE reduce 184 + IF reduce 184 + SWITCHCASE reduce 184 + WHILE reduce 184 + FOR reduce 184 + FOREACH reduce 184 + CONTINUE reduce 184 + BREAK reduce 184 + RETURN reduce 184 + ACTIONNAME reduce 184 State 305: - bodyStmt ::= vdefAssign_stmt * SEMICOLON + (82) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN - SEMICOLON shift 500 + QMARK reduce 82 + COMMA reduce 82 + LOR reduce 82 + LAND reduce 82 + EQ reduce 82 + LE reduce 82 + LT reduce 82 + GE reduce 82 + GT reduce 82 + NE reduce 82 + BITOR reduce 82 + BITXOR reduce 82 + BITAND reduce 82 + LSHIFT reduce 82 + RSHIFT reduce 82 + PLUS reduce 82 + MINUS reduce 82 + DIVIDE reduce 82 + MULTIPLY reduce 82 + MOD reduce 82 + BITNOT reduce 82 + LPAREN shift 24 + LPAREN reduce 82 -- dropped by precedence + LSQBRACKET reduce 82 + PERIOD reduce 82 + SEMICOLON reduce 82 + NAME reduce 82 + COLON reduce 82 + FUNCTION reduce 82 + RPAREN reduce 82 + LBRACKET reduce 82 + VAR reduce 82 + NUMBER reduce 82 + RSQBRACKET reduce 82 + KILLS reduce 82 + TRGCONST reduce 82 + L2V reduce 82 + MAPSTRING reduce 82 + UNIT reduce 82 + SWITCH reduce 82 + LOCATION reduce 82 + STATTXTTBL reduce 82 + VARRAY reduce 82 + STATIC reduce 82 + CONST reduce 82 + INC reduce 82 + DEC reduce 82 + ONCE reduce 82 + IF reduce 82 + SWITCHCASE reduce 82 + WHILE reduce 82 + FOR reduce 82 + FOREACH reduce 82 + CONTINUE reduce 82 + BREAK reduce 82 + RETURN reduce 82 + ACTIONNAME reduce 82 State 306: - bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON - - SEMICOLON shift 501 + (81) constExpr ::= TRGCONST * + + QMARK reduce 81 + COMMA reduce 81 + LOR reduce 81 + LAND reduce 81 + EQ reduce 81 + LE reduce 81 + LT reduce 81 + GE reduce 81 + GT reduce 81 + NE reduce 81 + BITOR reduce 81 + BITXOR reduce 81 + BITAND reduce 81 + LSHIFT reduce 81 + RSHIFT reduce 81 + PLUS reduce 81 + MINUS reduce 81 + DIVIDE reduce 81 + MULTIPLY reduce 81 + MOD reduce 81 + BITNOT reduce 81 + LPAREN reduce 81 + LSQBRACKET reduce 81 + PERIOD reduce 81 + SEMICOLON reduce 81 + NAME reduce 81 + COLON reduce 81 + FUNCTION reduce 81 + RPAREN reduce 81 + LBRACKET reduce 81 + VAR reduce 81 + NUMBER reduce 81 + RSQBRACKET reduce 81 + KILLS reduce 81 + TRGCONST reduce 81 + L2V reduce 81 + MAPSTRING reduce 81 + UNIT reduce 81 + SWITCH reduce 81 + LOCATION reduce 81 + STATTXTTBL reduce 81 + VARRAY reduce 81 + STATIC reduce 81 + CONST reduce 81 + INC reduce 81 + DEC reduce 81 + ONCE reduce 81 + IF reduce 81 + SWITCHCASE reduce 81 + WHILE reduce 81 + FOR reduce 81 + FOREACH reduce 81 + CONTINUE reduce 81 + BREAK reduce 81 + RETURN reduce 81 + ACTIONNAME reduce 81 State 307: - bodyStmt ::= vdef_stmt * SEMICOLON - - SEMICOLON shift 502 + (80) constExpr ::= KILLS * + logicExpr ::= KILLS * LPAREN fArgs RPAREN + + QMARK reduce 80 + COMMA reduce 80 + LOR reduce 80 + LAND reduce 80 + EQ reduce 80 + LE reduce 80 + LT reduce 80 + GE reduce 80 + GT reduce 80 + NE reduce 80 + BITOR reduce 80 + BITXOR reduce 80 + BITAND reduce 80 + LSHIFT reduce 80 + RSHIFT reduce 80 + PLUS reduce 80 + MINUS reduce 80 + DIVIDE reduce 80 + MULTIPLY reduce 80 + MOD reduce 80 + BITNOT reduce 80 + LPAREN shift 25 + LPAREN reduce 80 -- dropped by precedence + LSQBRACKET reduce 80 + PERIOD reduce 80 + SEMICOLON reduce 80 + NAME reduce 80 + COLON reduce 80 + FUNCTION reduce 80 + RPAREN reduce 80 + LBRACKET reduce 80 + VAR reduce 80 + NUMBER reduce 80 + RSQBRACKET reduce 80 + KILLS reduce 80 + TRGCONST reduce 80 + L2V reduce 80 + MAPSTRING reduce 80 + UNIT reduce 80 + SWITCH reduce 80 + LOCATION reduce 80 + STATTXTTBL reduce 80 + VARRAY reduce 80 + STATIC reduce 80 + CONST reduce 80 + INC reduce 80 + DEC reduce 80 + ONCE reduce 80 + IF reduce 80 + SWITCHCASE reduce 80 + WHILE reduce 80 + FOR reduce 80 + FOREACH reduce 80 + CONTINUE reduce 80 + BREAK reduce 80 + RETURN reduce 80 + ACTIONNAME reduce 80 State 308: - blockStmt ::= lbracket error * RBRACKET + (79) constExpr ::= NUMBER * - RBRACKET shift 505 + QMARK reduce 79 + COMMA reduce 79 + LOR reduce 79 + LAND reduce 79 + EQ reduce 79 + LE reduce 79 + LT reduce 79 + GE reduce 79 + GT reduce 79 + NE reduce 79 + BITOR reduce 79 + BITXOR reduce 79 + BITAND reduce 79 + LSHIFT reduce 79 + RSHIFT reduce 79 + PLUS reduce 79 + MINUS reduce 79 + DIVIDE reduce 79 + MULTIPLY reduce 79 + MOD reduce 79 + BITNOT reduce 79 + LPAREN reduce 79 + LSQBRACKET reduce 79 + PERIOD reduce 79 + SEMICOLON reduce 79 + NAME reduce 79 + COLON reduce 79 + FUNCTION reduce 79 + RPAREN reduce 79 + LBRACKET reduce 79 + VAR reduce 79 + NUMBER reduce 79 + RSQBRACKET reduce 79 + KILLS reduce 79 + TRGCONST reduce 79 + L2V reduce 79 + MAPSTRING reduce 79 + UNIT reduce 79 + SWITCH reduce 79 + LOCATION reduce 79 + STATTXTTBL reduce 79 + VARRAY reduce 79 + STATIC reduce 79 + CONST reduce 79 + INC reduce 79 + DEC reduce 79 + ONCE reduce 79 + IF reduce 79 + SWITCHCASE reduce 79 + WHILE reduce 79 + FOR reduce 79 + FOREACH reduce 79 + CONTINUE reduce 79 + BREAK reduce 79 + RETURN reduce 79 + ACTIONNAME reduce 79 State 309: - stmt ::= error * SEMICOLON + (74) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * - SEMICOLON shift 510 + QMARK reduce 74 + COMMA reduce 74 + LOR reduce 74 + LAND reduce 74 + EQ reduce 74 + LE reduce 74 + LT reduce 74 + GE reduce 74 + GT reduce 74 + NE reduce 74 + BITOR reduce 74 + BITXOR reduce 74 + BITAND reduce 74 + LSHIFT reduce 74 + RSHIFT reduce 74 + PLUS reduce 74 + MINUS reduce 74 + DIVIDE reduce 74 + MULTIPLY reduce 74 + MOD reduce 74 + BITNOT reduce 74 + LPAREN reduce 74 + LSQBRACKET reduce 74 + PERIOD reduce 74 + SEMICOLON reduce 74 + NAME reduce 74 + COLON reduce 74 + FUNCTION reduce 74 + RPAREN reduce 74 + LBRACKET reduce 74 + VAR reduce 74 + NUMBER reduce 74 + RSQBRACKET reduce 74 + KILLS reduce 74 + TRGCONST reduce 74 + L2V reduce 74 + MAPSTRING reduce 74 + UNIT reduce 74 + SWITCH reduce 74 + LOCATION reduce 74 + STATTXTTBL reduce 74 + VARRAY reduce 74 + STATIC reduce 74 + CONST reduce 74 + INC reduce 74 + DEC reduce 74 + ONCE reduce 74 + IF reduce 74 + SWITCHCASE reduce 74 + WHILE reduce 74 + FOR reduce 74 + FOREACH reduce 74 + CONTINUE reduce 74 + BREAK reduce 74 + RETURN reduce 74 + ACTIONNAME reduce 74 State 310: - (65) typedName ::= NAME * - typedName ::= NAME * COLON expr - - COLON shift 96 - {default} reduce 65 + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (109) nonConstExpr ::= funcexpr * + + QMARK reduce 109 + COMMA reduce 109 + LOR reduce 109 + LAND reduce 109 + EQ reduce 109 + LE reduce 109 + LT reduce 109 + GE reduce 109 + GT reduce 109 + NE reduce 109 + BITOR reduce 109 + BITXOR reduce 109 + BITAND reduce 109 + LSHIFT reduce 109 + RSHIFT reduce 109 + PLUS reduce 109 + MINUS reduce 109 + DIVIDE reduce 109 + MULTIPLY reduce 109 + MOD reduce 109 + BITNOT reduce 109 + LPAREN reduce 109 + LSQBRACKET shift 546 + LSQBRACKET reduce 109 -- dropped by precedence + PERIOD reduce 109 + SEMICOLON reduce 109 + NAME reduce 109 + COLON reduce 109 + FUNCTION reduce 109 + RPAREN reduce 109 + LBRACKET reduce 109 + VAR reduce 109 + NUMBER reduce 109 + RSQBRACKET reduce 109 + KILLS reduce 109 + TRGCONST reduce 109 + L2V reduce 109 + MAPSTRING reduce 109 + UNIT reduce 109 + SWITCH reduce 109 + LOCATION reduce 109 + STATTXTTBL reduce 109 + VARRAY reduce 109 + STATIC reduce 109 + CONST reduce 109 + INC reduce 109 + DEC reduce 109 + ONCE reduce 109 + IF reduce 109 + SWITCHCASE reduce 109 + WHILE reduce 109 + FOR reduce 109 + FOREACH reduce 109 + CONTINUE reduce 109 + BREAK reduce 109 + RETURN reduce 109 + ACTIONNAME reduce 109 State 311: - lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes + (75) exprList_nonEmpty ::= expr * - LPAREN shift 120 + COMMA reduce 75 + PLUS reduce 75 + MINUS reduce 75 + BITNOT reduce 75 + LPAREN reduce 75 + LSQBRACKET reduce 75 + SEMICOLON reduce 75 + NAME reduce 75 + COLON reduce 75 + FUNCTION reduce 75 + RPAREN reduce 75 + LBRACKET reduce 75 + VAR reduce 75 + NUMBER reduce 75 + RSQBRACKET reduce 75 + KILLS reduce 75 + TRGCONST reduce 75 + L2V reduce 75 + MAPSTRING reduce 75 + UNIT reduce 75 + SWITCH reduce 75 + LOCATION reduce 75 + STATTXTTBL reduce 75 + VARRAY reduce 75 + STATIC reduce 75 + CONST reduce 75 + INC reduce 75 + DEC reduce 75 + ONCE reduce 75 + IF reduce 75 + SWITCHCASE reduce 75 + WHILE reduce 75 + FOR reduce 75 + FOREACH reduce 75 + CONTINUE reduce 75 + BREAK reduce 75 + RETURN reduce 75 + ACTIONNAME reduce 75 State 312: - nonConstExpr ::= nonConstExpr PERIOD * NAME + (73) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * - NAME shift 512 + COMMA reduce 73 + PLUS reduce 73 + MINUS reduce 73 + BITNOT reduce 73 + LPAREN reduce 73 + LSQBRACKET reduce 73 + SEMICOLON reduce 73 + NAME reduce 73 + COLON reduce 73 + FUNCTION reduce 73 + RPAREN reduce 73 + LBRACKET reduce 73 + VAR reduce 73 + NUMBER reduce 73 + RSQBRACKET reduce 73 + KILLS reduce 73 + TRGCONST reduce 73 + L2V reduce 73 + MAPSTRING reduce 73 + UNIT reduce 73 + SWITCH reduce 73 + LOCATION reduce 73 + STATTXTTBL reduce 73 + VARRAY reduce 73 + STATIC reduce 73 + CONST reduce 73 + INC reduce 73 + DEC reduce 73 + ONCE reduce 73 + IF reduce 73 + SWITCHCASE reduce 73 + WHILE reduce 73 + FOR reduce 73 + FOREACH reduce 73 + CONTINUE reduce 73 + BREAK reduce 73 + RETURN reduce 73 + ACTIONNAME reduce 73 State 313: - (81) nonConstExpr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN + (76) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * - LPAREN shift 27 - {default} reduce 81 + COMMA reduce 76 + PLUS reduce 76 + MINUS reduce 76 + BITNOT reduce 76 + LPAREN reduce 76 + LSQBRACKET reduce 76 + SEMICOLON reduce 76 + NAME reduce 76 + COLON reduce 76 + FUNCTION reduce 76 + RPAREN reduce 76 + LBRACKET reduce 76 + VAR reduce 76 + NUMBER reduce 76 + RSQBRACKET reduce 76 + KILLS reduce 76 + TRGCONST reduce 76 + L2V reduce 76 + MAPSTRING reduce 76 + UNIT reduce 76 + SWITCH reduce 76 + LOCATION reduce 76 + STATTXTTBL reduce 76 + VARRAY reduce 76 + STATIC reduce 76 + CONST reduce 76 + INC reduce 76 + DEC reduce 76 + ONCE reduce 76 + IF reduce 76 + SWITCHCASE reduce 76 + WHILE reduce 76 + FOR reduce 76 + FOREACH reduce 76 + CONTINUE reduce 76 + BREAK reduce 76 + RETURN reduce 76 + ACTIONNAME reduce 76 State 314: - (80) constExpr ::= KILLS * - constExpr ::= KILLS * LPAREN fArgs RPAREN + (60) bodyStmtList ::= bodyStmt * - LPAREN shift 28 - {default} reduce 80 + PLUS reduce 60 + MINUS reduce 60 + BITNOT reduce 60 + LPAREN reduce 60 + LSQBRACKET reduce 60 + SEMICOLON reduce 60 + NAME reduce 60 + FUNCTION reduce 60 + LBRACKET reduce 60 + VAR reduce 60 + RBRACKET reduce 60 + NUMBER reduce 60 + KILLS reduce 60 + TRGCONST reduce 60 + L2V reduce 60 + MAPSTRING reduce 60 + UNIT reduce 60 + SWITCH reduce 60 + LOCATION reduce 60 + STATTXTTBL reduce 60 + VARRAY reduce 60 + STATIC reduce 60 + CONST reduce 60 + INC reduce 60 + DEC reduce 60 + ONCE reduce 60 + IF reduce 60 + SWITCHCASE reduce 60 + CASE reduce 60 + DEFAULT reduce 60 + WHILE reduce 60 + FOR reduce 60 + FOREACH reduce 60 + CONTINUE reduce 60 + BREAK reduce 60 + RETURN reduce 60 + ACTIONNAME reduce 60 State 315: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET - - RSQBRACKET shift 515 + (233) case_clause ::= case_start exprList_nonEmpty COLON * + + PLUS reduce 233 + MINUS reduce 233 + BITNOT reduce 233 + LPAREN reduce 233 + LSQBRACKET reduce 233 + SEMICOLON reduce 233 + NAME reduce 233 + FUNCTION reduce 233 + LBRACKET reduce 233 + VAR reduce 233 + RBRACKET reduce 233 + NUMBER reduce 233 + KILLS reduce 233 + TRGCONST reduce 233 + L2V reduce 233 + MAPSTRING reduce 233 + UNIT reduce 233 + SWITCH reduce 233 + LOCATION reduce 233 + STATTXTTBL reduce 233 + VARRAY reduce 233 + STATIC reduce 233 + CONST reduce 233 + INC reduce 233 + DEC reduce 233 + ONCE reduce 233 + IF reduce 233 + SWITCHCASE reduce 233 + CASE reduce 233 + DEFAULT reduce 233 + WHILE reduce 233 + FOR reduce 233 + FOREACH reduce 233 + CONTINUE reduce 233 + BREAK reduce 233 + RETURN reduce 233 + ACTIONNAME reduce 233 State 316: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET + (62) bodyStmtList ::= bodyStmtList error * - RSQBRACKET shift 315 + PLUS reduce 62 + MINUS reduce 62 + BITNOT reduce 62 + LPAREN reduce 62 + LSQBRACKET reduce 62 + SEMICOLON reduce 62 + NAME reduce 62 + FUNCTION reduce 62 + LBRACKET reduce 62 + VAR reduce 62 + RBRACKET reduce 62 + NUMBER reduce 62 + KILLS reduce 62 + TRGCONST reduce 62 + L2V reduce 62 + MAPSTRING reduce 62 + UNIT reduce 62 + SWITCH reduce 62 + LOCATION reduce 62 + STATTXTTBL reduce 62 + VARRAY reduce 62 + STATIC reduce 62 + CONST reduce 62 + INC reduce 62 + DEC reduce 62 + ONCE reduce 62 + IF reduce 62 + SWITCHCASE reduce 62 + CASE reduce 62 + DEFAULT reduce 62 + WHILE reduce 62 + FOR reduce 62 + FOREACH reduce 62 + CONTINUE reduce 62 + BREAK reduce 62 + RETURN reduce 62 + ACTIONNAME reduce 62 State 317: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET + (61) bodyStmtList ::= bodyStmtList bodyStmt * - NUMBER shift 316 + PLUS reduce 61 + MINUS reduce 61 + BITNOT reduce 61 + LPAREN reduce 61 + LSQBRACKET reduce 61 + SEMICOLON reduce 61 + NAME reduce 61 + FUNCTION reduce 61 + LBRACKET reduce 61 + VAR reduce 61 + RBRACKET reduce 61 + NUMBER reduce 61 + KILLS reduce 61 + TRGCONST reduce 61 + L2V reduce 61 + MAPSTRING reduce 61 + UNIT reduce 61 + SWITCH reduce 61 + LOCATION reduce 61 + STATTXTTBL reduce 61 + VARRAY reduce 61 + STATIC reduce 61 + CONST reduce 61 + INC reduce 61 + DEC reduce 61 + ONCE reduce 61 + IF reduce 61 + SWITCHCASE reduce 61 + CASE reduce 61 + DEFAULT reduce 61 + WHILE reduce 61 + FOR reduce 61 + FOREACH reduce 61 + CONTINUE reduce 61 + BREAK reduce 61 + RETURN reduce 61 + ACTIONNAME reduce 61 State 318: - nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - - LSQBRACKET shift 317 + (238) default_clause ::= DEFAULT COLON * + + PLUS reduce 238 + MINUS reduce 238 + BITNOT reduce 238 + LPAREN reduce 238 + LSQBRACKET reduce 238 + SEMICOLON reduce 238 + NAME reduce 238 + FUNCTION reduce 238 + LBRACKET reduce 238 + VAR reduce 238 + RBRACKET reduce 238 + NUMBER reduce 238 + KILLS reduce 238 + TRGCONST reduce 238 + L2V reduce 238 + MAPSTRING reduce 238 + UNIT reduce 238 + SWITCH reduce 238 + LOCATION reduce 238 + STATTXTTBL reduce 238 + VARRAY reduce 238 + STATIC reduce 238 + CONST reduce 238 + INC reduce 238 + DEC reduce 238 + ONCE reduce 238 + IF reduce 238 + SWITCHCASE reduce 238 + WHILE reduce 238 + FOR reduce 238 + FOREACH reduce 238 + CONTINUE reduce 238 + BREAK reduce 238 + RETURN reduce 238 + ACTIONNAME reduce 238 State 319: - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (107) nonConstExpr ::= funcexpr * + (36) lbracket ::= LBRACKET * - LSQBRACKET shift 318 - {default} reduce 107 + PLUS reduce 36 + MINUS reduce 36 + BITNOT reduce 36 + LPAREN reduce 36 + LSQBRACKET reduce 36 + SEMICOLON reduce 36 + NAME reduce 36 + FUNCTION reduce 36 + LBRACKET reduce 36 + VAR reduce 36 + RBRACKET reduce 36 + NUMBER reduce 36 + KILLS reduce 36 + TRGCONST reduce 36 + L2V reduce 36 + MAPSTRING reduce 36 + UNIT reduce 36 + SWITCH reduce 36 + LOCATION reduce 36 + STATTXTTBL reduce 36 + VARRAY reduce 36 + STATIC reduce 36 + CONST reduce 36 + INC reduce 36 + DEC reduce 36 + ONCE reduce 36 + IF reduce 36 + SWITCHCASE reduce 36 + WHILE reduce 36 + FOR reduce 36 + FOREACH reduce 36 + CONTINUE reduce 36 + BREAK reduce 36 + RETURN reduce 36 + ACTIONNAME reduce 36 State 320: (24) fdef_rettypes ::= COLON exprList_nonEmpty * exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - COMMA shift 98 - {default} reduce 24 + COMMA shift 80 + PLUS reduce 24 + MINUS reduce 24 + BITNOT reduce 24 + LPAREN reduce 24 + LSQBRACKET reduce 24 + SEMICOLON reduce 24 + NAME reduce 24 + FUNCTION reduce 24 + LBRACKET reduce 24 + VAR reduce 24 + NUMBER reduce 24 + KILLS reduce 24 + TRGCONST reduce 24 + L2V reduce 24 + MAPSTRING reduce 24 + UNIT reduce 24 + SWITCH reduce 24 + LOCATION reduce 24 + STATTXTTBL reduce 24 + VARRAY reduce 24 + STATIC reduce 24 + CONST reduce 24 + INC reduce 24 + DEC reduce 24 + ONCE reduce 24 + IF reduce 24 + SWITCHCASE reduce 24 + WHILE reduce 24 + FOR reduce 24 + FOREACH reduce 24 + CONTINUE reduce 24 + BREAK reduce 24 + RETURN reduce 24 + ACTIONNAME reduce 24 State 321: - fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON + (30) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * - RPAREN shift 140 + PLUS reduce 30 + MINUS reduce 30 + BITNOT reduce 30 + LPAREN reduce 30 + LSQBRACKET reduce 30 + SEMICOLON reduce 30 + NAME reduce 30 + FUNCTION reduce 30 + LBRACKET reduce 30 + VAR reduce 30 + NUMBER reduce 30 + KILLS reduce 30 + TRGCONST reduce 30 + L2V reduce 30 + MAPSTRING reduce 30 + UNIT reduce 30 + SWITCH reduce 30 + LOCATION reduce 30 + STATTXTTBL reduce 30 + VARRAY reduce 30 + STATIC reduce 30 + CONST reduce 30 + INC reduce 30 + DEC reduce 30 + ONCE reduce 30 + IF reduce 30 + SWITCHCASE reduce 30 + WHILE reduce 30 + FOR reduce 30 + FOREACH reduce 30 + CONTINUE reduce 30 + BREAK reduce 30 + RETURN reduce 30 + ACTIONNAME reduce 30 State 322: - fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON - - LPAREN shift 121 + (25) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * -State 323: - fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON + PLUS reduce 25 + MINUS reduce 25 + BITNOT reduce 25 + LPAREN reduce 25 + LSQBRACKET reduce 25 + SEMICOLON reduce 25 + NAME reduce 25 + FUNCTION reduce 25 + LBRACKET reduce 25 + VAR reduce 25 + NUMBER reduce 25 + KILLS reduce 25 + TRGCONST reduce 25 + L2V reduce 25 + MAPSTRING reduce 25 + UNIT reduce 25 + SWITCH reduce 25 + LOCATION reduce 25 + STATTXTTBL reduce 25 + VARRAY reduce 25 + STATIC reduce 25 + CONST reduce 25 + INC reduce 25 + DEC reduce 25 + ONCE reduce 25 + IF reduce 25 + SWITCHCASE reduce 25 + WHILE reduce 25 + FOR reduce 25 + FOREACH reduce 25 + CONTINUE reduce 25 + BREAK reduce 25 + RETURN reduce 25 + ACTIONNAME reduce 25 - NAME shift 322 +State 323: + (86) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * + + PLUS reduce 86 + MINUS reduce 86 + BITNOT reduce 86 + LPAREN reduce 86 + LSQBRACKET reduce 86 + SEMICOLON reduce 86 + NAME reduce 86 + FUNCTION reduce 86 + LBRACKET reduce 86 + VAR reduce 86 + NUMBER reduce 86 + KILLS reduce 86 + TRGCONST reduce 86 + L2V reduce 86 + MAPSTRING reduce 86 + UNIT reduce 86 + SWITCH reduce 86 + LOCATION reduce 86 + STATTXTTBL reduce 86 + VARRAY reduce 86 + STATIC reduce 86 + CONST reduce 86 + INC reduce 86 + DEC reduce 86 + ONCE reduce 86 + IF reduce 86 + SWITCHCASE reduce 86 + WHILE reduce 86 + FOR reduce 86 + FOREACH reduce 86 + CONTINUE reduce 86 + BREAK reduce 86 + RETURN reduce 86 + ACTIONNAME reduce 86 State 324: - relimp_chunk ::= relimp_path AS NAME * SEMICOLON - - SEMICOLON shift 516 + elif_start ::= ELSE * IF + (228) else_header ::= ELSE * + + PLUS reduce 228 + MINUS reduce 228 + BITNOT reduce 228 + LPAREN reduce 228 + LSQBRACKET reduce 228 + SEMICOLON reduce 228 + NAME reduce 228 + FUNCTION reduce 228 + LBRACKET reduce 228 + VAR reduce 228 + NUMBER reduce 228 + KILLS reduce 228 + TRGCONST reduce 228 + L2V reduce 228 + MAPSTRING reduce 228 + UNIT reduce 228 + SWITCH reduce 228 + LOCATION reduce 228 + STATTXTTBL reduce 228 + VARRAY reduce 228 + STATIC reduce 228 + CONST reduce 228 + INC reduce 228 + DEC reduce 228 + ONCE reduce 228 + IF shift 488 + IF reduce 228 -- dropped by precedence + SWITCHCASE reduce 228 + WHILE reduce 228 + FOR reduce 228 + FOREACH reduce 228 + CONTINUE reduce 228 + BREAK reduce 228 + RETURN reduce 228 + ACTIONNAME reduce 228 State 325: - relimp_chunk ::= relimp_path AS * NAME SEMICOLON + once_header ::= once_start * LPAREN expr + (219) once_nocond ::= once_start * - NAME shift 324 + PLUS reduce 219 + MINUS reduce 219 + BITNOT reduce 219 + LPAREN shift 52 + LPAREN reduce 219 -- dropped by precedence + LSQBRACKET reduce 219 + SEMICOLON reduce 219 + NAME reduce 219 + FUNCTION reduce 219 + LBRACKET reduce 219 + VAR reduce 219 + NUMBER reduce 219 + KILLS reduce 219 + TRGCONST reduce 219 + L2V reduce 219 + MAPSTRING reduce 219 + UNIT reduce 219 + SWITCH reduce 219 + LOCATION reduce 219 + STATTXTTBL reduce 219 + VARRAY reduce 219 + STATIC reduce 219 + CONST reduce 219 + INC reduce 219 + DEC reduce 219 + ONCE reduce 219 + IF reduce 219 + SWITCHCASE reduce 219 + WHILE reduce 219 + FOR reduce 219 + FOREACH reduce 219 + CONTINUE reduce 219 + BREAK reduce 219 + RETURN reduce 219 + ACTIONNAME reduce 219 State 326: - relimp_path ::= relimp_path PERIOD * NAME - - NAME shift 518 + (216) once_start ::= ONCE * + + PLUS reduce 216 + MINUS reduce 216 + BITNOT reduce 216 + LPAREN reduce 216 + LSQBRACKET reduce 216 + SEMICOLON reduce 216 + NAME reduce 216 + FUNCTION reduce 216 + LBRACKET reduce 216 + VAR reduce 216 + NUMBER reduce 216 + KILLS reduce 216 + TRGCONST reduce 216 + L2V reduce 216 + MAPSTRING reduce 216 + UNIT reduce 216 + SWITCH reduce 216 + LOCATION reduce 216 + STATTXTTBL reduce 216 + VARRAY reduce 216 + STATIC reduce 216 + CONST reduce 216 + INC reduce 216 + DEC reduce 216 + ONCE reduce 216 + IF reduce 216 + SWITCHCASE reduce 216 + WHILE reduce 216 + FOR reduce 216 + FOREACH reduce 216 + CONTINUE reduce 216 + BREAK reduce 216 + RETURN reduce 216 + ACTIONNAME reduce 216 State 327: - import_chunk ::= IMPORT dottedName AS * NAME - - NAME shift 521 + (85) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + (195) lvalue ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + + ASSIGN reduce 195 + QMARK reduce 85 + COMMA reduce 195 + BITOR reduce 85 + BITXOR reduce 85 + BITAND reduce 85 + LSHIFT reduce 85 + RSHIFT reduce 85 + PLUS reduce 85 + MINUS reduce 85 + DIVIDE reduce 85 + MULTIPLY reduce 85 + MOD reduce 85 + LPAREN reduce 85 + LSQBRACKET reduce 85 + PERIOD reduce 85 + SEMICOLON reduce 195 + RPAREN reduce 195 + INC reduce 195 + DEC reduce 195 + IADD reduce 195 + ISUB reduce 195 + IMUL reduce 195 + IDIV reduce 195 + IMOD reduce 195 + ILSH reduce 195 + IRSH reduce 195 + IBND reduce 195 + IBOR reduce 195 + IBXR reduce 195 State 328: - dottedName ::= dottedName PERIOD * NAME - - NAME shift 522 + (84) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * + (197) lvalue ::= nonConstExpr PERIOD TRGCONST * + + ASSIGN reduce 197 + QMARK reduce 84 + COMMA reduce 197 + BITOR reduce 84 + BITXOR reduce 84 + BITAND reduce 84 + LSHIFT reduce 84 + RSHIFT reduce 84 + PLUS reduce 84 + MINUS reduce 84 + DIVIDE reduce 84 + MULTIPLY reduce 84 + MOD reduce 84 + LPAREN reduce 84 + LSQBRACKET reduce 84 + PERIOD reduce 84 + SEMICOLON reduce 197 + RPAREN reduce 197 + INC reduce 197 + DEC reduce 197 + IADD reduce 197 + ISUB reduce 197 + IMUL reduce 197 + IDIV reduce 197 + IMOD reduce 197 + ILSH reduce 197 + IRSH reduce 197 + IBND reduce 197 + IBOR reduce 197 + IBXR reduce 197 State 329: - chunk ::= cdef_global_stmt * SEMICOLON - - SEMICOLON shift 526 + (83) nonConstExpr ::= nonConstExpr PERIOD NAME * + (196) lvalue ::= nonConstExpr PERIOD NAME * + + ASSIGN reduce 196 + QMARK reduce 83 + COMMA reduce 196 + BITOR reduce 83 + BITXOR reduce 83 + BITAND reduce 83 + LSHIFT reduce 83 + RSHIFT reduce 83 + PLUS reduce 83 + MINUS reduce 83 + DIVIDE reduce 83 + MULTIPLY reduce 83 + MOD reduce 83 + LPAREN reduce 83 + LSQBRACKET reduce 83 + PERIOD reduce 83 + SEMICOLON reduce 196 + RPAREN reduce 196 + INC reduce 196 + DEC reduce 196 + IADD reduce 196 + ISUB reduce 196 + IMUL reduce 196 + IDIV reduce 196 + IMOD reduce 196 + ILSH reduce 196 + IRSH reduce 196 + IBND reduce 196 + IBOR reduce 196 + IBXR reduce 196 State 330: - chunk ::= vdefAssign_global_stmt * SEMICOLON - - SEMICOLON shift 527 + (82) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN + (194) lvalue ::= NAME * + + ASSIGN reduce 194 + QMARK reduce 82 + COMMA reduce 194 + BITOR reduce 82 + BITXOR reduce 82 + BITAND reduce 82 + LSHIFT reduce 82 + RSHIFT reduce 82 + PLUS reduce 82 + MINUS reduce 82 + DIVIDE reduce 82 + MULTIPLY reduce 82 + MOD reduce 82 + LPAREN shift 24 + LPAREN reduce 82 -- dropped by precedence + LSQBRACKET reduce 82 + PERIOD reduce 82 + SEMICOLON reduce 194 + RPAREN reduce 194 + INC reduce 194 + DEC reduce 194 + IADD reduce 194 + ISUB reduce 194 + IMUL reduce 194 + IDIV reduce 194 + IMOD reduce 194 + ILSH reduce 194 + IRSH reduce 194 + IBND reduce 194 + IBOR reduce 194 + IBXR reduce 194 State 331: - chunk ::= vdef_stmt * SEMICOLON + (82) nonConstExpr ::= NAME * + fConstArg ::= NAME * ASSIGN expr + fConstArg ::= NAME * ASSIGN STRING + funcexpr ::= NAME * LPAREN fArgs RPAREN - SEMICOLON shift 528 + ASSIGN shift 46 + QMARK reduce 82 + COMMA reduce 82 + LOR reduce 82 + LAND reduce 82 + EQ reduce 82 + LE reduce 82 + LT reduce 82 + GE reduce 82 + GT reduce 82 + NE reduce 82 + BITOR reduce 82 + BITXOR reduce 82 + BITAND reduce 82 + LSHIFT reduce 82 + RSHIFT reduce 82 + PLUS reduce 82 + MINUS reduce 82 + DIVIDE reduce 82 + MULTIPLY reduce 82 + MOD reduce 82 + LPAREN shift 24 + LPAREN reduce 82 -- dropped by precedence + LSQBRACKET reduce 82 + PERIOD reduce 82 + RPAREN reduce 82 State 332: - chunk ::= import_chunk * SEMICOLON - - SEMICOLON shift 532 + (248) for_opener ::= FOR LPAREN * + + PLUS reduce 248 + MINUS reduce 248 + BITNOT reduce 248 + LPAREN reduce 248 + LSQBRACKET reduce 248 + SEMICOLON reduce 248 + NAME reduce 248 + FUNCTION reduce 248 + VAR reduce 248 + NUMBER reduce 248 + KILLS reduce 248 + TRGCONST reduce 248 + L2V reduce 248 + MAPSTRING reduce 248 + UNIT reduce 248 + SWITCH reduce 248 + LOCATION reduce 248 + STATTXTTBL reduce 248 + VARRAY reduce 248 + CONST reduce 248 + INC reduce 248 + DEC reduce 248 + ACTIONNAME reduce 248 State 333: - (33) object_chunk ::= object_body RBRACKET SEMICOLON * - - {default} reduce 33 + (262) for_header2 ::= for_header1 expr SEMICOLON * + + PLUS reduce 262 + MINUS reduce 262 + BITNOT reduce 262 + LPAREN reduce 262 + LSQBRACKET reduce 262 + NAME reduce 262 + FUNCTION reduce 262 + RPAREN reduce 262 + NUMBER reduce 262 + KILLS reduce 262 + TRGCONST reduce 262 + L2V reduce 262 + MAPSTRING reduce 262 + UNIT reduce 262 + SWITCH reduce 262 + LOCATION reduce 262 + STATTXTTBL reduce 262 + VARRAY reduce 262 + INC reduce 262 + DEC reduce 262 + ACTIONNAME reduce 262 State 334: - (32) object_body ::= object_body method_chunk * - - {default} reduce 32 + (261) for_header1 ::= for_opener for_init_stmt SEMICOLON * + + LNOT reduce 261 + PLUS reduce 261 + MINUS reduce 261 + BITNOT reduce 261 + LPAREN reduce 261 + LSQBRACKET reduce 261 + NAME reduce 261 + FUNCTION reduce 261 + NUMBER reduce 261 + KILLS reduce 261 + TRGCONST reduce 261 + L2V reduce 261 + MAPSTRING reduce 261 + UNIT reduce 261 + SWITCH reduce 261 + LOCATION reduce 261 + STATTXTTBL reduce 261 + VARRAY reduce 261 + LIST reduce 261 + CONDITIONNAME reduce 261 + ACTIONNAME reduce 261 State 335: - (31) method_chunk ::= method_header stmt * - - {default} reduce 31 + (232) case_start ::= CASE * + + LNOT reduce 232 + PLUS reduce 232 + MINUS reduce 232 + BITNOT reduce 232 + LPAREN reduce 232 + LSQBRACKET reduce 232 + NAME reduce 232 + FUNCTION reduce 232 + NUMBER reduce 232 + KILLS reduce 232 + TRGCONST reduce 232 + L2V reduce 232 + MAPSTRING reduce 232 + UNIT reduce 232 + SWITCH reduce 232 + LOCATION reduce 232 + STATTXTTBL reduce 232 + VARRAY reduce 232 + LIST reduce 232 + CONDITIONNAME reduce 232 + ACTIONNAME reduce 232 State 336: - (30) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * - - {default} reduce 30 + (91) fConstArg ::= constExpr * + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr + constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr + constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr + constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr + constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr + constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr + + COMMA reduce 91 + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + RPAREN reduce 91 State 337: - (29) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * - - {default} reduce 29 + constExpr ::= LPAREN constExpr * RPAREN + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + EQ shift 138 + LE shift 125 + LT shift 123 + GE shift 124 + GT shift 122 + NE shift 126 + BITOR shift 128 + BITXOR shift 127 + BITAND shift 129 + LSHIFT shift 131 + RSHIFT shift 130 + PLUS shift 136 + MINUS shift 135 + DIVIDE shift 133 + MULTIPLY shift 134 + MOD shift 132 + RPAREN shift 297 State 338: - (28) object_body ::= OBJECT NAME LBRACKET * - - {default} reduce 28 + constExpr ::= LPAREN constExpr * RPAREN + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr + constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr + constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr + constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr + constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr + constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr + + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + RPAREN shift 297 State 339: - (26) fdef_chunk ::= fdef_header stmt * - - {default} reduce 26 + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (106) funcexprStmt ::= funcexpr * + (109) nonConstExpr ::= funcexpr * + + QMARK reduce 109 + COMMA reduce 106 + BITOR reduce 109 + BITXOR reduce 109 + BITAND reduce 109 + LSHIFT reduce 109 + RSHIFT reduce 109 + PLUS reduce 109 + MINUS reduce 109 + DIVIDE reduce 109 + MULTIPLY reduce 109 + MOD reduce 109 + LPAREN reduce 109 + LSQBRACKET shift 546 + LSQBRACKET reduce 109 -- dropped by precedence + PERIOD reduce 109 + SEMICOLON reduce 106 + RPAREN reduce 106 State 340: - (27) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * - - {default} reduce 27 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + EQ shift 138 + LE shift 125 + LT shift 123 + GE shift 124 + GT shift 122 + NE shift 126 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 State 341: - (25) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * - - {default} reduce 25 + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr + constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr + constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr + constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr + constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr + constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr + + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 State 342: - (259) constExpr ::= KILLS LPAREN fArgs RPAREN * + (198) lvalueList_nonEmpty ::= lvalue * + assign_stmt ::= lvalue * ASSIGN expr + assign_stmt ::= lvalue * INC + assign_stmt ::= lvalue * DEC + assign_stmt ::= lvalue * IADD expr + assign_stmt ::= lvalue * ISUB expr + assign_stmt ::= lvalue * IMUL expr + assign_stmt ::= lvalue * IDIV expr + assign_stmt ::= lvalue * IMOD expr + assign_stmt ::= lvalue * ILSH expr + assign_stmt ::= lvalue * IRSH expr + assign_stmt ::= lvalue * IBND expr + assign_stmt ::= lvalue * IBOR expr + assign_stmt ::= lvalue * IBXR expr - {default} reduce 259 + ASSIGN shift 63 + ASSIGN reduce 198 -- dropped by precedence + COMMA reduce 198 + INC shift 386 + DEC shift 385 + IADD shift 62 + ISUB shift 61 + IMUL shift 60 + IDIV shift 59 + IMOD shift 58 + ILSH shift 57 + IRSH shift 56 + IBND shift 55 + IBOR shift 54 + IBXR shift 53 State 343: - (92) fConstArg ::= NAME ASSIGN STRING * - - {default} reduce 92 + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + lvalue ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + lvalue ::= nonConstExpr * PERIOD NAME + lvalue ::= nonConstExpr * PERIOD TRGCONST + + QMARK shift 76 + BITOR shift 66 + BITXOR shift 65 + BITAND shift 67 + LSHIFT shift 69 + RSHIFT shift 68 + PLUS shift 74 + MINUS shift 73 + DIVIDE shift 71 + MULTIPLY shift 72 + MOD shift 70 + LPAREN shift 23 + LSQBRACKET shift 77 + PERIOD shift 441 State 344: - (91) fConstArg ::= NAME ASSIGN expr * + (33) object_chunk ::= object_body RBRACKET SEMICOLON * - {default} reduce 91 + $ reduce 33 + IMPORT reduce 33 + FUNCTION reduce 33 + OBJECT reduce 33 + LBRACKET reduce 33 + VAR reduce 33 + CONST reduce 33 State 345: - (105) funcexpr ::= NAME LPAREN fArgs RPAREN * + (26) fdef_chunk ::= fdef_header stmt * - {default} reduce 105 + $ reduce 26 + IMPORT reduce 26 + FUNCTION reduce 26 + OBJECT reduce 26 + LBRACKET reduce 26 + VAR reduce 26 + CONST reduce 26 State 346: - (83) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + (27) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * - {default} reduce 83 + $ reduce 27 + IMPORT reduce 27 + FUNCTION reduce 27 + OBJECT reduce 27 + LBRACKET reduce 27 + VAR reduce 27 + CONST reduce 27 State 347: - (106) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * + (18) relimp_chunk ::= relimp_path AS NAME SEMICOLON * - {default} reduce 106 + $ reduce 18 + IMPORT reduce 18 + FUNCTION reduce 18 + OBJECT reduce 18 + LBRACKET reduce 18 + VAR reduce 18 + CONST reduce 18 State 348: - (84) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * + (17) relimp_chunk ::= relimp_path SEMICOLON * - {default} reduce 84 + $ reduce 17 + IMPORT reduce 17 + FUNCTION reduce 17 + OBJECT reduce 17 + LBRACKET reduce 17 + VAR reduce 17 + CONST reduce 17 State 349: - (70) typedNameList ::= typedNameList_nonEmpty * + (12) chunk ::= blockStmt * - {default} reduce 70 + $ reduce 12 + IMPORT reduce 12 + FUNCTION reduce 12 + OBJECT reduce 12 + LBRACKET reduce 12 + VAR reduce 12 + CONST reduce 12 State 350: - (68) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * + (11) chunk ::= cdef_global_stmt SEMICOLON * - {default} reduce 68 + $ reduce 11 + IMPORT reduce 11 + FUNCTION reduce 11 + OBJECT reduce 11 + LBRACKET reduce 11 + VAR reduce 11 + CONST reduce 11 State 351: - (85) constExpr ::= lambdaExprStart stmt * + (10) chunk ::= vdefAssign_global_stmt SEMICOLON * - {default} reduce 85 + $ reduce 10 + IMPORT reduce 10 + FUNCTION reduce 10 + OBJECT reduce 10 + LBRACKET reduce 10 + VAR reduce 10 + CONST reduce 10 State 352: - (217) if_stmt ::= if_block else_header stmt * + (9) chunk ::= vdef_stmt SEMICOLON * - {default} reduce 217 + $ reduce 9 + IMPORT reduce 9 + FUNCTION reduce 9 + OBJECT reduce 9 + LBRACKET reduce 9 + VAR reduce 9 + CONST reduce 9 State 353: - (224) case_chunks ::= case_chunk * + (8) chunk ::= object_chunk * - {default} reduce 224 + $ reduce 8 + IMPORT reduce 8 + FUNCTION reduce 8 + OBJECT reduce 8 + LBRACKET reduce 8 + VAR reduce 8 + CONST reduce 8 State 354: - (228) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * + (7) chunk ::= fdecl_chunk * - {default} reduce 228 + $ reduce 7 + IMPORT reduce 7 + FUNCTION reduce 7 + OBJECT reduce 7 + LBRACKET reduce 7 + VAR reduce 7 + CONST reduce 7 State 355: - (225) default_clause ::= DEFAULT COLON * + (6) chunk ::= fdef_chunk * - {default} reduce 225 + $ reduce 6 + IMPORT reduce 6 + FUNCTION reduce 6 + OBJECT reduce 6 + LBRACKET reduce 6 + VAR reduce 6 + CONST reduce 6 State 356: - (223) case_chunks ::= case_chunks case_chunk * + (5) chunk ::= import_chunk SEMICOLON * - {default} reduce 223 + $ reduce 5 + IMPORT reduce 5 + FUNCTION reduce 5 + OBJECT reduce 5 + LBRACKET reduce 5 + VAR reduce 5 + CONST reduce 5 State 357: - (264) constActionList ::= constActionList constAction * + (4) chunk ::= relimp_chunk * - {default} reduce 264 + $ reduce 4 + IMPORT reduce 4 + FUNCTION reduce 4 + OBJECT reduce 4 + LBRACKET reduce 4 + VAR reduce 4 + CONST reduce 4 State 358: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (174) constExpr ::= LNOT constExpr * + (3) chunks ::= chunks error * - {default} reduce 174 + $ reduce 3 + IMPORT reduce 3 + FUNCTION reduce 3 + OBJECT reduce 3 + LBRACKET reduce 3 + VAR reduce 3 + CONST reduce 3 State 359: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (156) constExpr ::= BITNOT constExpr * - - {default} reduce 156 + (2) chunks ::= chunks chunk * -State 360: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (154) constExpr ::= MINUS constExpr * + $ reduce 2 + IMPORT reduce 2 + FUNCTION reduce 2 + OBJECT reduce 2 + LBRACKET reduce 2 + VAR reduce 2 + CONST reduce 2 - {default} reduce 154 +State 360: + (72) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * + + ASSIGN reduce 72 + COMMA reduce 72 + SEMICOLON reduce 72 + COLON reduce 72 State 361: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (152) constExpr ::= PLUS constExpr * + (71) nameList_nonEmpty ::= NAME * - {default} reduce 152 + ASSIGN reduce 71 + COMMA reduce 71 + SEMICOLON reduce 71 + COLON reduce 71 State 362: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - (134) constExpr ::= constExpr MOD constExpr * - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr + (90) fNonConstArg ::= logicExpr * + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr - {default} reduce 134 + COMMA reduce 90 + LOR shift 82 + LAND shift 84 + RPAREN reduce 90 State 363: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - (131) constExpr ::= constExpr DIVIDE constExpr * - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr + (65) typedName ::= NAME * + typedName ::= NAME * COLON expr - {default} reduce 131 + COMMA reduce 65 + SEMICOLON reduce 65 + COLON shift 78 + RPAREN reduce 65 State 364: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - (128) constExpr ::= constExpr MULTIPLY constExpr * - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + (188) vdef_stmt ::= VAR nameList_nonEmpty * + vdefAssign_global_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 128 + ASSIGN shift 34 + COMMA shift 496 + SEMICOLON reduce 188 State 365: - (263) constActionList ::= constAction * + (32) object_body ::= object_body method_chunk * - {default} reduce 263 + FUNCTION reduce 32 + VAR reduce 32 + RBRACKET reduce 32 State 366: - (262) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * + (31) method_chunk ::= method_header stmt * - {default} reduce 262 + FUNCTION reduce 31 + VAR reduce 31 + RBRACKET reduce 31 State 367: - (260) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + (29) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * - {default} reduce 260 + FUNCTION reduce 29 + VAR reduce 29 + RBRACKET reduce 29 State 368: - (261) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * + (28) object_body ::= OBJECT NAME LBRACKET * - {default} reduce 261 + FUNCTION reduce 28 + VAR reduce 28 + RBRACKET reduce 28 State 369: - (257) return_stmt ::= RETURN exprList * + (67) typedNameList_nonEmpty ::= typedName * + typedNameList_nonEmpty ::= typedName * COMMA typedNameList_nonEmpty - {default} reduce 257 + COMMA shift 141 + SEMICOLON reduce 67 + RPAREN reduce 67 State 370: - (256) break_stmt ::= BREAK * + (237) case_chunks ::= case_chunk * - {default} reduce 256 + RBRACKET reduce 237 + CASE reduce 237 + DEFAULT reduce 237 State 371: - (255) continue_stmt ::= CONTINUE * + (236) case_chunks ::= case_chunks case_chunk * - {default} reduce 255 + RBRACKET reduce 236 + CASE reduce 236 + DEFAULT reduce 236 State 372: - (254) foreach_stmt ::= foreach_header RPAREN stmt * + (204) assign_stmt ::= DEC lvalue * - {default} reduce 254 + COMMA reduce 204 + SEMICOLON reduce 204 + RPAREN reduce 204 State 373: - (252) foreach_opener ::= FOREACH LPAREN * + (202) assign_stmt ::= INC lvalue * - {default} reduce 252 + COMMA reduce 202 + SEMICOLON reduce 202 + RPAREN reduce 202 State 374: - (251) for_stmt ::= for_header RPAREN stmt * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (201) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 251 + COMMA shift 80 + COMMA reduce 201 -- dropped by precedence + SEMICOLON reduce 201 + RPAREN reduce 201 State 375: - (250) for_header ::= for_header2 for_action_stmt * + (215) assign_stmt ::= lvalue IBXR expr * - {default} reduce 250 + COMMA reduce 215 + SEMICOLON reduce 215 + RPAREN reduce 215 State 376: - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (245) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * + (214) assign_stmt ::= lvalue IBOR expr * - {default} reduce 245 + COMMA reduce 214 + SEMICOLON reduce 214 + RPAREN reduce 214 State 377: - (244) for_action_stmt_nonEmpty ::= assign_stmt * + (213) assign_stmt ::= lvalue IBND expr * - {default} reduce 244 + COMMA reduce 213 + SEMICOLON reduce 213 + RPAREN reduce 213 State 378: - (243) for_action_stmt_nonEmpty ::= funcexprStmt * + (212) assign_stmt ::= lvalue IRSH expr * - {default} reduce 243 + COMMA reduce 212 + SEMICOLON reduce 212 + RPAREN reduce 212 State 379: - (249) for_header2 ::= for_header1 expr SEMICOLON * + (211) assign_stmt ::= lvalue ILSH expr * - {default} reduce 249 + COMMA reduce 211 + SEMICOLON reduce 211 + RPAREN reduce 211 State 380: - (248) for_header1 ::= for_opener for_init_stmt SEMICOLON * + (210) assign_stmt ::= lvalue IMOD expr * - {default} reduce 248 + COMMA reduce 210 + SEMICOLON reduce 210 + RPAREN reduce 210 State 381: - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (240) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * + (209) assign_stmt ::= lvalue IDIV expr * - {default} reduce 240 + COMMA reduce 209 + SEMICOLON reduce 209 + RPAREN reduce 209 State 382: - (239) for_init_stmt_nonEmpty ::= assign_stmt * + (208) assign_stmt ::= lvalue IMUL expr * - {default} reduce 239 + COMMA reduce 208 + SEMICOLON reduce 208 + RPAREN reduce 208 State 383: - (238) for_init_stmt_nonEmpty ::= cdef_stmt * + (207) assign_stmt ::= lvalue ISUB expr * - {default} reduce 238 + COMMA reduce 207 + SEMICOLON reduce 207 + RPAREN reduce 207 State 384: - (237) for_init_stmt_nonEmpty ::= vdefAssign_stmt * + (206) assign_stmt ::= lvalue IADD expr * - {default} reduce 237 + COMMA reduce 206 + SEMICOLON reduce 206 + RPAREN reduce 206 State 385: - (236) for_init_stmt_nonEmpty ::= vdef_stmt * + (205) assign_stmt ::= lvalue DEC * - {default} reduce 236 + COMMA reduce 205 + SEMICOLON reduce 205 + RPAREN reduce 205 State 386: - (235) for_opener ::= FOR LPAREN * + (203) assign_stmt ::= lvalue INC * - {default} reduce 235 + COMMA reduce 203 + SEMICOLON reduce 203 + RPAREN reduce 203 State 387: - (234) while_stmt ::= while_header RPAREN stmt * + (200) assign_stmt ::= lvalue ASSIGN expr * - {default} reduce 234 + COMMA reduce 200 + SEMICOLON reduce 200 + RPAREN reduce 200 State 388: - (233) while_header ::= while_start LPAREN expr * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + (188) vdef_stmt ::= VAR nameList_nonEmpty * + vdefAssign_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 233 + ASSIGN shift 40 + COMMA shift 496 + COMMA reduce 188 -- dropped by precedence + SEMICOLON reduce 188 State 389: - (232) while_start ::= WHILE * + nonConstExpr ::= LPAREN logicExpr * RPAREN + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr - {default} reduce 232 + LOR shift 82 + LAND shift 84 + RPAREN shift 227 State 390: - (231) switchcase_stmt ::= switchcase_block RBRACKET * + (66) typedName ::= NAME COLON expr * - {default} reduce 231 + COMMA reduce 66 + SEMICOLON reduce 66 + RPAREN reduce 66 State 391: - (60) bodyStmtList ::= bodyStmt * + (16) relimp_path ::= relimp_path PERIOD NAME * - {default} reduce 60 + PERIOD reduce 16 + SEMICOLON reduce 16 + AS reduce 16 State 392: - (220) case_clause ::= case_start exprList_nonEmpty COLON * + relimp_path ::= relimp_path * PERIOD NAME + relimp_chunk ::= relimp_path * SEMICOLON + relimp_chunk ::= relimp_path * AS NAME SEMICOLON - {default} reduce 220 + PERIOD shift 552 + SEMICOLON shift 348 + AS shift 551 State 393: - (219) case_start ::= CASE * + (15) relimp_path ::= relimp_start NAME * - {default} reduce 219 + PERIOD reduce 15 + SEMICOLON reduce 15 + AS reduce 15 State 394: - (218) switchcase_header ::= SWITCHCASE LPAREN expr * + (20) dottedName ::= dottedName PERIOD NAME * - {default} reduce 218 + PERIOD reduce 20 + SEMICOLON reduce 20 + AS reduce 20 State 395: - (214) if_block ::= if_block elif_header RPAREN stmt * + dottedName ::= dottedName * PERIOD NAME + import_chunk ::= IMPORT dottedName * AS NAME + (22) import_chunk ::= IMPORT dottedName * - {default} reduce 214 + PERIOD shift 555 + SEMICOLON reduce 22 + AS shift 554 State 396: - (213) elif_header ::= elif_start LPAREN expr * + (19) dottedName ::= NAME * - {default} reduce 213 + PERIOD reduce 19 + SEMICOLON reduce 19 + AS reduce 19 State 397: - (212) elif_start ::= ELSE IF * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (193) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 212 + COMMA shift 80 + SEMICOLON reduce 193 State 398: - (211) if_block ::= if_header RPAREN stmt * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + cdef_global_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 211 + ASSIGN shift 33 + COMMA shift 496 State 399: - (210) if_header ::= if_start LPAREN expr * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (191) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 210 + COMMA shift 80 + SEMICOLON reduce 191 State 400: - (209) if_start ::= IF * + (94) fConstArg ::= NAME ASSIGN STRING * - {default} reduce 209 + COMMA reduce 94 + RPAREN reduce 94 State 401: - (208) once_stmt ::= once_block * + (93) fConstArg ::= NAME ASSIGN expr * - {default} reduce 208 + COMMA reduce 93 + RPAREN reduce 93 State 402: - (207) once_block ::= once_nocond stmt * + (68) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * - {default} reduce 207 + SEMICOLON reduce 68 + RPAREN reduce 68 State 403: - (205) once_block ::= once_header RPAREN stmt * + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON - {default} reduce 205 + COMMA shift 31 + RPAREN shift 459 State 404: - (204) once_header ::= once_start LPAREN expr * + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - {default} reduce 204 + COMMA shift 32 + RPAREN shift 463 State 405: - (203) once_start ::= ONCE * + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + (103) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * + actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON - {default} reduce 203 + COMMA shift 31 + RPAREN shift 462 + RPAREN reduce 103 -- dropped by precedence State 406: - (191) assign_stmt ::= DEC lvalue * + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + (102) fArgs_nonEmpty ::= fConstArgs_nonEmpty * + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - {default} reduce 191 + COMMA shift 32 + RPAREN shift 463 + RPAREN reduce 102 -- dropped by precedence State 407: - (189) assign_stmt ::= INC lvalue * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (78) exprList ::= exprList_nonEmpty * - {default} reduce 189 + COMMA shift 80 + SEMICOLON reduce 78 State 408: - (186) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (266) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * - {default} reduce 186 + COMMA shift 80 + RPAREN reduce 266 State 409: - (202) assign_stmt ::= lvalue IBXR expr * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + foreach_header ::= foreach_opener nameList_nonEmpty * COLON exprList_nonEmpty - {default} reduce 202 + COMMA shift 496 + COLON shift 35 State 410: - (201) assign_stmt ::= lvalue IBOR expr * + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty + (258) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * - {default} reduce 201 + COMMA shift 29 -- dropped by precedence + COMMA reduce 258 + RPAREN reduce 258 State 411: - (200) assign_stmt ::= lvalue IBND expr * + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty + (260) for_action_stmt ::= for_action_stmt_nonEmpty * - {default} reduce 200 + COMMA shift 29 + RPAREN reduce 260 State 412: - (199) assign_stmt ::= lvalue IRSH expr * + (257) for_action_stmt_nonEmpty ::= assign_stmt * - {default} reduce 199 + COMMA reduce 257 + RPAREN reduce 257 State 413: - (198) assign_stmt ::= lvalue ILSH expr * + (256) for_action_stmt_nonEmpty ::= funcexprStmt * - {default} reduce 198 + COMMA reduce 256 + RPAREN reduce 256 State 414: - (197) assign_stmt ::= lvalue IMOD expr * + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty + (253) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * - {default} reduce 197 + COMMA shift 26 -- dropped by precedence + COMMA reduce 253 + SEMICOLON reduce 253 State 415: - (196) assign_stmt ::= lvalue IDIV expr * + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty + (254) for_init_stmt ::= for_init_stmt_nonEmpty * - {default} reduce 196 + COMMA shift 26 + SEMICOLON reduce 254 State 416: - (195) assign_stmt ::= lvalue IMUL expr * + (252) for_init_stmt_nonEmpty ::= assign_stmt * - {default} reduce 195 + COMMA reduce 252 + SEMICOLON reduce 252 State 417: - (194) assign_stmt ::= lvalue ISUB expr * + (251) for_init_stmt_nonEmpty ::= cdef_stmt * - {default} reduce 194 + COMMA reduce 251 + SEMICOLON reduce 251 State 418: - (193) assign_stmt ::= lvalue IADD expr * + (250) for_init_stmt_nonEmpty ::= vdefAssign_stmt * - {default} reduce 193 + COMMA reduce 250 + SEMICOLON reduce 250 State 419: - (192) assign_stmt ::= lvalue DEC * + (249) for_init_stmt_nonEmpty ::= vdef_stmt * - {default} reduce 192 + COMMA reduce 249 + SEMICOLON reduce 249 State 420: - (190) assign_stmt ::= lvalue INC * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + case_clause ::= case_start exprList_nonEmpty * COLON - {default} reduce 190 + COMMA shift 80 + COLON shift 315 State 421: - (187) assign_stmt ::= lvalue ASSIGN expr * + (199) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * - {default} reduce 187 + ASSIGN reduce 199 + COMMA reduce 199 State 422: - (184) lvalue ::= expr PERIOD NAME * + lvalueList_nonEmpty ::= lvalueList_nonEmpty * COMMA lvalue + assign_stmt ::= lvalueList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 184 + ASSIGN shift 37 + COMMA shift 87 State 423: - (183) lvalue ::= expr LSQBRACKET expr RSQBRACKET * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (192) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 183 + COMMA shift 80 + COMMA reduce 192 -- dropped by precedence + SEMICOLON reduce 192 State 424: - (72) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + cdef_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 72 + ASSIGN shift 38 + COMMA shift 496 State 425: - (71) nameList_nonEmpty ::= NAME * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (190) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 71 + COMMA shift 80 + SEMICOLON reduce 190 State 426: - (121) nonConstExpr ::= nonConstExpr QMARK expr COLON expr * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 121 + ASSIGN shift 39 + COMMA shift 496 State 427: - (108) constExpr ::= LPAREN constExpr RPAREN * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (189) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 108 + COMMA shift 80 + COMMA reduce 189 -- dropped by precedence + SEMICOLON reduce 189 State 428: - (124) nonConstExpr ::= nonConstExpr PLUS expr * + (101) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * - {default} reduce 124 + COMMA reduce 101 + RPAREN reduce 101 State 429: - (112) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * + (96) fArg ::= fNonConstArg * - {default} reduce 112 + COMMA reduce 96 + RPAREN reduce 96 State 430: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (152) constExpr ::= PLUS constExpr * - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - {default} reduce 152 + (95) fArg ::= fConstArg * + + COMMA reduce 95 + RPAREN reduce 95 State 431: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (154) constExpr ::= MINUS constExpr * - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - {default} reduce 154 + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + (103) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * + + COMMA shift 31 + RPAREN reduce 103 State 432: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (156) constExpr ::= BITNOT constExpr * - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - - {default} reduce 156 + (99) fNonConstArgs_nonEmpty ::= fNonConstArg * + + COMMA reduce 99 + RPAREN reduce 99 State 433: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr - (174) constExpr ::= LNOT constExpr * - - {default} reduce 174 + (100) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * + + COMMA reduce 100 + RPAREN reduce 100 State 434: - (258) constExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * + (98) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * - {default} reduce 258 + COMMA reduce 98 + RPAREN reduce 98 State 435: - (172) nonConstExpr ::= constExpr LOR expr * + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + (102) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - {default} reduce 172 + COMMA shift 32 + RPAREN reduce 102 State 436: - (170) nonConstExpr ::= constExpr LAND expr * + (97) fConstArgs_nonEmpty ::= fConstArg * - {default} reduce 170 + COMMA reduce 97 + RPAREN reduce 97 State 437: - (168) nonConstExpr ::= constExpr GT expr * + (92) fConstArg ::= STRING * - {default} reduce 168 + COMMA reduce 92 + RPAREN reduce 92 State 438: - (166) nonConstExpr ::= constExpr LT expr * + (64) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * - {default} reduce 166 + COMMA reduce 64 + RSQBRACKET reduce 64 State 439: - (164) nonConstExpr ::= constExpr GE expr * + numList_nonEmpty ::= numList_nonEmpty * COMMA NUMBER + exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty * RSQBRACKET RSQBRACKET - {default} reduce 164 + COMMA shift 527 + RSQBRACKET shift 526 State 440: - (162) nonConstExpr ::= constExpr LE expr * - - {default} reduce 162 - -State 441: - (160) nonConstExpr ::= constExpr NE expr * - - {default} reduce 160 - -State 442: - (158) nonConstExpr ::= constExpr EQ expr * - - {default} reduce 158 - -State 443: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - (134) constExpr ::= constExpr MOD constExpr * - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr + (63) numList_nonEmpty ::= NUMBER * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET - {default} reduce 134 + COMMA reduce 63 + RSQBRACKET shift 543 + RSQBRACKET reduce 63 -- dropped by precedence -State 444: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - (131) constExpr ::= constExpr DIVIDE constExpr * - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr +State 441: + nonConstExpr ::= nonConstExpr PERIOD * NAME + nonConstExpr ::= nonConstExpr PERIOD * TRGCONST + lvalue ::= nonConstExpr PERIOD * NAME + lvalue ::= nonConstExpr PERIOD * TRGCONST + + NAME shift 329 + TRGCONST shift 328 + +State 442: + nonConstExpr ::= nonConstExpr PERIOD * NAME + nonConstExpr ::= nonConstExpr PERIOD * TRGCONST + + NAME shift 303 + TRGCONST shift 302 + +State 443: + (14) relimp_start ::= relimp_start PERIOD * + + PERIOD reduce 14 + NAME reduce 14 + +State 444: + relimp_start ::= relimp_start * PERIOD + relimp_path ::= relimp_start * NAME - {default} reduce 131 + PERIOD shift 443 + NAME shift 393 State 445: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - (128) constExpr ::= constExpr MULTIPLY constExpr * - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - nonConstExpr ::= constExpr * EQ expr - nonConstExpr ::= constExpr * NE expr - nonConstExpr ::= constExpr * LE expr - nonConstExpr ::= constExpr * GE expr - nonConstExpr ::= constExpr * LT expr - nonConstExpr ::= constExpr * GT expr - nonConstExpr ::= constExpr * LAND expr - nonConstExpr ::= constExpr * LOR expr + (13) relimp_start ::= IMPORT PERIOD * - {default} reduce 128 + PERIOD reduce 13 + NAME reduce 13 State 446: - (173) nonConstExpr ::= nonConstExpr LOR expr * + object_chunk ::= object_body RBRACKET * SEMICOLON - {default} reduce 173 + SEMICOLON shift 344 State 447: - (171) nonConstExpr ::= nonConstExpr LAND expr * + method_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - {default} reduce 171 + RPAREN shift 143 State 448: - (169) nonConstExpr ::= nonConstExpr GT expr * + method_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - {default} reduce 169 + LPAREN shift 116 State 449: - (167) nonConstExpr ::= nonConstExpr LT expr * + method_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - {default} reduce 167 + NAME shift 448 State 450: - (165) nonConstExpr ::= nonConstExpr GE expr * + object_body ::= object_body VAR typedNameList_nonEmpty * SEMICOLON - {default} reduce 165 + SEMICOLON shift 367 State 451: - (163) nonConstExpr ::= nonConstExpr LE expr * + object_body ::= OBJECT NAME * LBRACKET - {default} reduce 163 + LBRACKET shift 368 State 452: - (161) nonConstExpr ::= nonConstExpr NE expr * + object_body ::= OBJECT * NAME LBRACKET - {default} reduce 161 + NAME shift 451 State 453: - (159) nonConstExpr ::= nonConstExpr EQ expr * + logicExpr ::= KILLS LPAREN fArgs * RPAREN - {default} reduce 159 + RPAREN shift 215 State 454: - (151) nonConstExpr ::= nonConstExpr BITXOR expr * + funcexpr ::= NAME LPAREN fArgs * RPAREN - {default} reduce 151 + RPAREN shift 216 State 455: - (148) nonConstExpr ::= nonConstExpr BITOR expr * + lambdaExprStart ::= FUNCTION LPAREN typedNameList * RPAREN fdef_rettypes - {default} reduce 148 + RPAREN shift 144 State 456: - (145) nonConstExpr ::= nonConstExpr BITAND expr * + (70) typedNameList ::= typedNameList_nonEmpty * - {default} reduce 145 + RPAREN reduce 70 State 457: - (142) nonConstExpr ::= nonConstExpr RSHIFT expr * + (241) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * - {default} reduce 142 + RBRACKET reduce 241 State 458: - (266) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * + default_clause ::= DEFAULT * COLON - {default} reduce 266 + COLON shift 318 State 459: - (103) fArgs ::= fArgs_nonEmpty * + actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON - {default} reduce 103 + SEMICOLON shift 160 State 460: - (99) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * + constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON + actionStmt ::= constActionList ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - {default} reduce 99 + LPAREN shift 28 State 461: - (94) fArg ::= fNonConstArg * + constAction ::= ACTIONNAME LPAREN RPAREN * SEMICOLON - {default} reduce 94 + SEMICOLON shift 162 State 462: - (93) fArg ::= fConstArg * + actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON - {default} reduce 93 + SEMICOLON shift 163 State 463: - (97) fNonConstArgs_nonEmpty ::= fNonConstArg * + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN * SEMICOLON - {default} reduce 97 + SEMICOLON shift 164 State 464: - (98) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * + actionStmt ::= ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - {default} reduce 98 + LPAREN shift 20 State 465: - (96) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * + (270) return_stmt ::= RETURN exprList * - {default} reduce 96 + SEMICOLON reduce 270 State 466: - (95) fConstArgs_nonEmpty ::= fConstArg * + (269) break_stmt ::= BREAK * - {default} reduce 95 + SEMICOLON reduce 269 State 467: - (90) fConstArg ::= STRING * + (268) continue_stmt ::= CONTINUE * - {default} reduce 90 + SEMICOLON reduce 268 State 468: - (139) nonConstExpr ::= nonConstExpr LSHIFT expr * + foreach_stmt ::= foreach_header * RPAREN stmt - {default} reduce 139 + RPAREN shift 5 State 469: - (136) nonConstExpr ::= nonConstExpr MOD expr * + (265) foreach_opener ::= FOREACH LPAREN * - {default} reduce 136 + NAME reduce 265 State 470: - (133) nonConstExpr ::= nonConstExpr DIVIDE expr * + foreach_opener ::= FOREACH * LPAREN - {default} reduce 133 + LPAREN shift 469 State 471: - (130) nonConstExpr ::= nonConstExpr MULTIPLY expr * + for_stmt ::= for_header * RPAREN stmt - {default} reduce 130 + RPAREN shift 6 State 472: - (127) nonConstExpr ::= nonConstExpr MINUS expr * + (263) for_header ::= for_header2 for_action_stmt * - {default} reduce 127 + RPAREN reduce 263 State 473: - (120) constExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * + for_header2 ::= for_header1 expr * SEMICOLON - {default} reduce 120 + SEMICOLON shift 333 State 474: - (119) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * + for_header1 ::= for_opener for_init_stmt * SEMICOLON - {default} reduce 119 + SEMICOLON shift 334 State 475: - (118) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * + for_opener ::= FOR * LPAREN - {default} reduce 118 + LPAREN shift 332 State 476: - (117) constExpr ::= LOCATION LPAREN STRING RPAREN * + while_stmt ::= while_header * RPAREN stmt - {default} reduce 117 + RPAREN shift 7 State 477: - (116) constExpr ::= SWITCH LPAREN STRING RPAREN * + (246) while_header ::= while_start LPAREN expr * - {default} reduce 116 + RPAREN reduce 246 State 478: - (115) constExpr ::= UNIT LPAREN STRING RPAREN * + while_header ::= while_start * LPAREN expr - {default} reduce 115 + LPAREN shift 48 State 479: - (114) constExpr ::= MAPSTRING LPAREN STRING RPAREN * + (245) while_start ::= WHILE * - {default} reduce 114 + LPAREN reduce 245 State 480: - (113) nonConstExpr ::= L2V LPAREN expr RPAREN * + switchcase_stmt ::= switchcase_block * RBRACKET - {default} reduce 113 + RBRACKET shift 168 State 481: - (75) exprList_nonEmpty ::= expr * + switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks default_chunk + switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks + switchcase_block ::= switchcase_header RPAREN * LBRACKET - {default} reduce 75 + LBRACKET shift 114 State 482: - (73) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * + switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks default_chunk + switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks + switchcase_block ::= switchcase_header * RPAREN LBRACKET - {default} reduce 73 + RPAREN shift 481 State 483: - (64) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * + (231) switchcase_header ::= SWITCHCASE LPAREN expr * - {default} reduce 64 + RPAREN reduce 231 State 484: - (109) nonConstExpr ::= LPAREN nonConstExpr RPAREN * + switchcase_header ::= SWITCHCASE * LPAREN expr - {default} reduce 109 + LPAREN shift 49 State 485: - (62) bodyStmtList ::= bodyStmtList error * + if_block ::= if_block elif_header * RPAREN stmt - {default} reduce 62 + RPAREN shift 8 State 486: - (61) bodyStmtList ::= bodyStmtList bodyStmt * + (226) elif_header ::= elif_start LPAREN expr * - {default} reduce 61 + RPAREN reduce 226 State 487: - (59) bodyStmt ::= return_stmt SEMICOLON * + elif_header ::= elif_start * LPAREN expr - {default} reduce 59 + LPAREN shift 50 State 488: - (58) bodyStmt ::= break_stmt SEMICOLON * + (225) elif_start ::= ELSE IF * - {default} reduce 58 + LPAREN reduce 225 State 489: - (57) bodyStmt ::= continue_stmt SEMICOLON * + if_block ::= if_header * RPAREN stmt - {default} reduce 57 + RPAREN shift 9 State 490: - (56) bodyStmt ::= switchcase_stmt * + (223) if_header ::= if_start LPAREN expr * - {default} reduce 56 + RPAREN reduce 223 State 491: - (55) bodyStmt ::= foreach_stmt * + if_header ::= if_start * LPAREN expr - {default} reduce 55 + LPAREN shift 51 State 492: - (54) bodyStmt ::= for_stmt * + (222) if_start ::= IF * - {default} reduce 54 + LPAREN reduce 222 State 493: - (53) bodyStmt ::= while_stmt * + once_block ::= once_header * RPAREN stmt - {default} reduce 53 + RPAREN shift 11 State 494: - (52) bodyStmt ::= if_stmt * + (217) once_header ::= once_start LPAREN expr * - {default} reduce 52 + RPAREN reduce 217 State 495: - (51) bodyStmt ::= once_stmt * + vdefAssignStatic_stmt ::= STATIC * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - {default} reduce 51 + VAR shift 154 State 496: - (50) bodyStmt ::= actionStmt * + nameList_nonEmpty ::= nameList_nonEmpty COMMA * NAME - {default} reduce 50 + NAME shift 360 State 497: - (49) bodyStmt ::= funcexprStmt SEMICOLON * + funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN - {default} reduce 49 + RPAREN shift 225 State 498: - (48) bodyStmt ::= assign_stmt SEMICOLON * + nonConstExpr ::= nonConstExpr QMARK expr * COLON expr - {default} reduce 48 + COLON shift 64 State 499: - (47) bodyStmt ::= cdef_stmt SEMICOLON * + constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET - {default} reduce 47 + RSQBRACKET shift 231 State 500: - (46) bodyStmt ::= vdefAssign_stmt SEMICOLON * + logicExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN - {default} reduce 46 + RPAREN shift 237 State 501: - (45) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * + constExpr ::= ACTIONNAME LPAREN fArgs * RPAREN - {default} reduce 45 + RPAREN shift 275 State 502: - (44) bodyStmt ::= vdef_stmt SEMICOLON * + (105) fArgs ::= fArgs_nonEmpty * - {default} reduce 44 + RPAREN reduce 105 State 503: - (43) bodyStmt ::= SEMICOLON * + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - {default} reduce 43 + LPAREN shift 21 State 504: - (42) bodyStmt ::= blockStmt * + logicExpr ::= CONDITIONNAME * LPAREN fArgs RPAREN - {default} reduce 42 + LPAREN shift 22 State 505: - (39) blockStmt ::= lbracket error RBRACKET * + logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN - {default} reduce 39 + RPAREN shift 286 State 506: - (38) blockStmt ::= blockStmtSub rbracket * + logicExpr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN - {default} reduce 38 + LPAREN shift 41 State 507: - (37) rbracket ::= RBRACKET * + constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN - {default} reduce 37 + RPAREN shift 287 State 508: - (36) lbracket ::= LBRACKET * + constExpr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN - {default} reduce 36 + LPAREN shift 42 State 509: - (35) stmt ::= bodyStmt * + constExpr ::= STATTXTTBL LPAREN STRING * RPAREN - {default} reduce 35 + RPAREN shift 288 State 510: - (34) stmt ::= error SEMICOLON * + constExpr ::= STATTXTTBL LPAREN * STRING RPAREN - {default} reduce 34 + STRING shift 509 State 511: - (66) typedName ::= NAME COLON expr * + constExpr ::= STATTXTTBL * LPAREN STRING RPAREN - {default} reduce 66 + LPAREN shift 510 State 512: - (82) nonConstExpr ::= nonConstExpr PERIOD NAME * + constExpr ::= LOCATION LPAREN STRING * RPAREN - {default} reduce 82 + RPAREN shift 289 State 513: - (79) constExpr ::= NUMBER * + constExpr ::= LOCATION LPAREN * STRING RPAREN - {default} reduce 79 + STRING shift 512 State 514: - (76) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * + constExpr ::= LOCATION * LPAREN STRING RPAREN - {default} reduce 76 + LPAREN shift 513 State 515: - (74) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * + constExpr ::= SWITCH LPAREN STRING * RPAREN - {default} reduce 74 + RPAREN shift 290 State 516: - (18) relimp_chunk ::= relimp_path AS NAME SEMICOLON * + constExpr ::= SWITCH LPAREN * STRING RPAREN - {default} reduce 18 + STRING shift 515 State 517: - (17) relimp_chunk ::= relimp_path SEMICOLON * + constExpr ::= SWITCH * LPAREN STRING RPAREN - {default} reduce 17 + LPAREN shift 516 State 518: - (16) relimp_path ::= relimp_path PERIOD NAME * + constExpr ::= UNIT LPAREN STRING * RPAREN - {default} reduce 16 + RPAREN shift 291 State 519: - (15) relimp_path ::= relimp_start NAME * + constExpr ::= UNIT LPAREN * STRING RPAREN - {default} reduce 15 + STRING shift 518 State 520: - (14) relimp_start ::= relimp_start PERIOD * + constExpr ::= UNIT * LPAREN STRING RPAREN - {default} reduce 14 + LPAREN shift 519 State 521: - (21) import_chunk ::= IMPORT dottedName AS NAME * + constExpr ::= MAPSTRING LPAREN STRING * RPAREN - {default} reduce 21 + RPAREN shift 292 State 522: - (20) dottedName ::= dottedName PERIOD NAME * + constExpr ::= MAPSTRING LPAREN * STRING RPAREN - {default} reduce 20 + STRING shift 521 State 523: - (19) dottedName ::= NAME * + constExpr ::= MAPSTRING * LPAREN STRING RPAREN - {default} reduce 19 + LPAREN shift 522 State 524: - (13) relimp_start ::= IMPORT PERIOD * + nonConstExpr ::= L2V LPAREN expr * RPAREN - {default} reduce 13 + RPAREN shift 293 State 525: - (12) chunk ::= blockStmt * + nonConstExpr ::= L2V * LPAREN expr RPAREN - {default} reduce 12 + LPAREN shift 75 State 526: - (11) chunk ::= cdef_global_stmt SEMICOLON * + exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET - {default} reduce 11 + RSQBRACKET shift 312 State 527: - (10) chunk ::= vdefAssign_global_stmt SEMICOLON * + numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER - {default} reduce 10 + NUMBER shift 438 State 528: - (9) chunk ::= vdef_stmt SEMICOLON * + exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - {default} reduce 9 + LSQBRACKET shift 156 State 529: - (8) chunk ::= object_chunk * + nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + lvalue ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - {default} reduce 8 + RSQBRACKET shift 327 State 530: - (7) chunk ::= fdecl_chunk * + bodyStmt ::= return_stmt * SEMICOLON - {default} reduce 7 + SEMICOLON shift 174 State 531: - (6) chunk ::= fdef_chunk * + bodyStmt ::= break_stmt * SEMICOLON - {default} reduce 6 + SEMICOLON shift 175 State 532: - (5) chunk ::= import_chunk SEMICOLON * + bodyStmt ::= continue_stmt * SEMICOLON - {default} reduce 5 + SEMICOLON shift 176 State 533: - (4) chunk ::= relimp_chunk * + bodyStmt ::= funcexprStmt * SEMICOLON - {default} reduce 4 + SEMICOLON shift 184 State 534: - (3) chunks ::= chunks error * + bodyStmt ::= assign_stmt * SEMICOLON - {default} reduce 3 + SEMICOLON shift 185 State 535: - (2) chunks ::= chunks chunk * + bodyStmt ::= cdef_stmt * SEMICOLON + + SEMICOLON shift 186 + +State 536: + bodyStmt ::= vdefAssign_stmt * SEMICOLON + + SEMICOLON shift 187 + +State 537: + bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON + + SEMICOLON shift 188 + +State 538: + bodyStmt ::= vdef_stmt * SEMICOLON + + SEMICOLON shift 189 + +State 539: + blockStmt ::= lbracket error * RBRACKET + + RBRACKET shift 192 + +State 540: + stmt ::= error * SEMICOLON + + SEMICOLON shift 196 + +State 541: + lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes + + LPAREN shift 117 + +State 542: + nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + + RSQBRACKET shift 301 + +State 543: + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET + + RSQBRACKET shift 309 + +State 544: + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET + + RSQBRACKET shift 543 + +State 545: + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET + + NUMBER shift 544 + +State 546: + nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + + LSQBRACKET shift 545 + +State 547: + fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON + + RPAREN shift 145 + +State 548: + fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON + + LPAREN shift 118 + +State 549: + fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON + + NAME shift 548 + +State 550: + relimp_chunk ::= relimp_path AS NAME * SEMICOLON + + SEMICOLON shift 347 + +State 551: + relimp_chunk ::= relimp_path AS * NAME SEMICOLON + + NAME shift 550 + +State 552: + relimp_path ::= relimp_path PERIOD * NAME + + NAME shift 391 + +State 553: + (21) import_chunk ::= IMPORT dottedName AS NAME * + + SEMICOLON reduce 21 + +State 554: + import_chunk ::= IMPORT dottedName AS * NAME + + NAME shift 553 + +State 555: + dottedName ::= dottedName PERIOD * NAME + + NAME shift 394 + +State 556: + chunk ::= cdef_global_stmt * SEMICOLON + + SEMICOLON shift 350 + +State 557: + chunk ::= vdefAssign_global_stmt * SEMICOLON + + SEMICOLON shift 351 + +State 558: + chunk ::= vdef_stmt * SEMICOLON + + SEMICOLON shift 352 + +State 559: + chunk ::= import_chunk * SEMICOLON - {default} reduce 2 + SEMICOLON shift 356 ---------------------------------------------------- Symbols: @@ -19970,137 +31553,139 @@ Symbols: 42: RSQBRACKET 43: SUBSCRIPT 44: KILLS - 45: MEMBER - 46: STRING - 47: FUNCCALL - 48: L2V - 49: MAPSTRING - 50: UNIT - 51: SWITCH - 52: LOCATION - 53: STATTXTTBL - 54: VARRAY - 55: LIST - 56: STATIC - 57: CONST - 58: INC - 59: DEC - 60: IADD - 61: ISUB - 62: IMUL - 63: IDIV - 64: IMOD - 65: ILSH - 66: IRSH - 67: IBND - 68: IBOR - 69: IBXR - 70: ONCE - 71: IF - 72: SWITCHCASE - 73: CASE - 74: DEFAULT - 75: WHILE - 76: FOR - 77: FOREACH - 78: CONTINUE - 79: BREAK - 80: RETURN - 81: CONDITIONNAME - 82: ACTIONNAME - 83: error: - 84: program: IMPORT FUNCTION OBJECT LBRACKET VAR CONST - 85: chunks: IMPORT FUNCTION OBJECT LBRACKET VAR CONST - 86: chunk: IMPORT FUNCTION OBJECT LBRACKET VAR CONST - 87: relimp_chunk: IMPORT - 88: import_chunk: IMPORT - 89: fdef_chunk: FUNCTION - 90: fdecl_chunk: FUNCTION - 91: object_chunk: OBJECT - 92: vdef_stmt: VAR - 93: vdefAssign_global_stmt: VAR - 94: cdef_global_stmt: CONST - 95: blockStmt: LBRACKET - 96: relimp_start: IMPORT - 97: relimp_path: IMPORT - 98: dottedName: NAME - 99: fdef_rettypes: COLON - 100: exprList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 101: fdef_header: FUNCTION - 102: typedNameList: NAME - 103: stmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN CONDITIONNAME ACTIONNAME - 104: object_body: OBJECT - 105: typedNameList_nonEmpty: NAME - 106: method_header: FUNCTION - 107: method_chunk: FUNCTION - 108: bodyStmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN CONDITIONNAME ACTIONNAME - 109: lbracket: LBRACKET - 110: rbracket: RBRACKET - 111: blockStmtSub: LBRACKET - 112: bodyStmtList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN CONDITIONNAME ACTIONNAME - 113: vdefAssignStatic_stmt: STATIC - 114: vdefAssign_stmt: VAR - 115: cdef_stmt: CONST - 116: assign_stmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST INC DEC CONDITIONNAME ACTIONNAME - 117: funcexprStmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 118: actionStmt: ACTIONNAME - 119: once_stmt: ONCE - 120: if_stmt: IF - 121: while_stmt: WHILE - 122: for_stmt: FOR - 123: foreach_stmt: FOREACH - 124: switchcase_stmt: SWITCHCASE - 125: continue_stmt: CONTINUE - 126: break_stmt: BREAK - 127: return_stmt: RETURN - 128: numList_nonEmpty: NUMBER - 129: typedName: NAME - 130: expr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 131: nameList_nonEmpty: NAME - 132: funcexpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 133: nonConstExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 134: exprList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 135: constExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 136: lambdaExprStart: FUNCTION - 137: fNonConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 138: fConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 139: fArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 140: fConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 141: fNonConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 142: fArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 143: fArgs: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 144: commaSkippable: COMMA - 145: lvalue: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 146: lvalueList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 147: once_start: ONCE - 148: once_header: ONCE - 149: once_block: ONCE - 150: once_nocond: ONCE - 151: if_start: IF - 152: if_header: IF - 153: if_block: IF - 154: elif_start: ELSE - 155: elif_header: ELSE - 156: else_header: ELSE - 157: switchcase_header: SWITCHCASE - 158: case_start: CASE - 159: case_clause: CASE - 160: case_chunk: CASE - 161: case_chunks: CASE - 162: default_clause: DEFAULT - 163: default_chunk: DEFAULT - 164: switchcase_block: SWITCHCASE - 165: while_start: WHILE - 166: while_header: WHILE - 167: for_opener: FOR - 168: for_init_stmt_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONST INC DEC CONDITIONNAME ACTIONNAME - 169: for_init_stmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONST INC DEC CONDITIONNAME ACTIONNAME - 170: for_action_stmt_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST INC DEC CONDITIONNAME ACTIONNAME - 171: for_action_stmt: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST INC DEC CONDITIONNAME ACTIONNAME - 172: for_header1: FOR - 173: for_header2: FOR - 174: for_header: FOR - 175: foreach_opener: FOREACH - 176: foreach_header: FOREACH - 177: constAction: ACTIONNAME - 178: constActionList: ACTIONNAME + 45: TRGCONST + 46: MEMBER + 47: STRING + 48: FUNCCALL + 49: L2V + 50: MAPSTRING + 51: UNIT + 52: SWITCH + 53: LOCATION + 54: STATTXTTBL + 55: VARRAY + 56: LIST + 57: STATIC + 58: CONST + 59: INC + 60: DEC + 61: IADD + 62: ISUB + 63: IMUL + 64: IDIV + 65: IMOD + 66: ILSH + 67: IRSH + 68: IBND + 69: IBOR + 70: IBXR + 71: ONCE + 72: IF + 73: SWITCHCASE + 74: CASE + 75: DEFAULT + 76: WHILE + 77: FOR + 78: FOREACH + 79: CONTINUE + 80: BREAK + 81: RETURN + 82: CONDITIONNAME + 83: ACTIONNAME + 84: error: + 85: program: IMPORT FUNCTION OBJECT LBRACKET VAR CONST + 86: chunks: IMPORT FUNCTION OBJECT LBRACKET VAR CONST + 87: chunk: IMPORT FUNCTION OBJECT LBRACKET VAR CONST + 88: relimp_chunk: IMPORT + 89: import_chunk: IMPORT + 90: fdef_chunk: FUNCTION + 91: fdecl_chunk: FUNCTION + 92: object_chunk: OBJECT + 93: vdef_stmt: VAR + 94: vdefAssign_global_stmt: VAR + 95: cdef_global_stmt: CONST + 96: blockStmt: LBRACKET + 97: relimp_start: IMPORT + 98: relimp_path: IMPORT + 99: dottedName: NAME + 100: fdef_rettypes: COLON + 101: exprList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 102: fdef_header: FUNCTION + 103: typedNameList: NAME + 104: stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 105: object_body: OBJECT + 106: typedNameList_nonEmpty: NAME + 107: method_header: FUNCTION + 108: method_chunk: FUNCTION + 109: bodyStmt: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 110: lbracket: LBRACKET + 111: rbracket: RBRACKET + 112: blockStmtSub: LBRACKET + 113: bodyStmtList: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 114: vdefAssignStatic_stmt: STATIC + 115: vdefAssign_stmt: VAR + 116: cdef_stmt: CONST + 117: assign_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME + 118: funcexprStmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 119: actionStmt: ACTIONNAME + 120: once_stmt: ONCE + 121: if_stmt: IF + 122: while_stmt: WHILE + 123: for_stmt: FOR + 124: foreach_stmt: FOREACH + 125: switchcase_stmt: SWITCHCASE + 126: continue_stmt: CONTINUE + 127: break_stmt: BREAK + 128: return_stmt: RETURN + 129: numList_nonEmpty: NUMBER + 130: typedName: NAME + 131: expr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 132: nameList_nonEmpty: NAME + 133: funcexpr: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 134: nonConstExpr: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 135: exprList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 136: constExpr: PLUS MINUS BITNOT LPAREN LSQBRACKET FUNCTION NUMBER KILLS TRGCONST MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 137: lambdaExprStart: FUNCTION + 138: logicExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 139: fNonConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 140: fConstArg: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 141: fArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 142: fConstArgs_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 143: fNonConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 144: fArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 145: fArgs: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 146: commaSkippable: COMMA + 147: lvalue: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 148: lvalueList_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 149: once_start: ONCE + 150: once_header: ONCE + 151: once_block: ONCE + 152: once_nocond: ONCE + 153: if_start: IF + 154: if_header: IF + 155: if_block: IF + 156: elif_start: ELSE + 157: elif_header: ELSE + 158: else_header: ELSE + 159: switchcase_header: SWITCHCASE + 160: case_start: CASE + 161: case_clause: CASE + 162: case_chunk: CASE + 163: case_chunks: CASE + 164: default_clause: DEFAULT + 165: default_chunk: DEFAULT + 166: switchcase_block: SWITCHCASE + 167: while_start: WHILE + 168: while_header: WHILE + 169: for_opener: FOR + 170: for_init_stmt_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY CONST INC DEC ACTIONNAME + 171: for_init_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY CONST INC DEC ACTIONNAME + 172: for_action_stmt_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME + 173: for_action_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME + 174: for_header1: FOR + 175: for_header2: FOR + 176: for_header: FOR + 177: foreach_opener: FOREACH + 178: foreach_header: FOREACH + 179: constAction: ACTIONNAME + 180: constActionList: ACTIONNAME diff --git a/eudplib/epscript/cpp/parser/reservedWords/constparser.cpp b/eudplib/epscript/cpp/parser/reservedWords/constparser.cpp index 01ffcabd..5b7ffc61 100644 --- a/eudplib/epscript/cpp/parser/reservedWords/constparser.cpp +++ b/eudplib/epscript/cpp/parser/reservedWords/constparser.cpp @@ -103,8 +103,8 @@ int parseConstantName(const std::string& name) { initConstmap(); } - if(name.size() == 0 || name[0] != '$') return -1; - auto it = constMap.find(name.substr(1)); + if(name.size() == 0) return -1; + auto it = constMap.find(name); if (it == constMap.end()) return -1; else return it->second; } diff --git a/eudplib/epscript/cpp/parser/tokenAdapter.cpp b/eudplib/epscript/cpp/parser/tokenAdapter.cpp index d58c568c..b1a9b3ca 100644 --- a/eudplib/epscript/cpp/parser/tokenAdapter.cpp +++ b/eudplib/epscript/cpp/parser/tokenAdapter.cpp @@ -35,6 +35,7 @@ int getConvertedType(int type) { case TOKEN_CONDITION: return CONDITIONNAME; case TOKEN_ACTION: return ACTIONNAME; case TOKEN_KILLS: return KILLS; + case TOKEN_TRGCONST: return TRGCONST; case TOKEN_UNITNAME: return UNIT; case TOKEN_LOCNAME: return LOCATION; diff --git a/eudplib/epscript/cpp/parser/tokenizer/token.cpp b/eudplib/epscript/cpp/parser/tokenizer/token.cpp index 468a6518..8323dd4b 100644 --- a/eudplib/epscript/cpp/parser/tokenizer/token.cpp +++ b/eudplib/epscript/cpp/parser/tokenizer/token.cpp @@ -41,6 +41,7 @@ const char* getTokenTypeString(int type) { {TOKEN_CONDITION, "TOKEN_CONDITION"}, {TOKEN_ACTION, "TOKEN_ACTION"}, {TOKEN_KILLS, "TOKEN_KILLS"}, + {TOKEN_TRGCONST, "TOKEN_TRGCONST"}, {TOKEN_UNITNAME, "TOKEN_UNITNAME"}, {TOKEN_LOCNAME, "TOKEN_LOCNAME"}, {TOKEN_MAPSTRING, "TOKEN_MAPSTRING"}, diff --git a/eudplib/epscript/cpp/parser/tokenizer/token.h b/eudplib/epscript/cpp/parser/tokenizer/token.h index 132175b2..e0e34fa2 100644 --- a/eudplib/epscript/cpp/parser/tokenizer/token.h +++ b/eudplib/epscript/cpp/parser/tokenizer/token.h @@ -45,6 +45,7 @@ enum TokenType TOKEN_CONDITION, TOKEN_ACTION, TOKEN_KILLS, + TOKEN_TRGCONST, TOKEN_UNITNAME, TOKEN_LOCNAME, diff --git a/eudplib/epscript/cpp/parser/tokenizer/tokenizerImpl.cpp b/eudplib/epscript/cpp/parser/tokenizer/tokenizerImpl.cpp index 954ddba2..f05d8110 100644 --- a/eudplib/epscript/cpp/parser/tokenizer/tokenizerImpl.cpp +++ b/eudplib/epscript/cpp/parser/tokenizer/tokenizerImpl.cpp @@ -176,8 +176,9 @@ Token* TokenizerImpl::getToken() { if(isConditionName(identifier)) return TK(TOKEN_CONDITION, identifier); if(isActionName(identifier)) return TK(TOKEN_ACTION, identifier); + if(parseConstantName(identifier) != -1) return TK(TOKEN_TRGCONST, identifier); int c; - if((c = parseConstantName(identifier)) != -1) return TK(TOKEN_NUMBER, std::to_string(c)); + if(identifier.at(0) == '$' && (c = parseConstantName(identifier.substr(1))) != -1) return TK(TOKEN_NUMBER, std::to_string(c)); return TK(TOKEN_NAME, identifier); } From d12d0ea53916835614b8da2abc4e148aa66e3881 Mon Sep 17 00:00:00 2001 From: armoha Date: Sat, 11 Sep 2021 23:12:47 +0900 Subject: [PATCH 3/5] Add amount All --- eudplib/epscript/cpp/parser/epparser.out | 22143 +++++----------- .../cpp/parser/reservedWords/constparser.cpp | 2 + 2 files changed, 5921 insertions(+), 16224 deletions(-) diff --git a/eudplib/epscript/cpp/parser/epparser.out b/eudplib/epscript/cpp/parser/epparser.out index 1b122788..b7af8346 100644 --- a/eudplib/epscript/cpp/parser/epparser.out +++ b/eudplib/epscript/cpp/parser/epparser.out @@ -4,25 +4,19 @@ State 0: chunks ::= * chunks chunk chunks ::= * chunks error - $ reduce 1 - IMPORT reduce 1 - FUNCTION reduce 1 - OBJECT reduce 1 - LBRACKET reduce 1 - VAR reduce 1 - CONST reduce 1 program accept chunks shift 18 + {default} reduce 1 State 1: + method_chunk ::= method_header * stmt + stmt ::= * error SEMICOLON + stmt ::= * bodyStmt lbracket ::= * LBRACKET blockStmt ::= * blockStmtSub rbracket blockStmt ::= * lbracket error RBRACKET - blockStmt ::= lbracket * error RBRACKET blockStmtSub ::= * lbracket - (40) blockStmtSub ::= lbracket * blockStmtSub ::= * lbracket bodyStmtList - blockStmtSub ::= lbracket * bodyStmtList bodyStmt ::= * blockStmt bodyStmt ::= * SEMICOLON bodyStmt ::= * vdef_stmt SEMICOLON @@ -41,9 +35,6 @@ State 1: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - bodyStmtList ::= * bodyStmt - bodyStmtList ::= * bodyStmtList bodyStmt - bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -182,86 +173,85 @@ State 1: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - RBRACKET reduce 40 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 539 - vdef_stmt shift 538 - blockStmt shift 191 - bodyStmt shift 314 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 373 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - bodyStmtList shift 17 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 2: - method_chunk ::= method_header * stmt + fdef_chunk ::= fdef_header * stmt stmt ::= * error SEMICOLON stmt ::= * bodyStmt lbracket ::= * LBRACKET @@ -425,85 +415,84 @@ State 2: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 366 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 377 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 3: - fdef_chunk ::= fdef_header * stmt stmt ::= * error SEMICOLON stmt ::= * bodyStmt lbracket ::= * LBRACKET @@ -634,6 +623,7 @@ State 3: if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt + if_stmt ::= if_block else_header * stmt switchcase_header ::= * SWITCHCASE LPAREN expr switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -667,82 +657,82 @@ State 3: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 345 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 388 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 4: stmt ::= * error SEMICOLON @@ -875,7 +865,6 @@ State 4: if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt - if_stmt ::= if_block else_header * stmt switchcase_header ::= * SWITCHCASE LPAREN expr switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -892,6 +881,7 @@ State 4: foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt + foreach_stmt ::= foreach_header RPAREN * stmt continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList @@ -909,82 +899,82 @@ State 4: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 158 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 402 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 5: stmt ::= * error SEMICOLON @@ -1130,10 +1120,10 @@ State 5: for_header2 ::= * for_header1 expr SEMICOLON for_header ::= * for_header2 for_action_stmt for_stmt ::= * for_header RPAREN stmt + for_stmt ::= for_header RPAREN * stmt foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt - foreach_stmt ::= foreach_header RPAREN * stmt continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList @@ -1151,82 +1141,82 @@ State 5: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 165 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 404 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 6: stmt ::= * error SEMICOLON @@ -1367,12 +1357,12 @@ State 6: while_start ::= * WHILE while_header ::= * while_start LPAREN expr while_stmt ::= * while_header RPAREN stmt + while_stmt ::= while_header RPAREN * stmt for_opener ::= * FOR LPAREN for_header1 ::= * for_opener for_init_stmt SEMICOLON for_header2 ::= * for_header1 expr SEMICOLON for_header ::= * for_header2 for_action_stmt for_stmt ::= * for_header RPAREN stmt - for_stmt ::= for_header RPAREN * stmt foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt @@ -1393,82 +1383,82 @@ State 6: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 166 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 417 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 7: stmt ::= * error SEMICOLON @@ -1599,6 +1589,7 @@ State 7: if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt if_block ::= * if_block elif_header RPAREN stmt + if_block ::= if_block elif_header RPAREN * stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr @@ -1609,7 +1600,6 @@ State 7: while_start ::= * WHILE while_header ::= * while_start LPAREN expr while_stmt ::= * while_header RPAREN stmt - while_stmt ::= while_header RPAREN * stmt for_opener ::= * FOR LPAREN for_header1 ::= * for_opener for_init_stmt SEMICOLON for_header2 ::= * for_header1 expr SEMICOLON @@ -1635,82 +1625,82 @@ State 7: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 167 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 425 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 8: stmt ::= * error SEMICOLON @@ -1840,8 +1830,8 @@ State 8: if_start ::= * IF if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt + if_block ::= if_header RPAREN * stmt if_block ::= * if_block elif_header RPAREN stmt - if_block ::= if_block elif_header RPAREN * stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr @@ -1877,82 +1867,82 @@ State 8: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 169 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 428 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 9: stmt ::= * error SEMICOLON @@ -2078,11 +2068,11 @@ State 9: once_block ::= * once_header RPAREN stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt + once_block ::= once_nocond * stmt once_stmt ::= * once_block if_start ::= * IF if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt - if_block ::= if_header RPAREN * stmt if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt @@ -2119,82 +2109,82 @@ State 9: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 170 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 432 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 10: stmt ::= * error SEMICOLON @@ -2318,9 +2308,9 @@ State 10: once_start ::= * ONCE once_header ::= * once_start LPAREN expr once_block ::= * once_header RPAREN stmt + once_block ::= once_header RPAREN * stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt - once_block ::= once_nocond * stmt once_stmt ::= * once_block if_start ::= * IF if_header ::= * if_start LPAREN expr @@ -2361,91 +2351,92 @@ State 10: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 172 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 433 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 11: - stmt ::= * error SEMICOLON - stmt ::= * bodyStmt lbracket ::= * LBRACKET blockStmt ::= * blockStmtSub rbracket blockStmt ::= * lbracket error RBRACKET + blockStmt ::= lbracket * error RBRACKET blockStmtSub ::= * lbracket + (40) blockStmtSub ::= lbracket * blockStmtSub ::= * lbracket bodyStmtList + blockStmtSub ::= lbracket * bodyStmtList bodyStmt ::= * blockStmt bodyStmt ::= * SEMICOLON bodyStmt ::= * vdef_stmt SEMICOLON @@ -2464,6 +2455,9 @@ State 11: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON + bodyStmtList ::= * bodyStmt + bodyStmtList ::= * bodyStmtList bodyStmt + bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -2560,7 +2554,6 @@ State 11: once_start ::= * ONCE once_header ::= * once_start LPAREN expr once_block ::= * once_header RPAREN stmt - once_block ::= once_header RPAREN * stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt once_stmt ::= * once_block @@ -2603,82 +2596,83 @@ State 11: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 173 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 346 + vdef_stmt shift 345 + blockStmt shift 525 + bodyStmt shift 421 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + bodyStmtList shift 17 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 + {default} reduce 40 State 12: stmt ::= * error SEMICOLON @@ -2845,82 +2839,82 @@ State 12: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 540 - vdef_stmt shift 538 - blockStmt shift 191 - stmt shift 223 - bodyStmt shift 195 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 347 + vdef_stmt shift 345 + blockStmt shift 525 + stmt shift 387 + bodyStmt shift 530 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 State 13: lbracket ::= * LBRACKET @@ -3054,7 +3048,7 @@ State 13: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (235) case_chunk ::= case_clause bodyStmtList * + (240) default_chunk ::= default_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3087,84 +3081,82 @@ State 13: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - RBRACKET reduce 235 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - CASE reduce 235 - DEFAULT reduce 235 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 316 - vdef_stmt shift 538 - blockStmt shift 191 - bodyStmt shift 317 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 506 + vdef_stmt shift 345 + blockStmt shift 525 + bodyStmt shift 507 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 + {default} reduce 240 State 14: lbracket ::= * LBRACKET @@ -3299,8 +3291,8 @@ State 14: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (234) case_chunk ::= case_clause * - case_chunk ::= case_clause * bodyStmtList + (239) default_chunk ::= default_clause * + default_chunk ::= default_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3333,84 +3325,82 @@ State 14: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - RBRACKET reduce 234 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - CASE reduce 234 - DEFAULT reduce 234 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - vdef_stmt shift 538 - blockStmt shift 191 - bodyStmt shift 314 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + vdef_stmt shift 345 + blockStmt shift 525 + bodyStmt shift 421 + lbracket shift 11 blockStmtSub shift 157 bodyStmtList shift 13 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 + {default} reduce 239 State 15: lbracket ::= * LBRACKET @@ -3544,7 +3534,7 @@ State 15: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (240) default_chunk ::= default_clause bodyStmtList * + (235) case_chunk ::= case_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3577,82 +3567,82 @@ State 15: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - RBRACKET reduce 240 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 316 - vdef_stmt shift 538 - blockStmt shift 191 - bodyStmt shift 317 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 506 + vdef_stmt shift 345 + blockStmt shift 525 + bodyStmt shift 507 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 + {default} reduce 235 State 16: lbracket ::= * LBRACKET @@ -3787,8 +3777,8 @@ State 16: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (239) default_chunk ::= default_clause * - default_chunk ::= default_clause * bodyStmtList + (234) case_chunk ::= case_clause * + case_chunk ::= case_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3821,82 +3811,82 @@ State 16: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - RBRACKET reduce 239 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - vdef_stmt shift 538 - blockStmt shift 191 - bodyStmt shift 314 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + vdef_stmt shift 345 + blockStmt shift 525 + bodyStmt shift 421 + lbracket shift 11 blockStmtSub shift 157 bodyStmtList shift 15 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 + {default} reduce 234 State 17: lbracket ::= * LBRACKET @@ -4063,82 +4053,82 @@ State 17: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 190 - NAME shift 330 - FUNCTION shift 541 - LBRACKET shift 319 - VAR shift 155 - RBRACKET reduce 41 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - STATIC shift 495 - CONST shift 153 + SEMICOLON shift 524 + NAME shift 187 + FUNCTION shift 349 + LBRACKET shift 529 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + STATIC shift 297 + CONST shift 150 INC shift 86 DEC shift 85 - ONCE shift 326 - IF shift 492 - SWITCHCASE shift 484 - WHILE shift 479 - FOR shift 475 - FOREACH shift 470 - CONTINUE shift 467 - BREAK shift 466 - RETURN shift 30 - ACTIONNAME shift 464 - error shift 316 - vdef_stmt shift 538 - blockStmt shift 191 - bodyStmt shift 317 - lbracket shift 1 + ONCE shift 435 + IF shift 430 + SWITCHCASE shift 286 + WHILE shift 419 + FOR shift 280 + FOREACH shift 274 + CONTINUE shift 401 + BREAK shift 400 + RETURN shift 31 + ACTIONNAME shift 270 + error shift 506 + vdef_stmt shift 345 + blockStmt shift 525 + bodyStmt shift 507 + lbracket shift 11 blockStmtSub shift 157 - vdefAssignStatic_stmt shift 537 - vdefAssign_stmt shift 536 - cdef_stmt shift 535 - assign_stmt shift 534 - funcexprStmt shift 533 - actionStmt shift 183 - once_stmt shift 182 - if_stmt shift 181 - while_stmt shift 180 - for_stmt shift 179 - foreach_stmt shift 178 - switchcase_stmt shift 177 - continue_stmt shift 532 - break_stmt shift 531 - return_stmt shift 530 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + vdefAssignStatic_stmt shift 344 + vdefAssign_stmt shift 343 + cdef_stmt shift 342 + assign_stmt shift 341 + funcexprStmt shift 340 + actionStmt shift 517 + once_stmt shift 516 + if_stmt shift 515 + while_stmt shift 514 + for_stmt shift 513 + foreach_stmt shift 512 + switchcase_stmt shift 511 + continue_stmt shift 339 + break_stmt shift 338 + return_stmt shift 337 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - once_start shift 325 - once_header shift 493 - once_block shift 171 - once_nocond shift 10 - if_start shift 491 - if_header shift 489 - if_block shift 115 - switchcase_header shift 482 - switchcase_block shift 480 - while_start shift 478 - while_header shift 476 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + once_start shift 293 + once_header shift 292 + once_block shift 431 + once_nocond shift 9 + if_start shift 291 + if_header shift 290 + if_block shift 116 + switchcase_header shift 285 + switchcase_block shift 283 + while_start shift 282 + while_header shift 281 for_opener shift 19 - for_header1 shift 47 + for_header1 shift 46 for_header2 shift 27 - for_header shift 471 - foreach_opener shift 152 - foreach_header shift 468 - constAction shift 161 - constActionList shift 142 + for_header shift 275 + foreach_opener shift 149 + foreach_header shift 272 + constAction shift 395 + constActionList shift 148 + {default} reduce 41 State 18: (0) program ::= chunks * @@ -4178,28 +4168,28 @@ State 18: cdef_global_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty $ reduce 0 - IMPORT shift 149 - FUNCTION shift 549 - OBJECT shift 452 - LBRACKET shift 319 - VAR shift 151 - CONST shift 150 - error shift 358 - chunk shift 359 - relimp_chunk shift 357 - import_chunk shift 559 - fdef_chunk shift 355 - fdecl_chunk shift 354 - object_chunk shift 353 - vdef_stmt shift 558 - vdefAssign_global_stmt shift 557 - cdef_global_stmt shift 556 - blockStmt shift 349 - relimp_start shift 444 - relimp_path shift 392 - fdef_header shift 3 + IMPORT shift 143 + FUNCTION shift 361 + OBJECT shift 259 + LBRACKET shift 529 + VAR shift 145 + CONST shift 144 + error shift 558 + chunk shift 559 + relimp_chunk shift 557 + import_chunk shift 370 + fdef_chunk shift 555 + fdecl_chunk shift 554 + object_chunk shift 553 + vdef_stmt shift 369 + vdefAssign_global_stmt shift 368 + cdef_global_stmt shift 367 + blockStmt shift 549 + relimp_start shift 249 + relimp_path shift 230 + fdef_header shift 2 object_body shift 139 - lbracket shift 1 + lbracket shift 11 blockStmtSub shift 157 State 19: @@ -4309,36 +4299,36 @@ State 19: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON reduce 255 - NAME shift 330 - FUNCTION shift 541 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - CONST shift 153 + NAME shift 187 + FUNCTION shift 349 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + CONST shift 150 INC shift 86 DEC shift 85 - ACTIONNAME shift 503 - vdef_stmt shift 419 - vdefAssign_stmt shift 418 - cdef_stmt shift 417 - assign_stmt shift 416 - funcexpr shift 310 - nonConstExpr shift 343 - constExpr shift 340 + ACTIONNAME shift 308 + vdef_stmt shift 415 + vdefAssign_stmt shift 414 + cdef_stmt shift 413 + assign_stmt shift 412 + funcexpr shift 357 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - for_init_stmt_nonEmpty shift 415 - for_init_stmt shift 474 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + for_init_stmt_nonEmpty shift 279 + for_init_stmt shift 278 + {default} reduce 255 State 20: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4458,35 +4448,34 @@ State 20: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - RPAREN shift 461 - RPAREN reduce 104 -- dropped by precedence - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 248 + FUNCTION shift 349 + RPAREN shift 267 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 406 - fNonConstArgs_nonEmpty shift 405 - fArgs_nonEmpty shift 502 - fArgs shift 501 + logicExpr shift 245 + fNonConstArg shift 483 + fConstArg shift 486 + fConstArgs_nonEmpty shift 236 + fNonConstArgs_nonEmpty shift 235 + fArgs_nonEmpty shift 479 + fArgs shift 305 State 21: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4499,20 +4488,6 @@ State 21: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= * fConstArg - fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg - fArgs_nonEmpty ::= * fConstArgs_nonEmpty - fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (104) fArgs ::= * - fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -4526,7 +4501,6 @@ State 21: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -4565,72 +4539,77 @@ State 21: constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + vdef_stmt ::= * VAR nameList_nonEmpty + vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_init_stmt_nonEmpty ::= * vdef_stmt + for_init_stmt_nonEmpty ::= * vdefAssign_stmt + for_init_stmt_nonEmpty ::= * cdef_stmt + for_init_stmt_nonEmpty ::= * assign_stmt + for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN - LNOT shift 81 PLUS shift 111 MINUS shift 110 BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - RPAREN reduce 104 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 187 + FUNCTION shift 349 + VAR shift 152 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + CONST shift 150 + INC shift 86 + DEC shift 85 + ACTIONNAME shift 308 + vdef_stmt shift 415 + vdefAssign_stmt shift 414 + cdef_stmt shift 413 + assign_stmt shift 412 + funcexpr shift 357 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 502 - fArgs shift 501 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + for_init_stmt_nonEmpty shift 411 State 22: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4737,9 +4716,9 @@ State 22: logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN LNOT shift 81 PLUS shift 111 @@ -4747,34 +4726,34 @@ State 22: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - RPAREN reduce 104 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 248 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 502 - fArgs shift 500 + logicExpr shift 245 + fNonConstArg shift 483 + fConstArg shift 486 + fConstArgs_nonEmpty shift 307 + fNonConstArgs_nonEmpty shift 306 + fArgs_nonEmpty shift 479 + fArgs shift 305 + {default} reduce 104 State 23: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4803,7 +4782,6 @@ State 23: fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN @@ -4882,6 +4860,7 @@ State 23: logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -4891,34 +4870,34 @@ State 23: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - RPAREN reduce 104 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 248 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 502 - fArgs shift 497 + logicExpr shift 245 + fNonConstArg shift 483 + fConstArg shift 486 + fConstArgs_nonEmpty shift 307 + fNonConstArgs_nonEmpty shift 306 + fArgs_nonEmpty shift 479 + fArgs shift 304 + {default} reduce 104 State 24: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4946,8 +4925,8 @@ State 24: (104) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= NAME LPAREN * fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN @@ -5035,34 +5014,34 @@ State 24: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - RPAREN reduce 104 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 248 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 502 - fArgs shift 454 + logicExpr shift 245 + fNonConstArg shift 483 + fConstArg shift 486 + fConstArgs_nonEmpty shift 307 + fNonConstArgs_nonEmpty shift 306 + fArgs_nonEmpty shift 479 + fArgs shift 300 + {default} reduce 104 State 25: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5090,6 +5069,7 @@ State 25: (104) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= NAME LPAREN * fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN @@ -5170,7 +5150,6 @@ State 25: logicExpr ::= * LNOT logicExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN - logicExpr ::= KILLS LPAREN * fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN LNOT shift 81 @@ -5179,34 +5158,34 @@ State 25: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - RPAREN reduce 104 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 248 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 502 - fArgs shift 453 + logicExpr shift 245 + fNonConstArg shift 483 + fConstArg shift 486 + fConstArgs_nonEmpty shift 307 + fNonConstArgs_nonEmpty shift 306 + fArgs_nonEmpty shift 479 + fArgs shift 261 + {default} reduce 104 State 26: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5219,6 +5198,20 @@ State 26: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * logicExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (104) fArgs ::= * + fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -5232,6 +5225,7 @@ State 26: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5270,77 +5264,72 @@ State 26: constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr constExpr ::= * constExpr GT constExpr - vdef_stmt ::= * VAR nameList_nonEmpty - vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_init_stmt_nonEmpty ::= * vdef_stmt - for_init_stmt_nonEmpty ::= * vdefAssign_stmt - for_init_stmt_nonEmpty ::= * cdef_stmt - for_init_stmt_nonEmpty ::= * assign_stmt - for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN + logicExpr ::= KILLS LPAREN * fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + LNOT shift 81 PLUS shift 111 MINUS shift 110 BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 541 - VAR shift 155 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - CONST shift 153 - INC shift 86 - DEC shift 85 - ACTIONNAME shift 503 - vdef_stmt shift 419 - vdefAssign_stmt shift 418 - cdef_stmt shift 417 - assign_stmt shift 416 - funcexpr shift 310 - nonConstExpr shift 343 - constExpr shift 340 + NAME shift 248 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - for_init_stmt_nonEmpty shift 414 + logicExpr shift 245 + fNonConstArg shift 483 + fConstArg shift 486 + fConstArgs_nonEmpty shift 307 + fNonConstArgs_nonEmpty shift 306 + fArgs_nonEmpty shift 479 + fArgs shift 260 + {default} reduce 104 State 27: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5445,32 +5434,32 @@ State 27: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 541 - RPAREN reduce 259 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 + NAME shift 187 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 INC shift 86 DEC shift 85 - ACTIONNAME shift 503 - assign_stmt shift 412 - funcexprStmt shift 413 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + ACTIONNAME shift 308 + assign_stmt shift 407 + funcexprStmt shift 408 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - for_action_stmt_nonEmpty shift 411 - for_action_stmt shift 472 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + for_action_stmt_nonEmpty shift 276 + for_action_stmt shift 405 + {default} reduce 259 State 28: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5585,32 +5574,32 @@ State 28: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - RPAREN shift 461 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 248 + FUNCTION shift 349 + RPAREN shift 267 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 404 - fNonConstArgs_nonEmpty shift 403 + logicExpr shift 245 + fNonConstArg shift 483 + fConstArg shift 486 + fConstArgs_nonEmpty shift 234 + fNonConstArgs_nonEmpty shift 233 State 29: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5713,38 +5702,33 @@ State 29: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 + NAME shift 187 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 INC shift 86 DEC shift 85 - ACTIONNAME shift 503 - assign_stmt shift 412 - funcexprStmt shift 413 - funcexpr shift 339 - nonConstExpr shift 343 - constExpr shift 340 + ACTIONNAME shift 308 + assign_stmt shift 407 + funcexprStmt shift 408 + funcexpr shift 218 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 342 - lvalueList_nonEmpty shift 422 - for_action_stmt_nonEmpty shift 410 + lvalue shift 194 + lvalueList_nonEmpty shift 239 + for_action_stmt_nonEmpty shift 406 State 30: - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - (77) exprList ::= * - exprList ::= * exprList_nonEmpty constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -5754,8 +5738,14 @@ State 30: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr + fNonConstArg ::= * logicExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fArg ::= * fConstArg + fArg ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -5835,7 +5825,6 @@ State 30: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - return_stmt ::= RETURN * exprList logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -5846,33 +5835,38 @@ State 30: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON reduce 77 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 407 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - exprList shift 465 - constExpr shift 299 + NAME shift 248 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 245 + fNonConstArg shift 481 + fConstArg shift 482 + fArg shift 480 State 31: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr + (77) exprList ::= * + exprList ::= * exprList_nonEmpty constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -5882,14 +5876,8 @@ State 31: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fArg ::= * fConstArg - fArg ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg + expr ::= * constExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -5969,6 +5957,7 @@ State 31: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr + return_stmt ::= RETURN * exprList logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -5979,30 +5968,30 @@ State 31: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 271 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + exprList shift 399 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 429 - fConstArg shift 430 - fArg shift 428 + logicExpr shift 244 + {default} reduce 77 State 32: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -6111,29 +6100,29 @@ State 32: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 331 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 437 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 336 + NAME shift 248 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 487 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 180 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 433 - fConstArg shift 434 + logicExpr shift 245 + fNonConstArg shift 484 + fConstArg shift 485 State 33: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6241,28 +6230,28 @@ State 33: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 397 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 251 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 34: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6370,28 +6359,28 @@ State 34: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 399 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 252 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 35: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6499,28 +6488,28 @@ State 35: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 408 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 273 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 36: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6628,28 +6617,28 @@ State 36: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 420 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 238 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 37: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6757,28 +6746,28 @@ State 37: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 374 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 294 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 38: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6886,28 +6875,28 @@ State 38: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 423 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 295 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 39: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7015,28 +7004,28 @@ State 39: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 425 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 296 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 40: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7144,28 +7133,28 @@ State 40: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 427 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 298 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 41: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7273,28 +7262,28 @@ State 41: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 146 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 153 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 42: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7402,28 +7391,28 @@ State 42: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 147 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 154 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 43: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7531,28 +7520,28 @@ State 43: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 148 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 155 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 44: fdef_rettypes ::= COLON * exprList_nonEmpty @@ -7660,32 +7649,31 @@ State 44: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - exprList_nonEmpty shift 320 - expr shift 311 - funcexpr shift 294 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + exprList_nonEmpty shift 358 + expr shift 501 + funcexpr shift 335 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 45: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -7697,12 +7685,13 @@ State 45: constExpr ::= * lambdaExprStart stmt expr ::= * constExpr expr ::= * logicExpr + fConstArg ::= NAME ASSIGN * expr + fConstArg ::= NAME ASSIGN * STRING funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - (112) commaSkippable ::= COMMA * constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7787,29 +7776,28 @@ State 45: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - RPAREN reduce 112 - NUMBER shift 308 - RSQBRACKET reduce 112 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 313 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + STRING shift 381 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 382 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 46: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -7824,8 +7812,6 @@ State 46: constExpr ::= * lambdaExprStart stmt expr ::= * constExpr expr ::= * logicExpr - fConstArg ::= NAME ASSIGN * expr - fConstArg ::= NAME ASSIGN * STRING funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -7905,6 +7891,7 @@ State 46: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr + for_header2 ::= for_header1 * expr SEMICOLON logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -7915,28 +7902,27 @@ State 46: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - STRING shift 400 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 401 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 277 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 47: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8030,7 +8016,7 @@ State 47: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - for_header2 ::= for_header1 * expr SEMICOLON + while_header ::= while_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8041,27 +8027,27 @@ State 47: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 473 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 418 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 48: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8155,7 +8141,7 @@ State 48: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - while_header ::= while_start LPAREN * expr + switchcase_header ::= SWITCHCASE LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8166,27 +8152,27 @@ State 48: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 477 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 424 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 49: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8280,7 +8266,7 @@ State 49: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - switchcase_header ::= SWITCHCASE LPAREN * expr + elif_header ::= elif_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8291,27 +8277,27 @@ State 49: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 483 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 426 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 50: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8405,7 +8391,7 @@ State 50: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - elif_header ::= elif_start LPAREN * expr + if_header ::= if_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8416,27 +8402,27 @@ State 50: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 486 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 429 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 51: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8530,7 +8516,7 @@ State 51: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - if_header ::= if_start LPAREN * expr + once_header ::= once_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8541,27 +8527,27 @@ State 51: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 490 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 434 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 52: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8655,7 +8641,7 @@ State 52: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - once_header ::= once_start LPAREN * expr + assign_stmt ::= lvalue IBXR * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8666,27 +8652,27 @@ State 52: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 494 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 439 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 53: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8780,7 +8766,7 @@ State 53: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBXR * expr + assign_stmt ::= lvalue IBOR * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8791,27 +8777,27 @@ State 53: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 375 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 440 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 54: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8905,7 +8891,7 @@ State 54: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBOR * expr + assign_stmt ::= lvalue IBND * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8916,27 +8902,27 @@ State 54: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 376 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 441 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 55: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9030,7 +9016,7 @@ State 55: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBND * expr + assign_stmt ::= lvalue IRSH * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9041,27 +9027,27 @@ State 55: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 377 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 442 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 56: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9155,7 +9141,7 @@ State 56: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IRSH * expr + assign_stmt ::= lvalue ILSH * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9166,27 +9152,27 @@ State 56: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 378 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 443 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 57: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9280,7 +9266,7 @@ State 57: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ILSH * expr + assign_stmt ::= lvalue IMOD * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9291,27 +9277,27 @@ State 57: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 379 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 444 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 58: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9405,7 +9391,7 @@ State 58: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IMOD * expr + assign_stmt ::= lvalue IDIV * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9416,27 +9402,27 @@ State 58: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 380 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 445 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 59: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9530,7 +9516,7 @@ State 59: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IDIV * expr + assign_stmt ::= lvalue IMUL * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9541,27 +9527,27 @@ State 59: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 381 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 446 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 60: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9655,7 +9641,7 @@ State 60: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IMUL * expr + assign_stmt ::= lvalue ISUB * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9666,27 +9652,27 @@ State 60: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 382 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 447 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 61: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9780,7 +9766,7 @@ State 61: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ISUB * expr + assign_stmt ::= lvalue IADD * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9791,27 +9777,27 @@ State 61: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 383 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 448 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 62: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9905,7 +9891,7 @@ State 62: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IADD * expr + assign_stmt ::= lvalue ASSIGN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9916,27 +9902,27 @@ State 62: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 384 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 451 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 63: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9966,6 +9952,7 @@ State 63: constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + nonConstExpr ::= nonConstExpr QMARK expr COLON * expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr @@ -10030,7 +10017,6 @@ State 63: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ASSIGN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -10041,27 +10027,27 @@ State 63: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 387 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 457 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 64: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10091,7 +10077,6 @@ State 64: constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - nonConstExpr ::= nonConstExpr QMARK expr COLON * expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr @@ -10122,6 +10107,7 @@ State 64: constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr + nonConstExpr ::= nonConstExpr BITXOR * expr constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr @@ -10166,27 +10152,27 @@ State 64: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 229 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 473 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 65: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10243,10 +10229,10 @@ State 65: constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr + nonConstExpr ::= nonConstExpr BITOR * expr constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr - nonConstExpr ::= nonConstExpr BITXOR * expr constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr @@ -10291,27 +10277,27 @@ State 65: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 270 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 474 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 66: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10365,10 +10351,10 @@ State 66: constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr + nonConstExpr ::= nonConstExpr BITAND * expr constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr - nonConstExpr ::= nonConstExpr BITOR * expr constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr @@ -10416,27 +10402,27 @@ State 66: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 271 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 475 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 67: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10487,10 +10473,10 @@ State 67: constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr + nonConstExpr ::= nonConstExpr RSHIFT * expr constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr - nonConstExpr ::= nonConstExpr BITAND * expr constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr @@ -10541,27 +10527,27 @@ State 67: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 272 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 476 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 68: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10609,10 +10595,10 @@ State 68: constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr + nonConstExpr ::= nonConstExpr LSHIFT * expr constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr - nonConstExpr ::= nonConstExpr RSHIFT * expr constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr @@ -10666,27 +10652,27 @@ State 68: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 273 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 477 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 69: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10731,10 +10717,10 @@ State 69: constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr + nonConstExpr ::= nonConstExpr MOD * expr constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr - nonConstExpr ::= nonConstExpr LSHIFT * expr constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr @@ -10791,27 +10777,27 @@ State 69: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 274 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 488 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 70: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10853,10 +10839,10 @@ State 70: constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr + nonConstExpr ::= nonConstExpr DIVIDE * expr constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr - nonConstExpr ::= nonConstExpr MOD * expr constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr @@ -10916,27 +10902,27 @@ State 70: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 276 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 489 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 71: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10975,10 +10961,10 @@ State 71: constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr + nonConstExpr ::= nonConstExpr MULTIPLY * expr constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr - nonConstExpr ::= nonConstExpr DIVIDE * expr constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr @@ -11041,27 +11027,27 @@ State 71: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 278 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 490 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 72: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11097,10 +11083,10 @@ State 72: constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr + nonConstExpr ::= nonConstExpr MINUS * expr constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr - nonConstExpr ::= nonConstExpr MULTIPLY * expr constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr @@ -11166,27 +11152,27 @@ State 72: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 280 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 491 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 73: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11219,10 +11205,10 @@ State 73: constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr + nonConstExpr ::= nonConstExpr PLUS * expr constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr - nonConstExpr ::= nonConstExpr MINUS * expr constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr @@ -11291,27 +11277,27 @@ State 73: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 282 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 492 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 74: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11333,6 +11319,7 @@ State 74: nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= L2V LPAREN * expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN @@ -11344,7 +11331,6 @@ State 74: constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr - nonConstExpr ::= nonConstExpr PLUS * expr constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr @@ -11416,30 +11402,31 @@ State 74: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 284 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 329 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 75: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -11456,9 +11443,9 @@ State 75: nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN + (112) commaSkippable ::= COMMA * constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - nonConstExpr ::= L2V LPAREN * expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN @@ -11541,27 +11528,28 @@ State 75: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 524 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 538 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 + {default} reduce 112 State 76: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11666,27 +11654,27 @@ State 76: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 498 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 301 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 77: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11792,27 +11780,27 @@ State 77: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 529 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 336 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 78: typedName ::= NAME COLON * expr @@ -11917,27 +11905,27 @@ State 78: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 390 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 532 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 79: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12042,27 +12030,27 @@ State 79: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 542 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 350 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 80: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12167,27 +12155,27 @@ State 80: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - expr shift 313 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 299 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + expr shift 538 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 182 lambdaExprStart shift 12 - logicExpr shift 295 + logicExpr shift 244 State 81: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12290,26 +12278,26 @@ State 81: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 341 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 181 lambdaExprStart shift 12 - logicExpr shift 235 + logicExpr shift 462 State 82: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12412,26 +12400,26 @@ State 82: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 341 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 181 lambdaExprStart shift 12 - logicExpr shift 230 + logicExpr shift 302 State 83: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12535,26 +12523,26 @@ State 83: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 338 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 160 lambdaExprStart shift 12 - logicExpr shift 389 + logicExpr shift 220 State 84: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12657,26 +12645,26 @@ State 84: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 307 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - LIST shift 506 - CONDITIONNAME shift 504 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 304 - constExpr shift 341 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 352 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + LIST shift 311 + CONDITIONNAME shift 309 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 158 + constExpr shift 181 lambdaExprStart shift 12 - logicExpr shift 226 + logicExpr shift 455 State 85: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12757,24 +12745,24 @@ State 85: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 343 - constExpr shift 340 + NAME shift 187 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 372 + lvalue shift 436 State 86: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12855,24 +12843,24 @@ State 86: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 343 - constExpr shift 340 + NAME shift 187 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 373 + lvalue shift 437 State 87: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12953,24 +12941,24 @@ State 87: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 343 - constExpr shift 340 + NAME shift 187 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 186 + constExpr shift 167 lambdaExprStart shift 12 - lvalue shift 421 + lvalue shift 438 State 88: case_start ::= * CASE @@ -12984,14 +12972,14 @@ State 88: switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * default_chunk (242) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * - RBRACKET reduce 242 - CASE shift 335 - DEFAULT shift 458 + CASE shift 423 + DEFAULT shift 264 case_start shift 36 - case_clause shift 14 - case_chunk shift 371 - default_clause shift 16 - default_chunk shift 457 + case_clause shift 16 + case_chunk shift 392 + default_clause shift 14 + default_chunk shift 390 + {default} reduce 242 State 89: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13069,22 +13057,22 @@ State 89: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 217 - constExpr shift 197 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 188 + constExpr shift 161 lambdaExprStart shift 12 State 90: @@ -13163,22 +13151,22 @@ State 90: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 218 - constExpr shift 198 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 189 + constExpr shift 162 lambdaExprStart shift 12 State 91: @@ -13257,22 +13245,22 @@ State 91: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 219 - constExpr shift 199 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 190 + constExpr shift 163 lambdaExprStart shift 12 State 92: @@ -13351,22 +13339,22 @@ State 92: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 220 - constExpr shift 200 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 191 + constExpr shift 164 lambdaExprStart shift 12 State 93: @@ -13445,22 +13433,22 @@ State 93: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 221 - constExpr shift 201 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 192 + constExpr shift 165 lambdaExprStart shift 12 State 94: @@ -13539,22 +13527,22 @@ State 94: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 222 - constExpr shift 202 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 193 + constExpr shift 166 lambdaExprStart shift 12 State 95: @@ -13633,22 +13621,22 @@ State 95: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 238 - constExpr shift 203 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 195 + constExpr shift 168 lambdaExprStart shift 12 State 96: @@ -13727,22 +13715,22 @@ State 96: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 239 - constExpr shift 204 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 196 + constExpr shift 169 lambdaExprStart shift 12 State 97: @@ -13821,22 +13809,22 @@ State 97: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 240 - constExpr shift 205 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 197 + constExpr shift 170 lambdaExprStart shift 12 State 98: @@ -13915,22 +13903,22 @@ State 98: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 241 - constExpr shift 206 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 198 + constExpr shift 171 lambdaExprStart shift 12 State 99: @@ -14009,22 +13997,22 @@ State 99: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 242 - constExpr shift 207 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 199 + constExpr shift 172 lambdaExprStart shift 12 State 100: @@ -14103,22 +14091,22 @@ State 100: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 243 - constExpr shift 208 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 200 + constExpr shift 173 lambdaExprStart shift 12 State 101: @@ -14197,22 +14185,22 @@ State 101: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 258 - constExpr shift 257 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 202 + constExpr shift 207 lambdaExprStart shift 12 State 102: @@ -14291,22 +14279,22 @@ State 102: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 260 - constExpr shift 259 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 201 + constExpr shift 205 lambdaExprStart shift 12 State 103: @@ -14385,22 +14373,22 @@ State 103: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 262 - constExpr shift 261 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 203 + constExpr shift 211 lambdaExprStart shift 12 State 104: @@ -14479,22 +14467,22 @@ State 104: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 264 - constExpr shift 263 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 208 + constExpr shift 216 lambdaExprStart shift 12 State 105: @@ -14573,22 +14561,22 @@ State 105: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 266 - constExpr shift 265 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 209 + constExpr shift 217 lambdaExprStart shift 12 State 106: @@ -14667,22 +14655,22 @@ State 106: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 268 - constExpr shift 267 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 224 + constExpr shift 471 lambdaExprStart shift 12 State 107: @@ -14761,22 +14749,22 @@ State 107: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 277 - constExpr shift 269 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 225 + constExpr shift 472 lambdaExprStart shift 12 State 108: @@ -14855,22 +14843,22 @@ State 108: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 279 - constExpr shift 236 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 226 + constExpr shift 463 lambdaExprStart shift 12 State 109: @@ -14949,22 +14937,22 @@ State 109: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 281 - constExpr shift 234 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 227 + constExpr shift 461 lambdaExprStart shift 12 State 110: @@ -15043,22 +15031,22 @@ State 110: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 283 - constExpr shift 233 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 228 + constExpr shift 460 lambdaExprStart shift 12 State 111: @@ -15137,22 +15125,22 @@ State 111: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 285 - constExpr shift 232 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 229 + constExpr shift 459 lambdaExprStart shift 12 State 112: @@ -15231,22 +15219,22 @@ State 112: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 296 - constExpr shift 228 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 212 + constExpr shift 221 lambdaExprStart shift 12 State 113: @@ -15325,22 +15313,22 @@ State 113: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 305 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - L2V shift 525 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - funcexpr shift 310 - nonConstExpr shift 298 - constExpr shift 224 + NAME shift 351 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + L2V shift 330 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + funcexpr shift 357 + nonConstExpr shift 213 + constExpr shift 219 lambdaExprStart shift 12 State 114: @@ -15354,90 +15342,14 @@ State 114: switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks (243) switchcase_block ::= switchcase_header RPAREN LBRACKET * - RBRACKET reduce 243 - CASE shift 335 + CASE shift 423 case_start shift 36 - case_clause shift 14 - case_chunk shift 370 + case_clause shift 16 + case_chunk shift 389 case_chunks shift 88 + {default} reduce 243 State 115: - elif_start ::= * ELSE IF - elif_header ::= * elif_start LPAREN expr - if_block ::= if_block * elif_header RPAREN stmt - else_header ::= * ELSE - (229) if_stmt ::= if_block * - if_stmt ::= if_block * else_header stmt - - $ reduce 229 - ELSE shift 324 - ELSE reduce 229 -- dropped by precedence - QMARK reduce 229 - COMMA reduce 229 - LOR reduce 229 - LAND reduce 229 - EQ reduce 229 - LE reduce 229 - LT reduce 229 - GE reduce 229 - GT reduce 229 - NE reduce 229 - BITOR reduce 229 - BITXOR reduce 229 - BITAND reduce 229 - LSHIFT reduce 229 - RSHIFT reduce 229 - PLUS reduce 229 - MINUS reduce 229 - DIVIDE reduce 229 - MULTIPLY reduce 229 - MOD reduce 229 - BITNOT reduce 229 - LPAREN reduce 229 - LSQBRACKET reduce 229 - PERIOD reduce 229 - SEMICOLON reduce 229 - IMPORT reduce 229 - NAME reduce 229 - COLON reduce 229 - FUNCTION reduce 229 - RPAREN reduce 229 - OBJECT reduce 229 - LBRACKET reduce 229 - VAR reduce 229 - RBRACKET reduce 229 - NUMBER reduce 229 - RSQBRACKET reduce 229 - KILLS reduce 229 - TRGCONST reduce 229 - L2V reduce 229 - MAPSTRING reduce 229 - UNIT reduce 229 - SWITCH reduce 229 - LOCATION reduce 229 - STATTXTTBL reduce 229 - VARRAY reduce 229 - STATIC reduce 229 - CONST reduce 229 - INC reduce 229 - DEC reduce 229 - ONCE reduce 229 - IF reduce 229 - SWITCHCASE reduce 229 - CASE reduce 229 - DEFAULT reduce 229 - WHILE reduce 229 - FOR reduce 229 - FOREACH reduce 229 - CONTINUE reduce 229 - BREAK reduce 229 - RETURN reduce 229 - ACTIONNAME reduce 229 - elif_start shift 487 - elif_header shift 485 - else_header shift 4 - -State 116: method_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes typedName ::= * NAME typedName ::= * NAME COLON expr @@ -15446,11 +15358,25 @@ State 116: (69) typedNameList ::= * typedNameList ::= * typedNameList_nonEmpty - NAME shift 363 - RPAREN reduce 69 - typedNameList shift 447 - typedNameList_nonEmpty shift 456 - typedName shift 369 + NAME shift 348 + typedNameList shift 254 + typedNameList_nonEmpty shift 385 + typedName shift 263 + {default} reduce 69 + +State 116: + elif_start ::= * ELSE IF + elif_header ::= * elif_start LPAREN expr + if_block ::= if_block * elif_header RPAREN stmt + else_header ::= * ELSE + (229) if_stmt ::= if_block * + if_stmt ::= if_block * else_header stmt + + ELSE shift 289 + elif_start shift 288 + elif_header shift 287 + else_header shift 3 + {default} reduce 229 State 117: typedName ::= * NAME @@ -15461,11 +15387,11 @@ State 117: typedNameList ::= * typedNameList_nonEmpty lambdaExprStart ::= FUNCTION LPAREN * typedNameList RPAREN fdef_rettypes - NAME shift 363 - RPAREN reduce 69 - typedNameList shift 455 - typedNameList_nonEmpty shift 456 - typedName shift 369 + NAME shift 348 + typedNameList shift 262 + typedNameList_nonEmpty shift 385 + typedName shift 263 + {default} reduce 69 State 118: fdef_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes @@ -15477,11 +15403,11 @@ State 118: (69) typedNameList ::= * typedNameList ::= * typedNameList_nonEmpty - NAME shift 363 - RPAREN reduce 69 - typedNameList shift 547 - typedNameList_nonEmpty shift 456 - typedName shift 369 + NAME shift 348 + typedNameList shift 359 + typedNameList_nonEmpty shift 385 + typedName shift 263 + {default} reduce 69 State 119: constExpr ::= * NUMBER @@ -15524,18 +15450,18 @@ State 119: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 244 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 465 lambdaExprStart shift 12 State 120: @@ -15579,18 +15505,18 @@ State 120: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 245 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 466 lambdaExprStart shift 12 State 121: @@ -15634,18 +15560,18 @@ State 121: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 246 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 467 lambdaExprStart shift 12 State 122: @@ -15689,18 +15615,18 @@ State 122: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 210 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 175 lambdaExprStart shift 12 State 123: @@ -15744,18 +15670,18 @@ State 123: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 211 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 176 lambdaExprStart shift 12 State 124: @@ -15799,18 +15725,18 @@ State 124: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 212 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 177 lambdaExprStart shift 12 State 125: @@ -15854,18 +15780,18 @@ State 125: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 213 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 178 lambdaExprStart shift 12 State 126: @@ -15909,18 +15835,18 @@ State 126: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 214 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 179 lambdaExprStart shift 12 State 127: @@ -15964,18 +15890,18 @@ State 127: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 247 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 206 lambdaExprStart shift 12 State 128: @@ -16019,18 +15945,18 @@ State 128: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 248 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 204 lambdaExprStart shift 12 State 129: @@ -16074,18 +16000,18 @@ State 129: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 249 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 210 lambdaExprStart shift 12 State 130: @@ -16129,18 +16055,18 @@ State 130: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 250 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 214 lambdaExprStart shift 12 State 131: @@ -16184,18 +16110,18 @@ State 131: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 251 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 215 lambdaExprStart shift 12 State 132: @@ -16239,18 +16165,18 @@ State 132: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 252 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 468 lambdaExprStart shift 12 State 133: @@ -16294,18 +16220,18 @@ State 133: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 253 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 469 lambdaExprStart shift 12 State 134: @@ -16349,18 +16275,18 @@ State 134: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 254 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 470 lambdaExprStart shift 12 State 135: @@ -16404,18 +16330,18 @@ State 135: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 255 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 222 lambdaExprStart shift 12 State 136: @@ -16459,18 +16385,18 @@ State 136: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 256 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 223 lambdaExprStart shift 12 State 137: @@ -16514,18 +16440,18 @@ State 137: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 337 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 159 lambdaExprStart shift 12 State 138: @@ -16569,18 +16495,18 @@ State 138: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 541 - NUMBER shift 308 - KILLS shift 300 - TRGCONST shift 306 - MAPSTRING shift 523 - UNIT shift 520 - SWITCH shift 517 - LOCATION shift 514 - STATTXTTBL shift 511 - VARRAY shift 508 - ACTIONNAME shift 503 - constExpr shift 209 + FUNCTION shift 349 + NUMBER shift 537 + KILLS shift 505 + TRGCONST shift 536 + MAPSTRING shift 328 + UNIT shift 325 + SWITCH shift 322 + LOCATION shift 319 + STATTXTTBL shift 316 + VARRAY shift 313 + ACTIONNAME shift 308 + constExpr shift 174 lambdaExprStart shift 12 State 139: @@ -16590,11 +16516,11 @@ State 139: object_body ::= object_body * method_chunk object_chunk ::= object_body * RBRACKET SEMICOLON - FUNCTION shift 449 + FUNCTION shift 256 VAR shift 140 - RBRACKET shift 446 - method_header shift 2 - method_chunk shift 365 + RBRACKET shift 253 + method_header shift 1 + method_chunk shift 372 State 140: object_body ::= object_body VAR * typedNameList_nonEmpty SEMICOLON @@ -16603,9 +16529,9 @@ State 140: typedNameList_nonEmpty ::= * typedName typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - NAME shift 363 - typedNameList_nonEmpty shift 450 - typedName shift 369 + NAME shift 348 + typedNameList_nonEmpty shift 257 + typedName shift 263 State 141: typedName ::= * NAME @@ -16614,301 +16540,140 @@ State 141: typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty typedNameList_nonEmpty ::= typedName COMMA * typedNameList_nonEmpty - NAME shift 363 - typedNameList_nonEmpty shift 402 - typedName shift 369 + NAME shift 348 + typedNameList_nonEmpty shift 386 + typedName shift 263 State 142: - constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON - constActionList ::= constActionList * constAction - actionStmt ::= constActionList * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - (279) actionStmt ::= constActionList * - - $ reduce 279 - ELSE reduce 279 - QMARK reduce 279 - COMMA reduce 279 - LOR reduce 279 - LAND reduce 279 - EQ reduce 279 - LE reduce 279 - LT reduce 279 - GE reduce 279 - GT reduce 279 - NE reduce 279 - BITOR reduce 279 - BITXOR reduce 279 - BITAND reduce 279 - LSHIFT reduce 279 - RSHIFT reduce 279 - PLUS reduce 279 - MINUS reduce 279 - DIVIDE reduce 279 - MULTIPLY reduce 279 - MOD reduce 279 - BITNOT reduce 279 - LPAREN reduce 279 - LSQBRACKET reduce 279 - PERIOD reduce 279 - SEMICOLON reduce 279 - IMPORT reduce 279 - NAME reduce 279 - COLON reduce 279 - FUNCTION reduce 279 - RPAREN reduce 279 - OBJECT reduce 279 - LBRACKET reduce 279 - VAR reduce 279 - RBRACKET reduce 279 - NUMBER reduce 279 - RSQBRACKET reduce 279 - KILLS reduce 279 - TRGCONST reduce 279 - L2V reduce 279 - MAPSTRING reduce 279 - UNIT reduce 279 - SWITCH reduce 279 - LOCATION reduce 279 - STATTXTTBL reduce 279 - VARRAY reduce 279 - STATIC reduce 279 - CONST reduce 279 - INC reduce 279 - DEC reduce 279 - ONCE reduce 279 - IF reduce 279 - SWITCHCASE reduce 279 - CASE reduce 279 - DEFAULT reduce 279 - WHILE reduce 279 - FOR reduce 279 - FOREACH reduce 279 - CONTINUE reduce 279 - BREAK reduce 279 - RETURN reduce 279 - ACTIONNAME shift 460 - ACTIONNAME reduce 279 -- dropped by precedence - constAction shift 159 - -State 143: (23) fdef_rettypes ::= * fdef_rettypes ::= * COLON exprList_nonEmpty - method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON - PLUS reduce 23 - MINUS reduce 23 - BITNOT reduce 23 - LPAREN reduce 23 - LSQBRACKET reduce 23 - SEMICOLON reduce 23 - NAME reduce 23 + SEMICOLON shift 378 COLON shift 44 - FUNCTION reduce 23 - LBRACKET reduce 23 - VAR reduce 23 - NUMBER reduce 23 - KILLS reduce 23 - TRGCONST reduce 23 - L2V reduce 23 - MAPSTRING reduce 23 - UNIT reduce 23 - SWITCH reduce 23 - LOCATION reduce 23 - STATTXTTBL reduce 23 - VARRAY reduce 23 - STATIC reduce 23 - CONST reduce 23 - INC reduce 23 - DEC reduce 23 - ONCE reduce 23 - IF reduce 23 - SWITCHCASE reduce 23 - WHILE reduce 23 - FOR reduce 23 - FOREACH reduce 23 - CONTINUE reduce 23 - BREAK reduce 23 - RETURN reduce 23 - ACTIONNAME reduce 23 - fdef_rettypes shift 321 + fdef_rettypes shift 379 + {default} reduce 23 + +State 143: + relimp_start ::= IMPORT * PERIOD + dottedName ::= * NAME + dottedName ::= * dottedName PERIOD NAME + import_chunk ::= IMPORT * dottedName AS NAME + import_chunk ::= IMPORT * dottedName + + PERIOD shift 548 + NAME shift 547 + dottedName shift 250 State 144: - (23) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + cdef_global_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - PLUS reduce 23 - MINUS reduce 23 - BITNOT reduce 23 - LPAREN reduce 23 - LSQBRACKET reduce 23 - SEMICOLON reduce 23 - NAME reduce 23 - COLON shift 44 - FUNCTION reduce 23 - LBRACKET reduce 23 - VAR reduce 23 - NUMBER reduce 23 - KILLS reduce 23 - TRGCONST reduce 23 - L2V reduce 23 - MAPSTRING reduce 23 - UNIT reduce 23 - SWITCH reduce 23 - LOCATION reduce 23 - STATTXTTBL reduce 23 - VARRAY reduce 23 - STATIC reduce 23 - CONST reduce 23 - INC reduce 23 - DEC reduce 23 - ONCE reduce 23 - IF reduce 23 - SWITCHCASE reduce 23 - WHILE reduce 23 - FOR reduce 23 - FOREACH reduce 23 - CONTINUE reduce 23 - BREAK reduce 23 - RETURN reduce 23 - ACTIONNAME reduce 23 - fdef_rettypes shift 323 + NAME shift 453 + nameList_nonEmpty shift 231 State 145: - (23) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + vdef_stmt ::= VAR * nameList_nonEmpty + vdefAssign_global_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - PLUS reduce 23 - MINUS reduce 23 - BITNOT reduce 23 - LPAREN reduce 23 - LSQBRACKET reduce 23 - SEMICOLON shift 346 - SEMICOLON reduce 23 -- dropped by precedence - NAME reduce 23 - COLON shift 44 - FUNCTION reduce 23 - LBRACKET reduce 23 - VAR reduce 23 - NUMBER reduce 23 - KILLS reduce 23 - TRGCONST reduce 23 - L2V reduce 23 - MAPSTRING reduce 23 - UNIT reduce 23 - SWITCH reduce 23 - LOCATION reduce 23 - STATTXTTBL reduce 23 - VARRAY reduce 23 - STATIC reduce 23 - CONST reduce 23 - INC reduce 23 - DEC reduce 23 - ONCE reduce 23 - IF reduce 23 - SWITCHCASE reduce 23 - WHILE reduce 23 - FOR reduce 23 - FOREACH reduce 23 - CONTINUE reduce 23 - BREAK reduce 23 - RETURN reduce 23 - ACTIONNAME reduce 23 - fdef_rettypes shift 322 + NAME shift 453 + nameList_nonEmpty shift 232 State 146: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (113) commaSkippable ::= * - logicExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN + (23) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes - COMMA shift 45 - RPAREN reduce 113 - commaSkippable shift 505 + COLON shift 44 + fdef_rettypes shift 374 + {default} reduce 23 State 147: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (113) commaSkippable ::= * - constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN + (23) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes - COMMA shift 45 - RPAREN reduce 113 - commaSkippable shift 507 + COLON shift 44 + fdef_rettypes shift 384 + {default} reduce 23 State 148: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (113) commaSkippable ::= * - constExpr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= constActionList * constAction + actionStmt ::= constActionList * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + (279) actionStmt ::= constActionList * - COMMA shift 45 - RSQBRACKET reduce 113 - commaSkippable shift 499 + ACTIONNAME shift 266 + constAction shift 393 + {default} reduce 279 State 149: - relimp_start ::= IMPORT * PERIOD - dottedName ::= * NAME - dottedName ::= * dottedName PERIOD NAME - import_chunk ::= IMPORT * dottedName AS NAME - import_chunk ::= IMPORT * dottedName + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + foreach_header ::= foreach_opener * nameList_nonEmpty COLON exprList_nonEmpty - PERIOD shift 445 - NAME shift 396 - dottedName shift 395 + NAME shift 453 + nameList_nonEmpty shift 237 State 150: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - cdef_global_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 398 + NAME shift 453 + nameList_nonEmpty shift 240 State 151: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdef_stmt ::= VAR * nameList_nonEmpty - vdefAssign_global_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + vdefAssignStatic_stmt ::= STATIC VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 364 + NAME shift 453 + nameList_nonEmpty shift 241 State 152: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - foreach_header ::= foreach_opener * nameList_nonEmpty COLON exprList_nonEmpty + vdef_stmt ::= VAR * nameList_nonEmpty + vdefAssign_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 409 + NAME shift 453 + nameList_nonEmpty shift 242 State 153: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - cdef_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (113) commaSkippable ::= * + logicExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN - NAME shift 361 - nameList_nonEmpty shift 424 + COMMA shift 75 + commaSkippable shift 310 + {default} reduce 113 State 154: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdefAssignStatic_stmt ::= STATIC VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (113) commaSkippable ::= * + constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN - NAME shift 361 - nameList_nonEmpty shift 426 + COMMA shift 75 + commaSkippable shift 312 + {default} reduce 113 State 155: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdef_stmt ::= VAR * nameList_nonEmpty - vdefAssign_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (113) commaSkippable ::= * + constExpr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET - NAME shift 361 - nameList_nonEmpty shift 388 + COMMA shift 75 + commaSkippable shift 303 + {default} reduce 113 State 156: numList_nonEmpty ::= * NUMBER @@ -16916,2630 +16681,107 @@ State 156: exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET * numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET - NUMBER shift 440 - numList_nonEmpty shift 439 + NUMBER shift 333 + numList_nonEmpty shift 243 State 157: rbracket ::= * RBRACKET blockStmt ::= blockStmtSub * rbracket - RBRACKET shift 194 - rbracket shift 193 + RBRACKET shift 528 + rbracket shift 527 State 158: - (230) if_stmt ::= if_block else_header stmt * + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + logicExpr ::= nonConstExpr * EQ constExpr + logicExpr ::= nonConstExpr * EQ nonConstExpr + logicExpr ::= nonConstExpr * NE constExpr + logicExpr ::= nonConstExpr * NE nonConstExpr + logicExpr ::= nonConstExpr * LE constExpr + logicExpr ::= nonConstExpr * LE nonConstExpr + logicExpr ::= nonConstExpr * GE constExpr + logicExpr ::= nonConstExpr * GE nonConstExpr + logicExpr ::= nonConstExpr * LT constExpr + logicExpr ::= nonConstExpr * LT nonConstExpr + logicExpr ::= nonConstExpr * GT constExpr + logicExpr ::= nonConstExpr * GT nonConstExpr + (184) logicExpr ::= nonConstExpr * - $ reduce 230 - ELSE reduce 230 - QMARK reduce 230 - COMMA reduce 230 - LOR reduce 230 - LAND reduce 230 - EQ reduce 230 - LE reduce 230 - LT reduce 230 - GE reduce 230 - GT reduce 230 - NE reduce 230 - BITOR reduce 230 - BITXOR reduce 230 - BITAND reduce 230 - LSHIFT reduce 230 - RSHIFT reduce 230 - PLUS reduce 230 - MINUS reduce 230 - DIVIDE reduce 230 - MULTIPLY reduce 230 - MOD reduce 230 - BITNOT reduce 230 - LPAREN reduce 230 - LSQBRACKET reduce 230 - PERIOD reduce 230 - SEMICOLON reduce 230 - IMPORT reduce 230 - NAME reduce 230 - COLON reduce 230 - FUNCTION reduce 230 - RPAREN reduce 230 - OBJECT reduce 230 - LBRACKET reduce 230 - VAR reduce 230 - RBRACKET reduce 230 - NUMBER reduce 230 - RSQBRACKET reduce 230 - KILLS reduce 230 - TRGCONST reduce 230 - L2V reduce 230 - MAPSTRING reduce 230 - UNIT reduce 230 - SWITCH reduce 230 - LOCATION reduce 230 - STATTXTTBL reduce 230 - VARRAY reduce 230 - STATIC reduce 230 - CONST reduce 230 - INC reduce 230 - DEC reduce 230 - ONCE reduce 230 - IF reduce 230 - SWITCHCASE reduce 230 - CASE reduce 230 - DEFAULT reduce 230 - WHILE reduce 230 - FOR reduce 230 - FOREACH reduce 230 - CONTINUE reduce 230 - BREAK reduce 230 - RETURN reduce 230 - ACTIONNAME reduce 230 + QMARK shift 76 + EQ shift 94 + LE shift 92 + LT shift 90 + GE shift 91 + GT shift 89 + NE shift 93 + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 184 State 159: - (277) constActionList ::= constActionList constAction * - - $ reduce 277 - ELSE reduce 277 - QMARK reduce 277 - COMMA reduce 277 - LOR reduce 277 - LAND reduce 277 - EQ reduce 277 - LE reduce 277 - LT reduce 277 - GE reduce 277 - GT reduce 277 - NE reduce 277 - BITOR reduce 277 - BITXOR reduce 277 - BITAND reduce 277 - LSHIFT reduce 277 - RSHIFT reduce 277 - PLUS reduce 277 - MINUS reduce 277 - DIVIDE reduce 277 - MULTIPLY reduce 277 - MOD reduce 277 - BITNOT reduce 277 - LPAREN reduce 277 - LSQBRACKET reduce 277 - PERIOD reduce 277 - SEMICOLON reduce 277 - IMPORT reduce 277 - NAME reduce 277 - COLON reduce 277 - FUNCTION reduce 277 - RPAREN reduce 277 - OBJECT reduce 277 - LBRACKET reduce 277 - VAR reduce 277 - RBRACKET reduce 277 - NUMBER reduce 277 - RSQBRACKET reduce 277 - KILLS reduce 277 - TRGCONST reduce 277 - L2V reduce 277 - MAPSTRING reduce 277 - UNIT reduce 277 - SWITCH reduce 277 - LOCATION reduce 277 - STATTXTTBL reduce 277 - VARRAY reduce 277 - STATIC reduce 277 - CONST reduce 277 - INC reduce 277 - DEC reduce 277 - ONCE reduce 277 - IF reduce 277 - SWITCHCASE reduce 277 - CASE reduce 277 - DEFAULT reduce 277 - WHILE reduce 277 - FOR reduce 277 - FOREACH reduce 277 - CONTINUE reduce 277 - BREAK reduce 277 - RETURN reduce 277 - ACTIONNAME reduce 277 - -State 160: - (278) actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * - - $ reduce 278 - ELSE reduce 278 - QMARK reduce 278 - COMMA reduce 278 - LOR reduce 278 - LAND reduce 278 - EQ reduce 278 - LE reduce 278 - LT reduce 278 - GE reduce 278 - GT reduce 278 - NE reduce 278 - BITOR reduce 278 - BITXOR reduce 278 - BITAND reduce 278 - LSHIFT reduce 278 - RSHIFT reduce 278 - PLUS reduce 278 - MINUS reduce 278 - DIVIDE reduce 278 - MULTIPLY reduce 278 - MOD reduce 278 - BITNOT reduce 278 - LPAREN reduce 278 - LSQBRACKET reduce 278 - PERIOD reduce 278 - SEMICOLON reduce 278 - IMPORT reduce 278 - NAME reduce 278 - COLON reduce 278 - FUNCTION reduce 278 - RPAREN reduce 278 - OBJECT reduce 278 - LBRACKET reduce 278 - VAR reduce 278 - RBRACKET reduce 278 - NUMBER reduce 278 - RSQBRACKET reduce 278 - KILLS reduce 278 - TRGCONST reduce 278 - L2V reduce 278 - MAPSTRING reduce 278 - UNIT reduce 278 - SWITCH reduce 278 - LOCATION reduce 278 - STATTXTTBL reduce 278 - VARRAY reduce 278 - STATIC reduce 278 - CONST reduce 278 - INC reduce 278 - DEC reduce 278 - ONCE reduce 278 - IF reduce 278 - SWITCHCASE reduce 278 - CASE reduce 278 - DEFAULT reduce 278 - WHILE reduce 278 - FOR reduce 278 - FOREACH reduce 278 - CONTINUE reduce 278 - BREAK reduce 278 - RETURN reduce 278 - ACTIONNAME reduce 278 - -State 161: - (276) constActionList ::= constAction * - - $ reduce 276 - ELSE reduce 276 - QMARK reduce 276 - COMMA reduce 276 - LOR reduce 276 - LAND reduce 276 - EQ reduce 276 - LE reduce 276 - LT reduce 276 - GE reduce 276 - GT reduce 276 - NE reduce 276 - BITOR reduce 276 - BITXOR reduce 276 - BITAND reduce 276 - LSHIFT reduce 276 - RSHIFT reduce 276 - PLUS reduce 276 - MINUS reduce 276 - DIVIDE reduce 276 - MULTIPLY reduce 276 - MOD reduce 276 - BITNOT reduce 276 - LPAREN reduce 276 - LSQBRACKET reduce 276 - PERIOD reduce 276 - SEMICOLON reduce 276 - IMPORT reduce 276 - NAME reduce 276 - COLON reduce 276 - FUNCTION reduce 276 - RPAREN reduce 276 - OBJECT reduce 276 - LBRACKET reduce 276 - VAR reduce 276 - RBRACKET reduce 276 - NUMBER reduce 276 - RSQBRACKET reduce 276 - KILLS reduce 276 - TRGCONST reduce 276 - L2V reduce 276 - MAPSTRING reduce 276 - UNIT reduce 276 - SWITCH reduce 276 - LOCATION reduce 276 - STATTXTTBL reduce 276 - VARRAY reduce 276 - STATIC reduce 276 - CONST reduce 276 - INC reduce 276 - DEC reduce 276 - ONCE reduce 276 - IF reduce 276 - SWITCHCASE reduce 276 - CASE reduce 276 - DEFAULT reduce 276 - WHILE reduce 276 - FOR reduce 276 - FOREACH reduce 276 - CONTINUE reduce 276 - BREAK reduce 276 - RETURN reduce 276 - ACTIONNAME reduce 276 - -State 162: - (275) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * - - $ reduce 275 - ELSE reduce 275 - QMARK reduce 275 - COMMA reduce 275 - LOR reduce 275 - LAND reduce 275 - EQ reduce 275 - LE reduce 275 - LT reduce 275 - GE reduce 275 - GT reduce 275 - NE reduce 275 - BITOR reduce 275 - BITXOR reduce 275 - BITAND reduce 275 - LSHIFT reduce 275 - RSHIFT reduce 275 - PLUS reduce 275 - MINUS reduce 275 - DIVIDE reduce 275 - MULTIPLY reduce 275 - MOD reduce 275 - BITNOT reduce 275 - LPAREN reduce 275 - LSQBRACKET reduce 275 - PERIOD reduce 275 - SEMICOLON reduce 275 - IMPORT reduce 275 - NAME reduce 275 - COLON reduce 275 - FUNCTION reduce 275 - RPAREN reduce 275 - OBJECT reduce 275 - LBRACKET reduce 275 - VAR reduce 275 - RBRACKET reduce 275 - NUMBER reduce 275 - RSQBRACKET reduce 275 - KILLS reduce 275 - TRGCONST reduce 275 - L2V reduce 275 - MAPSTRING reduce 275 - UNIT reduce 275 - SWITCH reduce 275 - LOCATION reduce 275 - STATTXTTBL reduce 275 - VARRAY reduce 275 - STATIC reduce 275 - CONST reduce 275 - INC reduce 275 - DEC reduce 275 - ONCE reduce 275 - IF reduce 275 - SWITCHCASE reduce 275 - CASE reduce 275 - DEFAULT reduce 275 - WHILE reduce 275 - FOR reduce 275 - FOREACH reduce 275 - CONTINUE reduce 275 - BREAK reduce 275 - RETURN reduce 275 - ACTIONNAME reduce 275 - -State 163: - (273) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * - - $ reduce 273 - ELSE reduce 273 - QMARK reduce 273 - COMMA reduce 273 - LOR reduce 273 - LAND reduce 273 - EQ reduce 273 - LE reduce 273 - LT reduce 273 - GE reduce 273 - GT reduce 273 - NE reduce 273 - BITOR reduce 273 - BITXOR reduce 273 - BITAND reduce 273 - LSHIFT reduce 273 - RSHIFT reduce 273 - PLUS reduce 273 - MINUS reduce 273 - DIVIDE reduce 273 - MULTIPLY reduce 273 - MOD reduce 273 - BITNOT reduce 273 - LPAREN reduce 273 - LSQBRACKET reduce 273 - PERIOD reduce 273 - SEMICOLON reduce 273 - IMPORT reduce 273 - NAME reduce 273 - COLON reduce 273 - FUNCTION reduce 273 - RPAREN reduce 273 - OBJECT reduce 273 - LBRACKET reduce 273 - VAR reduce 273 - RBRACKET reduce 273 - NUMBER reduce 273 - RSQBRACKET reduce 273 - KILLS reduce 273 - TRGCONST reduce 273 - L2V reduce 273 - MAPSTRING reduce 273 - UNIT reduce 273 - SWITCH reduce 273 - LOCATION reduce 273 - STATTXTTBL reduce 273 - VARRAY reduce 273 - STATIC reduce 273 - CONST reduce 273 - INC reduce 273 - DEC reduce 273 - ONCE reduce 273 - IF reduce 273 - SWITCHCASE reduce 273 - CASE reduce 273 - DEFAULT reduce 273 - WHILE reduce 273 - FOR reduce 273 - FOREACH reduce 273 - CONTINUE reduce 273 - BREAK reduce 273 - RETURN reduce 273 - ACTIONNAME reduce 273 - -State 164: - (274) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * - - $ reduce 274 - ELSE reduce 274 - QMARK reduce 274 - COMMA reduce 274 - LOR reduce 274 - LAND reduce 274 - EQ reduce 274 - LE reduce 274 - LT reduce 274 - GE reduce 274 - GT reduce 274 - NE reduce 274 - BITOR reduce 274 - BITXOR reduce 274 - BITAND reduce 274 - LSHIFT reduce 274 - RSHIFT reduce 274 - PLUS reduce 274 - MINUS reduce 274 - DIVIDE reduce 274 - MULTIPLY reduce 274 - MOD reduce 274 - BITNOT reduce 274 - LPAREN reduce 274 - LSQBRACKET reduce 274 - PERIOD reduce 274 - SEMICOLON reduce 274 - IMPORT reduce 274 - NAME reduce 274 - COLON reduce 274 - FUNCTION reduce 274 - RPAREN reduce 274 - OBJECT reduce 274 - LBRACKET reduce 274 - VAR reduce 274 - RBRACKET reduce 274 - NUMBER reduce 274 - RSQBRACKET reduce 274 - KILLS reduce 274 - TRGCONST reduce 274 - L2V reduce 274 - MAPSTRING reduce 274 - UNIT reduce 274 - SWITCH reduce 274 - LOCATION reduce 274 - STATTXTTBL reduce 274 - VARRAY reduce 274 - STATIC reduce 274 - CONST reduce 274 - INC reduce 274 - DEC reduce 274 - ONCE reduce 274 - IF reduce 274 - SWITCHCASE reduce 274 - CASE reduce 274 - DEFAULT reduce 274 - WHILE reduce 274 - FOR reduce 274 - FOREACH reduce 274 - CONTINUE reduce 274 - BREAK reduce 274 - RETURN reduce 274 - ACTIONNAME reduce 274 - -State 165: - (267) foreach_stmt ::= foreach_header RPAREN stmt * - - $ reduce 267 - ELSE reduce 267 - QMARK reduce 267 - COMMA reduce 267 - LOR reduce 267 - LAND reduce 267 - EQ reduce 267 - LE reduce 267 - LT reduce 267 - GE reduce 267 - GT reduce 267 - NE reduce 267 - BITOR reduce 267 - BITXOR reduce 267 - BITAND reduce 267 - LSHIFT reduce 267 - RSHIFT reduce 267 - PLUS reduce 267 - MINUS reduce 267 - DIVIDE reduce 267 - MULTIPLY reduce 267 - MOD reduce 267 - BITNOT reduce 267 - LPAREN reduce 267 - LSQBRACKET reduce 267 - PERIOD reduce 267 - SEMICOLON reduce 267 - IMPORT reduce 267 - NAME reduce 267 - COLON reduce 267 - FUNCTION reduce 267 - RPAREN reduce 267 - OBJECT reduce 267 - LBRACKET reduce 267 - VAR reduce 267 - RBRACKET reduce 267 - NUMBER reduce 267 - RSQBRACKET reduce 267 - KILLS reduce 267 - TRGCONST reduce 267 - L2V reduce 267 - MAPSTRING reduce 267 - UNIT reduce 267 - SWITCH reduce 267 - LOCATION reduce 267 - STATTXTTBL reduce 267 - VARRAY reduce 267 - STATIC reduce 267 - CONST reduce 267 - INC reduce 267 - DEC reduce 267 - ONCE reduce 267 - IF reduce 267 - SWITCHCASE reduce 267 - CASE reduce 267 - DEFAULT reduce 267 - WHILE reduce 267 - FOR reduce 267 - FOREACH reduce 267 - CONTINUE reduce 267 - BREAK reduce 267 - RETURN reduce 267 - ACTIONNAME reduce 267 - -State 166: - (264) for_stmt ::= for_header RPAREN stmt * - - $ reduce 264 - ELSE reduce 264 - QMARK reduce 264 - COMMA reduce 264 - LOR reduce 264 - LAND reduce 264 - EQ reduce 264 - LE reduce 264 - LT reduce 264 - GE reduce 264 - GT reduce 264 - NE reduce 264 - BITOR reduce 264 - BITXOR reduce 264 - BITAND reduce 264 - LSHIFT reduce 264 - RSHIFT reduce 264 - PLUS reduce 264 - MINUS reduce 264 - DIVIDE reduce 264 - MULTIPLY reduce 264 - MOD reduce 264 - BITNOT reduce 264 - LPAREN reduce 264 - LSQBRACKET reduce 264 - PERIOD reduce 264 - SEMICOLON reduce 264 - IMPORT reduce 264 - NAME reduce 264 - COLON reduce 264 - FUNCTION reduce 264 - RPAREN reduce 264 - OBJECT reduce 264 - LBRACKET reduce 264 - VAR reduce 264 - RBRACKET reduce 264 - NUMBER reduce 264 - RSQBRACKET reduce 264 - KILLS reduce 264 - TRGCONST reduce 264 - L2V reduce 264 - MAPSTRING reduce 264 - UNIT reduce 264 - SWITCH reduce 264 - LOCATION reduce 264 - STATTXTTBL reduce 264 - VARRAY reduce 264 - STATIC reduce 264 - CONST reduce 264 - INC reduce 264 - DEC reduce 264 - ONCE reduce 264 - IF reduce 264 - SWITCHCASE reduce 264 - CASE reduce 264 - DEFAULT reduce 264 - WHILE reduce 264 - FOR reduce 264 - FOREACH reduce 264 - CONTINUE reduce 264 - BREAK reduce 264 - RETURN reduce 264 - ACTIONNAME reduce 264 - -State 167: - (247) while_stmt ::= while_header RPAREN stmt * - - $ reduce 247 - ELSE reduce 247 - QMARK reduce 247 - COMMA reduce 247 - LOR reduce 247 - LAND reduce 247 - EQ reduce 247 - LE reduce 247 - LT reduce 247 - GE reduce 247 - GT reduce 247 - NE reduce 247 - BITOR reduce 247 - BITXOR reduce 247 - BITAND reduce 247 - LSHIFT reduce 247 - RSHIFT reduce 247 - PLUS reduce 247 - MINUS reduce 247 - DIVIDE reduce 247 - MULTIPLY reduce 247 - MOD reduce 247 - BITNOT reduce 247 - LPAREN reduce 247 - LSQBRACKET reduce 247 - PERIOD reduce 247 - SEMICOLON reduce 247 - IMPORT reduce 247 - NAME reduce 247 - COLON reduce 247 - FUNCTION reduce 247 - RPAREN reduce 247 - OBJECT reduce 247 - LBRACKET reduce 247 - VAR reduce 247 - RBRACKET reduce 247 - NUMBER reduce 247 - RSQBRACKET reduce 247 - KILLS reduce 247 - TRGCONST reduce 247 - L2V reduce 247 - MAPSTRING reduce 247 - UNIT reduce 247 - SWITCH reduce 247 - LOCATION reduce 247 - STATTXTTBL reduce 247 - VARRAY reduce 247 - STATIC reduce 247 - CONST reduce 247 - INC reduce 247 - DEC reduce 247 - ONCE reduce 247 - IF reduce 247 - SWITCHCASE reduce 247 - CASE reduce 247 - DEFAULT reduce 247 - WHILE reduce 247 - FOR reduce 247 - FOREACH reduce 247 - CONTINUE reduce 247 - BREAK reduce 247 - RETURN reduce 247 - ACTIONNAME reduce 247 - -State 168: - (244) switchcase_stmt ::= switchcase_block RBRACKET * - - $ reduce 244 - ELSE reduce 244 - QMARK reduce 244 - COMMA reduce 244 - LOR reduce 244 - LAND reduce 244 - EQ reduce 244 - LE reduce 244 - LT reduce 244 - GE reduce 244 - GT reduce 244 - NE reduce 244 - BITOR reduce 244 - BITXOR reduce 244 - BITAND reduce 244 - LSHIFT reduce 244 - RSHIFT reduce 244 - PLUS reduce 244 - MINUS reduce 244 - DIVIDE reduce 244 - MULTIPLY reduce 244 - MOD reduce 244 - BITNOT reduce 244 - LPAREN reduce 244 - LSQBRACKET reduce 244 - PERIOD reduce 244 - SEMICOLON reduce 244 - IMPORT reduce 244 - NAME reduce 244 - COLON reduce 244 - FUNCTION reduce 244 - RPAREN reduce 244 - OBJECT reduce 244 - LBRACKET reduce 244 - VAR reduce 244 - RBRACKET reduce 244 - NUMBER reduce 244 - RSQBRACKET reduce 244 - KILLS reduce 244 - TRGCONST reduce 244 - L2V reduce 244 - MAPSTRING reduce 244 - UNIT reduce 244 - SWITCH reduce 244 - LOCATION reduce 244 - STATTXTTBL reduce 244 - VARRAY reduce 244 - STATIC reduce 244 - CONST reduce 244 - INC reduce 244 - DEC reduce 244 - ONCE reduce 244 - IF reduce 244 - SWITCHCASE reduce 244 - CASE reduce 244 - DEFAULT reduce 244 - WHILE reduce 244 - FOR reduce 244 - FOREACH reduce 244 - CONTINUE reduce 244 - BREAK reduce 244 - RETURN reduce 244 - ACTIONNAME reduce 244 - -State 169: - (227) if_block ::= if_block elif_header RPAREN stmt * - - $ reduce 227 - ELSE reduce 227 - QMARK reduce 227 - COMMA reduce 227 - LOR reduce 227 - LAND reduce 227 - EQ reduce 227 - LE reduce 227 - LT reduce 227 - GE reduce 227 - GT reduce 227 - NE reduce 227 - BITOR reduce 227 - BITXOR reduce 227 - BITAND reduce 227 - LSHIFT reduce 227 - RSHIFT reduce 227 - PLUS reduce 227 - MINUS reduce 227 - DIVIDE reduce 227 - MULTIPLY reduce 227 - MOD reduce 227 - BITNOT reduce 227 - LPAREN reduce 227 - LSQBRACKET reduce 227 - PERIOD reduce 227 - SEMICOLON reduce 227 - IMPORT reduce 227 - NAME reduce 227 - COLON reduce 227 - FUNCTION reduce 227 - RPAREN reduce 227 - OBJECT reduce 227 - LBRACKET reduce 227 - VAR reduce 227 - RBRACKET reduce 227 - NUMBER reduce 227 - RSQBRACKET reduce 227 - KILLS reduce 227 - TRGCONST reduce 227 - L2V reduce 227 - MAPSTRING reduce 227 - UNIT reduce 227 - SWITCH reduce 227 - LOCATION reduce 227 - STATTXTTBL reduce 227 - VARRAY reduce 227 - STATIC reduce 227 - CONST reduce 227 - INC reduce 227 - DEC reduce 227 - ONCE reduce 227 - IF reduce 227 - SWITCHCASE reduce 227 - CASE reduce 227 - DEFAULT reduce 227 - WHILE reduce 227 - FOR reduce 227 - FOREACH reduce 227 - CONTINUE reduce 227 - BREAK reduce 227 - RETURN reduce 227 - ACTIONNAME reduce 227 - -State 170: - (224) if_block ::= if_header RPAREN stmt * - - $ reduce 224 - ELSE reduce 224 - QMARK reduce 224 - COMMA reduce 224 - LOR reduce 224 - LAND reduce 224 - EQ reduce 224 - LE reduce 224 - LT reduce 224 - GE reduce 224 - GT reduce 224 - NE reduce 224 - BITOR reduce 224 - BITXOR reduce 224 - BITAND reduce 224 - LSHIFT reduce 224 - RSHIFT reduce 224 - PLUS reduce 224 - MINUS reduce 224 - DIVIDE reduce 224 - MULTIPLY reduce 224 - MOD reduce 224 - BITNOT reduce 224 - LPAREN reduce 224 - LSQBRACKET reduce 224 - PERIOD reduce 224 - SEMICOLON reduce 224 - IMPORT reduce 224 - NAME reduce 224 - COLON reduce 224 - FUNCTION reduce 224 - RPAREN reduce 224 - OBJECT reduce 224 - LBRACKET reduce 224 - VAR reduce 224 - RBRACKET reduce 224 - NUMBER reduce 224 - RSQBRACKET reduce 224 - KILLS reduce 224 - TRGCONST reduce 224 - L2V reduce 224 - MAPSTRING reduce 224 - UNIT reduce 224 - SWITCH reduce 224 - LOCATION reduce 224 - STATTXTTBL reduce 224 - VARRAY reduce 224 - STATIC reduce 224 - CONST reduce 224 - INC reduce 224 - DEC reduce 224 - ONCE reduce 224 - IF reduce 224 - SWITCHCASE reduce 224 - CASE reduce 224 - DEFAULT reduce 224 - WHILE reduce 224 - FOR reduce 224 - FOREACH reduce 224 - CONTINUE reduce 224 - BREAK reduce 224 - RETURN reduce 224 - ACTIONNAME reduce 224 - -State 171: - (221) once_stmt ::= once_block * - - $ reduce 221 - ELSE reduce 221 - QMARK reduce 221 - COMMA reduce 221 - LOR reduce 221 - LAND reduce 221 - EQ reduce 221 - LE reduce 221 - LT reduce 221 - GE reduce 221 - GT reduce 221 - NE reduce 221 - BITOR reduce 221 - BITXOR reduce 221 - BITAND reduce 221 - LSHIFT reduce 221 - RSHIFT reduce 221 - PLUS reduce 221 - MINUS reduce 221 - DIVIDE reduce 221 - MULTIPLY reduce 221 - MOD reduce 221 - BITNOT reduce 221 - LPAREN reduce 221 - LSQBRACKET reduce 221 - PERIOD reduce 221 - SEMICOLON reduce 221 - IMPORT reduce 221 - NAME reduce 221 - COLON reduce 221 - FUNCTION reduce 221 - RPAREN reduce 221 - OBJECT reduce 221 - LBRACKET reduce 221 - VAR reduce 221 - RBRACKET reduce 221 - NUMBER reduce 221 - RSQBRACKET reduce 221 - KILLS reduce 221 - TRGCONST reduce 221 - L2V reduce 221 - MAPSTRING reduce 221 - UNIT reduce 221 - SWITCH reduce 221 - LOCATION reduce 221 - STATTXTTBL reduce 221 - VARRAY reduce 221 - STATIC reduce 221 - CONST reduce 221 - INC reduce 221 - DEC reduce 221 - ONCE reduce 221 - IF reduce 221 - SWITCHCASE reduce 221 - CASE reduce 221 - DEFAULT reduce 221 - WHILE reduce 221 - FOR reduce 221 - FOREACH reduce 221 - CONTINUE reduce 221 - BREAK reduce 221 - RETURN reduce 221 - ACTIONNAME reduce 221 - -State 172: - (220) once_block ::= once_nocond stmt * - - $ reduce 220 - ELSE reduce 220 - QMARK reduce 220 - COMMA reduce 220 - LOR reduce 220 - LAND reduce 220 - EQ reduce 220 - LE reduce 220 - LT reduce 220 - GE reduce 220 - GT reduce 220 - NE reduce 220 - BITOR reduce 220 - BITXOR reduce 220 - BITAND reduce 220 - LSHIFT reduce 220 - RSHIFT reduce 220 - PLUS reduce 220 - MINUS reduce 220 - DIVIDE reduce 220 - MULTIPLY reduce 220 - MOD reduce 220 - BITNOT reduce 220 - LPAREN reduce 220 - LSQBRACKET reduce 220 - PERIOD reduce 220 - SEMICOLON reduce 220 - IMPORT reduce 220 - NAME reduce 220 - COLON reduce 220 - FUNCTION reduce 220 - RPAREN reduce 220 - OBJECT reduce 220 - LBRACKET reduce 220 - VAR reduce 220 - RBRACKET reduce 220 - NUMBER reduce 220 - RSQBRACKET reduce 220 - KILLS reduce 220 - TRGCONST reduce 220 - L2V reduce 220 - MAPSTRING reduce 220 - UNIT reduce 220 - SWITCH reduce 220 - LOCATION reduce 220 - STATTXTTBL reduce 220 - VARRAY reduce 220 - STATIC reduce 220 - CONST reduce 220 - INC reduce 220 - DEC reduce 220 - ONCE reduce 220 - IF reduce 220 - SWITCHCASE reduce 220 - CASE reduce 220 - DEFAULT reduce 220 - WHILE reduce 220 - FOR reduce 220 - FOREACH reduce 220 - CONTINUE reduce 220 - BREAK reduce 220 - RETURN reduce 220 - ACTIONNAME reduce 220 - -State 173: - (218) once_block ::= once_header RPAREN stmt * - - $ reduce 218 - ELSE reduce 218 - QMARK reduce 218 - COMMA reduce 218 - LOR reduce 218 - LAND reduce 218 - EQ reduce 218 - LE reduce 218 - LT reduce 218 - GE reduce 218 - GT reduce 218 - NE reduce 218 - BITOR reduce 218 - BITXOR reduce 218 - BITAND reduce 218 - LSHIFT reduce 218 - RSHIFT reduce 218 - PLUS reduce 218 - MINUS reduce 218 - DIVIDE reduce 218 - MULTIPLY reduce 218 - MOD reduce 218 - BITNOT reduce 218 - LPAREN reduce 218 - LSQBRACKET reduce 218 - PERIOD reduce 218 - SEMICOLON reduce 218 - IMPORT reduce 218 - NAME reduce 218 - COLON reduce 218 - FUNCTION reduce 218 - RPAREN reduce 218 - OBJECT reduce 218 - LBRACKET reduce 218 - VAR reduce 218 - RBRACKET reduce 218 - NUMBER reduce 218 - RSQBRACKET reduce 218 - KILLS reduce 218 - TRGCONST reduce 218 - L2V reduce 218 - MAPSTRING reduce 218 - UNIT reduce 218 - SWITCH reduce 218 - LOCATION reduce 218 - STATTXTTBL reduce 218 - VARRAY reduce 218 - STATIC reduce 218 - CONST reduce 218 - INC reduce 218 - DEC reduce 218 - ONCE reduce 218 - IF reduce 218 - SWITCHCASE reduce 218 - CASE reduce 218 - DEFAULT reduce 218 - WHILE reduce 218 - FOR reduce 218 - FOREACH reduce 218 - CONTINUE reduce 218 - BREAK reduce 218 - RETURN reduce 218 - ACTIONNAME reduce 218 - -State 174: - (59) bodyStmt ::= return_stmt SEMICOLON * - - $ reduce 59 - ELSE reduce 59 - QMARK reduce 59 - COMMA reduce 59 - LOR reduce 59 - LAND reduce 59 - EQ reduce 59 - LE reduce 59 - LT reduce 59 - GE reduce 59 - GT reduce 59 - NE reduce 59 - BITOR reduce 59 - BITXOR reduce 59 - BITAND reduce 59 - LSHIFT reduce 59 - RSHIFT reduce 59 - PLUS reduce 59 - MINUS reduce 59 - DIVIDE reduce 59 - MULTIPLY reduce 59 - MOD reduce 59 - BITNOT reduce 59 - LPAREN reduce 59 - LSQBRACKET reduce 59 - PERIOD reduce 59 - SEMICOLON reduce 59 - IMPORT reduce 59 - NAME reduce 59 - COLON reduce 59 - FUNCTION reduce 59 - RPAREN reduce 59 - OBJECT reduce 59 - LBRACKET reduce 59 - VAR reduce 59 - RBRACKET reduce 59 - NUMBER reduce 59 - RSQBRACKET reduce 59 - KILLS reduce 59 - TRGCONST reduce 59 - L2V reduce 59 - MAPSTRING reduce 59 - UNIT reduce 59 - SWITCH reduce 59 - LOCATION reduce 59 - STATTXTTBL reduce 59 - VARRAY reduce 59 - STATIC reduce 59 - CONST reduce 59 - INC reduce 59 - DEC reduce 59 - ONCE reduce 59 - IF reduce 59 - SWITCHCASE reduce 59 - CASE reduce 59 - DEFAULT reduce 59 - WHILE reduce 59 - FOR reduce 59 - FOREACH reduce 59 - CONTINUE reduce 59 - BREAK reduce 59 - RETURN reduce 59 - ACTIONNAME reduce 59 - -State 175: - (58) bodyStmt ::= break_stmt SEMICOLON * - - $ reduce 58 - ELSE reduce 58 - QMARK reduce 58 - COMMA reduce 58 - LOR reduce 58 - LAND reduce 58 - EQ reduce 58 - LE reduce 58 - LT reduce 58 - GE reduce 58 - GT reduce 58 - NE reduce 58 - BITOR reduce 58 - BITXOR reduce 58 - BITAND reduce 58 - LSHIFT reduce 58 - RSHIFT reduce 58 - PLUS reduce 58 - MINUS reduce 58 - DIVIDE reduce 58 - MULTIPLY reduce 58 - MOD reduce 58 - BITNOT reduce 58 - LPAREN reduce 58 - LSQBRACKET reduce 58 - PERIOD reduce 58 - SEMICOLON reduce 58 - IMPORT reduce 58 - NAME reduce 58 - COLON reduce 58 - FUNCTION reduce 58 - RPAREN reduce 58 - OBJECT reduce 58 - LBRACKET reduce 58 - VAR reduce 58 - RBRACKET reduce 58 - NUMBER reduce 58 - RSQBRACKET reduce 58 - KILLS reduce 58 - TRGCONST reduce 58 - L2V reduce 58 - MAPSTRING reduce 58 - UNIT reduce 58 - SWITCH reduce 58 - LOCATION reduce 58 - STATTXTTBL reduce 58 - VARRAY reduce 58 - STATIC reduce 58 - CONST reduce 58 - INC reduce 58 - DEC reduce 58 - ONCE reduce 58 - IF reduce 58 - SWITCHCASE reduce 58 - CASE reduce 58 - DEFAULT reduce 58 - WHILE reduce 58 - FOR reduce 58 - FOREACH reduce 58 - CONTINUE reduce 58 - BREAK reduce 58 - RETURN reduce 58 - ACTIONNAME reduce 58 - -State 176: - (57) bodyStmt ::= continue_stmt SEMICOLON * - - $ reduce 57 - ELSE reduce 57 - QMARK reduce 57 - COMMA reduce 57 - LOR reduce 57 - LAND reduce 57 - EQ reduce 57 - LE reduce 57 - LT reduce 57 - GE reduce 57 - GT reduce 57 - NE reduce 57 - BITOR reduce 57 - BITXOR reduce 57 - BITAND reduce 57 - LSHIFT reduce 57 - RSHIFT reduce 57 - PLUS reduce 57 - MINUS reduce 57 - DIVIDE reduce 57 - MULTIPLY reduce 57 - MOD reduce 57 - BITNOT reduce 57 - LPAREN reduce 57 - LSQBRACKET reduce 57 - PERIOD reduce 57 - SEMICOLON reduce 57 - IMPORT reduce 57 - NAME reduce 57 - COLON reduce 57 - FUNCTION reduce 57 - RPAREN reduce 57 - OBJECT reduce 57 - LBRACKET reduce 57 - VAR reduce 57 - RBRACKET reduce 57 - NUMBER reduce 57 - RSQBRACKET reduce 57 - KILLS reduce 57 - TRGCONST reduce 57 - L2V reduce 57 - MAPSTRING reduce 57 - UNIT reduce 57 - SWITCH reduce 57 - LOCATION reduce 57 - STATTXTTBL reduce 57 - VARRAY reduce 57 - STATIC reduce 57 - CONST reduce 57 - INC reduce 57 - DEC reduce 57 - ONCE reduce 57 - IF reduce 57 - SWITCHCASE reduce 57 - CASE reduce 57 - DEFAULT reduce 57 - WHILE reduce 57 - FOR reduce 57 - FOREACH reduce 57 - CONTINUE reduce 57 - BREAK reduce 57 - RETURN reduce 57 - ACTIONNAME reduce 57 - -State 177: - (56) bodyStmt ::= switchcase_stmt * - - $ reduce 56 - ELSE reduce 56 - QMARK reduce 56 - COMMA reduce 56 - LOR reduce 56 - LAND reduce 56 - EQ reduce 56 - LE reduce 56 - LT reduce 56 - GE reduce 56 - GT reduce 56 - NE reduce 56 - BITOR reduce 56 - BITXOR reduce 56 - BITAND reduce 56 - LSHIFT reduce 56 - RSHIFT reduce 56 - PLUS reduce 56 - MINUS reduce 56 - DIVIDE reduce 56 - MULTIPLY reduce 56 - MOD reduce 56 - BITNOT reduce 56 - LPAREN reduce 56 - LSQBRACKET reduce 56 - PERIOD reduce 56 - SEMICOLON reduce 56 - IMPORT reduce 56 - NAME reduce 56 - COLON reduce 56 - FUNCTION reduce 56 - RPAREN reduce 56 - OBJECT reduce 56 - LBRACKET reduce 56 - VAR reduce 56 - RBRACKET reduce 56 - NUMBER reduce 56 - RSQBRACKET reduce 56 - KILLS reduce 56 - TRGCONST reduce 56 - L2V reduce 56 - MAPSTRING reduce 56 - UNIT reduce 56 - SWITCH reduce 56 - LOCATION reduce 56 - STATTXTTBL reduce 56 - VARRAY reduce 56 - STATIC reduce 56 - CONST reduce 56 - INC reduce 56 - DEC reduce 56 - ONCE reduce 56 - IF reduce 56 - SWITCHCASE reduce 56 - CASE reduce 56 - DEFAULT reduce 56 - WHILE reduce 56 - FOR reduce 56 - FOREACH reduce 56 - CONTINUE reduce 56 - BREAK reduce 56 - RETURN reduce 56 - ACTIONNAME reduce 56 - -State 178: - (55) bodyStmt ::= foreach_stmt * - - $ reduce 55 - ELSE reduce 55 - QMARK reduce 55 - COMMA reduce 55 - LOR reduce 55 - LAND reduce 55 - EQ reduce 55 - LE reduce 55 - LT reduce 55 - GE reduce 55 - GT reduce 55 - NE reduce 55 - BITOR reduce 55 - BITXOR reduce 55 - BITAND reduce 55 - LSHIFT reduce 55 - RSHIFT reduce 55 - PLUS reduce 55 - MINUS reduce 55 - DIVIDE reduce 55 - MULTIPLY reduce 55 - MOD reduce 55 - BITNOT reduce 55 - LPAREN reduce 55 - LSQBRACKET reduce 55 - PERIOD reduce 55 - SEMICOLON reduce 55 - IMPORT reduce 55 - NAME reduce 55 - COLON reduce 55 - FUNCTION reduce 55 - RPAREN reduce 55 - OBJECT reduce 55 - LBRACKET reduce 55 - VAR reduce 55 - RBRACKET reduce 55 - NUMBER reduce 55 - RSQBRACKET reduce 55 - KILLS reduce 55 - TRGCONST reduce 55 - L2V reduce 55 - MAPSTRING reduce 55 - UNIT reduce 55 - SWITCH reduce 55 - LOCATION reduce 55 - STATTXTTBL reduce 55 - VARRAY reduce 55 - STATIC reduce 55 - CONST reduce 55 - INC reduce 55 - DEC reduce 55 - ONCE reduce 55 - IF reduce 55 - SWITCHCASE reduce 55 - CASE reduce 55 - DEFAULT reduce 55 - WHILE reduce 55 - FOR reduce 55 - FOREACH reduce 55 - CONTINUE reduce 55 - BREAK reduce 55 - RETURN reduce 55 - ACTIONNAME reduce 55 - -State 179: - (54) bodyStmt ::= for_stmt * - - $ reduce 54 - ELSE reduce 54 - QMARK reduce 54 - COMMA reduce 54 - LOR reduce 54 - LAND reduce 54 - EQ reduce 54 - LE reduce 54 - LT reduce 54 - GE reduce 54 - GT reduce 54 - NE reduce 54 - BITOR reduce 54 - BITXOR reduce 54 - BITAND reduce 54 - LSHIFT reduce 54 - RSHIFT reduce 54 - PLUS reduce 54 - MINUS reduce 54 - DIVIDE reduce 54 - MULTIPLY reduce 54 - MOD reduce 54 - BITNOT reduce 54 - LPAREN reduce 54 - LSQBRACKET reduce 54 - PERIOD reduce 54 - SEMICOLON reduce 54 - IMPORT reduce 54 - NAME reduce 54 - COLON reduce 54 - FUNCTION reduce 54 - RPAREN reduce 54 - OBJECT reduce 54 - LBRACKET reduce 54 - VAR reduce 54 - RBRACKET reduce 54 - NUMBER reduce 54 - RSQBRACKET reduce 54 - KILLS reduce 54 - TRGCONST reduce 54 - L2V reduce 54 - MAPSTRING reduce 54 - UNIT reduce 54 - SWITCH reduce 54 - LOCATION reduce 54 - STATTXTTBL reduce 54 - VARRAY reduce 54 - STATIC reduce 54 - CONST reduce 54 - INC reduce 54 - DEC reduce 54 - ONCE reduce 54 - IF reduce 54 - SWITCHCASE reduce 54 - CASE reduce 54 - DEFAULT reduce 54 - WHILE reduce 54 - FOR reduce 54 - FOREACH reduce 54 - CONTINUE reduce 54 - BREAK reduce 54 - RETURN reduce 54 - ACTIONNAME reduce 54 - -State 180: - (53) bodyStmt ::= while_stmt * - - $ reduce 53 - ELSE reduce 53 - QMARK reduce 53 - COMMA reduce 53 - LOR reduce 53 - LAND reduce 53 - EQ reduce 53 - LE reduce 53 - LT reduce 53 - GE reduce 53 - GT reduce 53 - NE reduce 53 - BITOR reduce 53 - BITXOR reduce 53 - BITAND reduce 53 - LSHIFT reduce 53 - RSHIFT reduce 53 - PLUS reduce 53 - MINUS reduce 53 - DIVIDE reduce 53 - MULTIPLY reduce 53 - MOD reduce 53 - BITNOT reduce 53 - LPAREN reduce 53 - LSQBRACKET reduce 53 - PERIOD reduce 53 - SEMICOLON reduce 53 - IMPORT reduce 53 - NAME reduce 53 - COLON reduce 53 - FUNCTION reduce 53 - RPAREN reduce 53 - OBJECT reduce 53 - LBRACKET reduce 53 - VAR reduce 53 - RBRACKET reduce 53 - NUMBER reduce 53 - RSQBRACKET reduce 53 - KILLS reduce 53 - TRGCONST reduce 53 - L2V reduce 53 - MAPSTRING reduce 53 - UNIT reduce 53 - SWITCH reduce 53 - LOCATION reduce 53 - STATTXTTBL reduce 53 - VARRAY reduce 53 - STATIC reduce 53 - CONST reduce 53 - INC reduce 53 - DEC reduce 53 - ONCE reduce 53 - IF reduce 53 - SWITCHCASE reduce 53 - CASE reduce 53 - DEFAULT reduce 53 - WHILE reduce 53 - FOR reduce 53 - FOREACH reduce 53 - CONTINUE reduce 53 - BREAK reduce 53 - RETURN reduce 53 - ACTIONNAME reduce 53 - -State 181: - (52) bodyStmt ::= if_stmt * - - $ reduce 52 - ELSE reduce 52 - QMARK reduce 52 - COMMA reduce 52 - LOR reduce 52 - LAND reduce 52 - EQ reduce 52 - LE reduce 52 - LT reduce 52 - GE reduce 52 - GT reduce 52 - NE reduce 52 - BITOR reduce 52 - BITXOR reduce 52 - BITAND reduce 52 - LSHIFT reduce 52 - RSHIFT reduce 52 - PLUS reduce 52 - MINUS reduce 52 - DIVIDE reduce 52 - MULTIPLY reduce 52 - MOD reduce 52 - BITNOT reduce 52 - LPAREN reduce 52 - LSQBRACKET reduce 52 - PERIOD reduce 52 - SEMICOLON reduce 52 - IMPORT reduce 52 - NAME reduce 52 - COLON reduce 52 - FUNCTION reduce 52 - RPAREN reduce 52 - OBJECT reduce 52 - LBRACKET reduce 52 - VAR reduce 52 - RBRACKET reduce 52 - NUMBER reduce 52 - RSQBRACKET reduce 52 - KILLS reduce 52 - TRGCONST reduce 52 - L2V reduce 52 - MAPSTRING reduce 52 - UNIT reduce 52 - SWITCH reduce 52 - LOCATION reduce 52 - STATTXTTBL reduce 52 - VARRAY reduce 52 - STATIC reduce 52 - CONST reduce 52 - INC reduce 52 - DEC reduce 52 - ONCE reduce 52 - IF reduce 52 - SWITCHCASE reduce 52 - CASE reduce 52 - DEFAULT reduce 52 - WHILE reduce 52 - FOR reduce 52 - FOREACH reduce 52 - CONTINUE reduce 52 - BREAK reduce 52 - RETURN reduce 52 - ACTIONNAME reduce 52 - -State 182: - (51) bodyStmt ::= once_stmt * - - $ reduce 51 - ELSE reduce 51 - QMARK reduce 51 - COMMA reduce 51 - LOR reduce 51 - LAND reduce 51 - EQ reduce 51 - LE reduce 51 - LT reduce 51 - GE reduce 51 - GT reduce 51 - NE reduce 51 - BITOR reduce 51 - BITXOR reduce 51 - BITAND reduce 51 - LSHIFT reduce 51 - RSHIFT reduce 51 - PLUS reduce 51 - MINUS reduce 51 - DIVIDE reduce 51 - MULTIPLY reduce 51 - MOD reduce 51 - BITNOT reduce 51 - LPAREN reduce 51 - LSQBRACKET reduce 51 - PERIOD reduce 51 - SEMICOLON reduce 51 - IMPORT reduce 51 - NAME reduce 51 - COLON reduce 51 - FUNCTION reduce 51 - RPAREN reduce 51 - OBJECT reduce 51 - LBRACKET reduce 51 - VAR reduce 51 - RBRACKET reduce 51 - NUMBER reduce 51 - RSQBRACKET reduce 51 - KILLS reduce 51 - TRGCONST reduce 51 - L2V reduce 51 - MAPSTRING reduce 51 - UNIT reduce 51 - SWITCH reduce 51 - LOCATION reduce 51 - STATTXTTBL reduce 51 - VARRAY reduce 51 - STATIC reduce 51 - CONST reduce 51 - INC reduce 51 - DEC reduce 51 - ONCE reduce 51 - IF reduce 51 - SWITCHCASE reduce 51 - CASE reduce 51 - DEFAULT reduce 51 - WHILE reduce 51 - FOR reduce 51 - FOREACH reduce 51 - CONTINUE reduce 51 - BREAK reduce 51 - RETURN reduce 51 - ACTIONNAME reduce 51 - -State 183: - (50) bodyStmt ::= actionStmt * - - $ reduce 50 - ELSE reduce 50 - QMARK reduce 50 - COMMA reduce 50 - LOR reduce 50 - LAND reduce 50 - EQ reduce 50 - LE reduce 50 - LT reduce 50 - GE reduce 50 - GT reduce 50 - NE reduce 50 - BITOR reduce 50 - BITXOR reduce 50 - BITAND reduce 50 - LSHIFT reduce 50 - RSHIFT reduce 50 - PLUS reduce 50 - MINUS reduce 50 - DIVIDE reduce 50 - MULTIPLY reduce 50 - MOD reduce 50 - BITNOT reduce 50 - LPAREN reduce 50 - LSQBRACKET reduce 50 - PERIOD reduce 50 - SEMICOLON reduce 50 - IMPORT reduce 50 - NAME reduce 50 - COLON reduce 50 - FUNCTION reduce 50 - RPAREN reduce 50 - OBJECT reduce 50 - LBRACKET reduce 50 - VAR reduce 50 - RBRACKET reduce 50 - NUMBER reduce 50 - RSQBRACKET reduce 50 - KILLS reduce 50 - TRGCONST reduce 50 - L2V reduce 50 - MAPSTRING reduce 50 - UNIT reduce 50 - SWITCH reduce 50 - LOCATION reduce 50 - STATTXTTBL reduce 50 - VARRAY reduce 50 - STATIC reduce 50 - CONST reduce 50 - INC reduce 50 - DEC reduce 50 - ONCE reduce 50 - IF reduce 50 - SWITCHCASE reduce 50 - CASE reduce 50 - DEFAULT reduce 50 - WHILE reduce 50 - FOR reduce 50 - FOREACH reduce 50 - CONTINUE reduce 50 - BREAK reduce 50 - RETURN reduce 50 - ACTIONNAME reduce 50 - -State 184: - (49) bodyStmt ::= funcexprStmt SEMICOLON * - - $ reduce 49 - ELSE reduce 49 - QMARK reduce 49 - COMMA reduce 49 - LOR reduce 49 - LAND reduce 49 - EQ reduce 49 - LE reduce 49 - LT reduce 49 - GE reduce 49 - GT reduce 49 - NE reduce 49 - BITOR reduce 49 - BITXOR reduce 49 - BITAND reduce 49 - LSHIFT reduce 49 - RSHIFT reduce 49 - PLUS reduce 49 - MINUS reduce 49 - DIVIDE reduce 49 - MULTIPLY reduce 49 - MOD reduce 49 - BITNOT reduce 49 - LPAREN reduce 49 - LSQBRACKET reduce 49 - PERIOD reduce 49 - SEMICOLON reduce 49 - IMPORT reduce 49 - NAME reduce 49 - COLON reduce 49 - FUNCTION reduce 49 - RPAREN reduce 49 - OBJECT reduce 49 - LBRACKET reduce 49 - VAR reduce 49 - RBRACKET reduce 49 - NUMBER reduce 49 - RSQBRACKET reduce 49 - KILLS reduce 49 - TRGCONST reduce 49 - L2V reduce 49 - MAPSTRING reduce 49 - UNIT reduce 49 - SWITCH reduce 49 - LOCATION reduce 49 - STATTXTTBL reduce 49 - VARRAY reduce 49 - STATIC reduce 49 - CONST reduce 49 - INC reduce 49 - DEC reduce 49 - ONCE reduce 49 - IF reduce 49 - SWITCHCASE reduce 49 - CASE reduce 49 - DEFAULT reduce 49 - WHILE reduce 49 - FOR reduce 49 - FOREACH reduce 49 - CONTINUE reduce 49 - BREAK reduce 49 - RETURN reduce 49 - ACTIONNAME reduce 49 - -State 185: - (48) bodyStmt ::= assign_stmt SEMICOLON * - - $ reduce 48 - ELSE reduce 48 - QMARK reduce 48 - COMMA reduce 48 - LOR reduce 48 - LAND reduce 48 - EQ reduce 48 - LE reduce 48 - LT reduce 48 - GE reduce 48 - GT reduce 48 - NE reduce 48 - BITOR reduce 48 - BITXOR reduce 48 - BITAND reduce 48 - LSHIFT reduce 48 - RSHIFT reduce 48 - PLUS reduce 48 - MINUS reduce 48 - DIVIDE reduce 48 - MULTIPLY reduce 48 - MOD reduce 48 - BITNOT reduce 48 - LPAREN reduce 48 - LSQBRACKET reduce 48 - PERIOD reduce 48 - SEMICOLON reduce 48 - IMPORT reduce 48 - NAME reduce 48 - COLON reduce 48 - FUNCTION reduce 48 - RPAREN reduce 48 - OBJECT reduce 48 - LBRACKET reduce 48 - VAR reduce 48 - RBRACKET reduce 48 - NUMBER reduce 48 - RSQBRACKET reduce 48 - KILLS reduce 48 - TRGCONST reduce 48 - L2V reduce 48 - MAPSTRING reduce 48 - UNIT reduce 48 - SWITCH reduce 48 - LOCATION reduce 48 - STATTXTTBL reduce 48 - VARRAY reduce 48 - STATIC reduce 48 - CONST reduce 48 - INC reduce 48 - DEC reduce 48 - ONCE reduce 48 - IF reduce 48 - SWITCHCASE reduce 48 - CASE reduce 48 - DEFAULT reduce 48 - WHILE reduce 48 - FOR reduce 48 - FOREACH reduce 48 - CONTINUE reduce 48 - BREAK reduce 48 - RETURN reduce 48 - ACTIONNAME reduce 48 - -State 186: - (47) bodyStmt ::= cdef_stmt SEMICOLON * - - $ reduce 47 - ELSE reduce 47 - QMARK reduce 47 - COMMA reduce 47 - LOR reduce 47 - LAND reduce 47 - EQ reduce 47 - LE reduce 47 - LT reduce 47 - GE reduce 47 - GT reduce 47 - NE reduce 47 - BITOR reduce 47 - BITXOR reduce 47 - BITAND reduce 47 - LSHIFT reduce 47 - RSHIFT reduce 47 - PLUS reduce 47 - MINUS reduce 47 - DIVIDE reduce 47 - MULTIPLY reduce 47 - MOD reduce 47 - BITNOT reduce 47 - LPAREN reduce 47 - LSQBRACKET reduce 47 - PERIOD reduce 47 - SEMICOLON reduce 47 - IMPORT reduce 47 - NAME reduce 47 - COLON reduce 47 - FUNCTION reduce 47 - RPAREN reduce 47 - OBJECT reduce 47 - LBRACKET reduce 47 - VAR reduce 47 - RBRACKET reduce 47 - NUMBER reduce 47 - RSQBRACKET reduce 47 - KILLS reduce 47 - TRGCONST reduce 47 - L2V reduce 47 - MAPSTRING reduce 47 - UNIT reduce 47 - SWITCH reduce 47 - LOCATION reduce 47 - STATTXTTBL reduce 47 - VARRAY reduce 47 - STATIC reduce 47 - CONST reduce 47 - INC reduce 47 - DEC reduce 47 - ONCE reduce 47 - IF reduce 47 - SWITCHCASE reduce 47 - CASE reduce 47 - DEFAULT reduce 47 - WHILE reduce 47 - FOR reduce 47 - FOREACH reduce 47 - CONTINUE reduce 47 - BREAK reduce 47 - RETURN reduce 47 - ACTIONNAME reduce 47 - -State 187: - (46) bodyStmt ::= vdefAssign_stmt SEMICOLON * - - $ reduce 46 - ELSE reduce 46 - QMARK reduce 46 - COMMA reduce 46 - LOR reduce 46 - LAND reduce 46 - EQ reduce 46 - LE reduce 46 - LT reduce 46 - GE reduce 46 - GT reduce 46 - NE reduce 46 - BITOR reduce 46 - BITXOR reduce 46 - BITAND reduce 46 - LSHIFT reduce 46 - RSHIFT reduce 46 - PLUS reduce 46 - MINUS reduce 46 - DIVIDE reduce 46 - MULTIPLY reduce 46 - MOD reduce 46 - BITNOT reduce 46 - LPAREN reduce 46 - LSQBRACKET reduce 46 - PERIOD reduce 46 - SEMICOLON reduce 46 - IMPORT reduce 46 - NAME reduce 46 - COLON reduce 46 - FUNCTION reduce 46 - RPAREN reduce 46 - OBJECT reduce 46 - LBRACKET reduce 46 - VAR reduce 46 - RBRACKET reduce 46 - NUMBER reduce 46 - RSQBRACKET reduce 46 - KILLS reduce 46 - TRGCONST reduce 46 - L2V reduce 46 - MAPSTRING reduce 46 - UNIT reduce 46 - SWITCH reduce 46 - LOCATION reduce 46 - STATTXTTBL reduce 46 - VARRAY reduce 46 - STATIC reduce 46 - CONST reduce 46 - INC reduce 46 - DEC reduce 46 - ONCE reduce 46 - IF reduce 46 - SWITCHCASE reduce 46 - CASE reduce 46 - DEFAULT reduce 46 - WHILE reduce 46 - FOR reduce 46 - FOREACH reduce 46 - CONTINUE reduce 46 - BREAK reduce 46 - RETURN reduce 46 - ACTIONNAME reduce 46 - -State 188: - (45) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * - - $ reduce 45 - ELSE reduce 45 - QMARK reduce 45 - COMMA reduce 45 - LOR reduce 45 - LAND reduce 45 - EQ reduce 45 - LE reduce 45 - LT reduce 45 - GE reduce 45 - GT reduce 45 - NE reduce 45 - BITOR reduce 45 - BITXOR reduce 45 - BITAND reduce 45 - LSHIFT reduce 45 - RSHIFT reduce 45 - PLUS reduce 45 - MINUS reduce 45 - DIVIDE reduce 45 - MULTIPLY reduce 45 - MOD reduce 45 - BITNOT reduce 45 - LPAREN reduce 45 - LSQBRACKET reduce 45 - PERIOD reduce 45 - SEMICOLON reduce 45 - IMPORT reduce 45 - NAME reduce 45 - COLON reduce 45 - FUNCTION reduce 45 - RPAREN reduce 45 - OBJECT reduce 45 - LBRACKET reduce 45 - VAR reduce 45 - RBRACKET reduce 45 - NUMBER reduce 45 - RSQBRACKET reduce 45 - KILLS reduce 45 - TRGCONST reduce 45 - L2V reduce 45 - MAPSTRING reduce 45 - UNIT reduce 45 - SWITCH reduce 45 - LOCATION reduce 45 - STATTXTTBL reduce 45 - VARRAY reduce 45 - STATIC reduce 45 - CONST reduce 45 - INC reduce 45 - DEC reduce 45 - ONCE reduce 45 - IF reduce 45 - SWITCHCASE reduce 45 - CASE reduce 45 - DEFAULT reduce 45 - WHILE reduce 45 - FOR reduce 45 - FOREACH reduce 45 - CONTINUE reduce 45 - BREAK reduce 45 - RETURN reduce 45 - ACTIONNAME reduce 45 - -State 189: - (44) bodyStmt ::= vdef_stmt SEMICOLON * - - $ reduce 44 - ELSE reduce 44 - QMARK reduce 44 - COMMA reduce 44 - LOR reduce 44 - LAND reduce 44 - EQ reduce 44 - LE reduce 44 - LT reduce 44 - GE reduce 44 - GT reduce 44 - NE reduce 44 - BITOR reduce 44 - BITXOR reduce 44 - BITAND reduce 44 - LSHIFT reduce 44 - RSHIFT reduce 44 - PLUS reduce 44 - MINUS reduce 44 - DIVIDE reduce 44 - MULTIPLY reduce 44 - MOD reduce 44 - BITNOT reduce 44 - LPAREN reduce 44 - LSQBRACKET reduce 44 - PERIOD reduce 44 - SEMICOLON reduce 44 - IMPORT reduce 44 - NAME reduce 44 - COLON reduce 44 - FUNCTION reduce 44 - RPAREN reduce 44 - OBJECT reduce 44 - LBRACKET reduce 44 - VAR reduce 44 - RBRACKET reduce 44 - NUMBER reduce 44 - RSQBRACKET reduce 44 - KILLS reduce 44 - TRGCONST reduce 44 - L2V reduce 44 - MAPSTRING reduce 44 - UNIT reduce 44 - SWITCH reduce 44 - LOCATION reduce 44 - STATTXTTBL reduce 44 - VARRAY reduce 44 - STATIC reduce 44 - CONST reduce 44 - INC reduce 44 - DEC reduce 44 - ONCE reduce 44 - IF reduce 44 - SWITCHCASE reduce 44 - CASE reduce 44 - DEFAULT reduce 44 - WHILE reduce 44 - FOR reduce 44 - FOREACH reduce 44 - CONTINUE reduce 44 - BREAK reduce 44 - RETURN reduce 44 - ACTIONNAME reduce 44 - -State 190: - (43) bodyStmt ::= SEMICOLON * - - $ reduce 43 - ELSE reduce 43 - QMARK reduce 43 - COMMA reduce 43 - LOR reduce 43 - LAND reduce 43 - EQ reduce 43 - LE reduce 43 - LT reduce 43 - GE reduce 43 - GT reduce 43 - NE reduce 43 - BITOR reduce 43 - BITXOR reduce 43 - BITAND reduce 43 - LSHIFT reduce 43 - RSHIFT reduce 43 - PLUS reduce 43 - MINUS reduce 43 - DIVIDE reduce 43 - MULTIPLY reduce 43 - MOD reduce 43 - BITNOT reduce 43 - LPAREN reduce 43 - LSQBRACKET reduce 43 - PERIOD reduce 43 - SEMICOLON reduce 43 - IMPORT reduce 43 - NAME reduce 43 - COLON reduce 43 - FUNCTION reduce 43 - RPAREN reduce 43 - OBJECT reduce 43 - LBRACKET reduce 43 - VAR reduce 43 - RBRACKET reduce 43 - NUMBER reduce 43 - RSQBRACKET reduce 43 - KILLS reduce 43 - TRGCONST reduce 43 - L2V reduce 43 - MAPSTRING reduce 43 - UNIT reduce 43 - SWITCH reduce 43 - LOCATION reduce 43 - STATTXTTBL reduce 43 - VARRAY reduce 43 - STATIC reduce 43 - CONST reduce 43 - INC reduce 43 - DEC reduce 43 - ONCE reduce 43 - IF reduce 43 - SWITCHCASE reduce 43 - CASE reduce 43 - DEFAULT reduce 43 - WHILE reduce 43 - FOR reduce 43 - FOREACH reduce 43 - CONTINUE reduce 43 - BREAK reduce 43 - RETURN reduce 43 - ACTIONNAME reduce 43 - -State 191: - (42) bodyStmt ::= blockStmt * - - $ reduce 42 - ELSE reduce 42 - QMARK reduce 42 - COMMA reduce 42 - LOR reduce 42 - LAND reduce 42 - EQ reduce 42 - LE reduce 42 - LT reduce 42 - GE reduce 42 - GT reduce 42 - NE reduce 42 - BITOR reduce 42 - BITXOR reduce 42 - BITAND reduce 42 - LSHIFT reduce 42 - RSHIFT reduce 42 - PLUS reduce 42 - MINUS reduce 42 - DIVIDE reduce 42 - MULTIPLY reduce 42 - MOD reduce 42 - BITNOT reduce 42 - LPAREN reduce 42 - LSQBRACKET reduce 42 - PERIOD reduce 42 - SEMICOLON reduce 42 - IMPORT reduce 42 - NAME reduce 42 - COLON reduce 42 - FUNCTION reduce 42 - RPAREN reduce 42 - OBJECT reduce 42 - LBRACKET reduce 42 - VAR reduce 42 - RBRACKET reduce 42 - NUMBER reduce 42 - RSQBRACKET reduce 42 - KILLS reduce 42 - TRGCONST reduce 42 - L2V reduce 42 - MAPSTRING reduce 42 - UNIT reduce 42 - SWITCH reduce 42 - LOCATION reduce 42 - STATTXTTBL reduce 42 - VARRAY reduce 42 - STATIC reduce 42 - CONST reduce 42 - INC reduce 42 - DEC reduce 42 - ONCE reduce 42 - IF reduce 42 - SWITCHCASE reduce 42 - CASE reduce 42 - DEFAULT reduce 42 - WHILE reduce 42 - FOR reduce 42 - FOREACH reduce 42 - CONTINUE reduce 42 - BREAK reduce 42 - RETURN reduce 42 - ACTIONNAME reduce 42 - -State 192: - (39) blockStmt ::= lbracket error RBRACKET * - - $ reduce 39 - ELSE reduce 39 - QMARK reduce 39 - COMMA reduce 39 - LOR reduce 39 - LAND reduce 39 - EQ reduce 39 - LE reduce 39 - LT reduce 39 - GE reduce 39 - GT reduce 39 - NE reduce 39 - BITOR reduce 39 - BITXOR reduce 39 - BITAND reduce 39 - LSHIFT reduce 39 - RSHIFT reduce 39 - PLUS reduce 39 - MINUS reduce 39 - DIVIDE reduce 39 - MULTIPLY reduce 39 - MOD reduce 39 - BITNOT reduce 39 - LPAREN reduce 39 - LSQBRACKET reduce 39 - PERIOD reduce 39 - SEMICOLON reduce 39 - IMPORT reduce 39 - NAME reduce 39 - COLON reduce 39 - FUNCTION reduce 39 - RPAREN reduce 39 - OBJECT reduce 39 - LBRACKET reduce 39 - VAR reduce 39 - RBRACKET reduce 39 - NUMBER reduce 39 - RSQBRACKET reduce 39 - KILLS reduce 39 - TRGCONST reduce 39 - L2V reduce 39 - MAPSTRING reduce 39 - UNIT reduce 39 - SWITCH reduce 39 - LOCATION reduce 39 - STATTXTTBL reduce 39 - VARRAY reduce 39 - STATIC reduce 39 - CONST reduce 39 - INC reduce 39 - DEC reduce 39 - ONCE reduce 39 - IF reduce 39 - SWITCHCASE reduce 39 - CASE reduce 39 - DEFAULT reduce 39 - WHILE reduce 39 - FOR reduce 39 - FOREACH reduce 39 - CONTINUE reduce 39 - BREAK reduce 39 - RETURN reduce 39 - ACTIONNAME reduce 39 - -State 193: - (38) blockStmt ::= blockStmtSub rbracket * - - $ reduce 38 - ELSE reduce 38 - QMARK reduce 38 - COMMA reduce 38 - LOR reduce 38 - LAND reduce 38 - EQ reduce 38 - LE reduce 38 - LT reduce 38 - GE reduce 38 - GT reduce 38 - NE reduce 38 - BITOR reduce 38 - BITXOR reduce 38 - BITAND reduce 38 - LSHIFT reduce 38 - RSHIFT reduce 38 - PLUS reduce 38 - MINUS reduce 38 - DIVIDE reduce 38 - MULTIPLY reduce 38 - MOD reduce 38 - BITNOT reduce 38 - LPAREN reduce 38 - LSQBRACKET reduce 38 - PERIOD reduce 38 - SEMICOLON reduce 38 - IMPORT reduce 38 - NAME reduce 38 - COLON reduce 38 - FUNCTION reduce 38 - RPAREN reduce 38 - OBJECT reduce 38 - LBRACKET reduce 38 - VAR reduce 38 - RBRACKET reduce 38 - NUMBER reduce 38 - RSQBRACKET reduce 38 - KILLS reduce 38 - TRGCONST reduce 38 - L2V reduce 38 - MAPSTRING reduce 38 - UNIT reduce 38 - SWITCH reduce 38 - LOCATION reduce 38 - STATTXTTBL reduce 38 - VARRAY reduce 38 - STATIC reduce 38 - CONST reduce 38 - INC reduce 38 - DEC reduce 38 - ONCE reduce 38 - IF reduce 38 - SWITCHCASE reduce 38 - CASE reduce 38 - DEFAULT reduce 38 - WHILE reduce 38 - FOR reduce 38 - FOREACH reduce 38 - CONTINUE reduce 38 - BREAK reduce 38 - RETURN reduce 38 - ACTIONNAME reduce 38 - -State 194: - (37) rbracket ::= RBRACKET * - - $ reduce 37 - ELSE reduce 37 - QMARK reduce 37 - COMMA reduce 37 - LOR reduce 37 - LAND reduce 37 - EQ reduce 37 - LE reduce 37 - LT reduce 37 - GE reduce 37 - GT reduce 37 - NE reduce 37 - BITOR reduce 37 - BITXOR reduce 37 - BITAND reduce 37 - LSHIFT reduce 37 - RSHIFT reduce 37 - PLUS reduce 37 - MINUS reduce 37 - DIVIDE reduce 37 - MULTIPLY reduce 37 - MOD reduce 37 - BITNOT reduce 37 - LPAREN reduce 37 - LSQBRACKET reduce 37 - PERIOD reduce 37 - SEMICOLON reduce 37 - IMPORT reduce 37 - NAME reduce 37 - COLON reduce 37 - FUNCTION reduce 37 - RPAREN reduce 37 - OBJECT reduce 37 - LBRACKET reduce 37 - VAR reduce 37 - RBRACKET reduce 37 - NUMBER reduce 37 - RSQBRACKET reduce 37 - KILLS reduce 37 - TRGCONST reduce 37 - L2V reduce 37 - MAPSTRING reduce 37 - UNIT reduce 37 - SWITCH reduce 37 - LOCATION reduce 37 - STATTXTTBL reduce 37 - VARRAY reduce 37 - STATIC reduce 37 - CONST reduce 37 - INC reduce 37 - DEC reduce 37 - ONCE reduce 37 - IF reduce 37 - SWITCHCASE reduce 37 - CASE reduce 37 - DEFAULT reduce 37 - WHILE reduce 37 - FOR reduce 37 - FOREACH reduce 37 - CONTINUE reduce 37 - BREAK reduce 37 - RETURN reduce 37 - ACTIONNAME reduce 37 - -State 195: - (35) stmt ::= bodyStmt * - - $ reduce 35 - ELSE reduce 35 - QMARK reduce 35 - COMMA reduce 35 - LOR reduce 35 - LAND reduce 35 - EQ reduce 35 - LE reduce 35 - LT reduce 35 - GE reduce 35 - GT reduce 35 - NE reduce 35 - BITOR reduce 35 - BITXOR reduce 35 - BITAND reduce 35 - LSHIFT reduce 35 - RSHIFT reduce 35 - PLUS reduce 35 - MINUS reduce 35 - DIVIDE reduce 35 - MULTIPLY reduce 35 - MOD reduce 35 - BITNOT reduce 35 - LPAREN reduce 35 - LSQBRACKET reduce 35 - PERIOD reduce 35 - SEMICOLON reduce 35 - IMPORT reduce 35 - NAME reduce 35 - COLON reduce 35 - FUNCTION reduce 35 - RPAREN reduce 35 - OBJECT reduce 35 - LBRACKET reduce 35 - VAR reduce 35 - RBRACKET reduce 35 - NUMBER reduce 35 - RSQBRACKET reduce 35 - KILLS reduce 35 - TRGCONST reduce 35 - L2V reduce 35 - MAPSTRING reduce 35 - UNIT reduce 35 - SWITCH reduce 35 - LOCATION reduce 35 - STATTXTTBL reduce 35 - VARRAY reduce 35 - STATIC reduce 35 - CONST reduce 35 - INC reduce 35 - DEC reduce 35 - ONCE reduce 35 - IF reduce 35 - SWITCHCASE reduce 35 - CASE reduce 35 - DEFAULT reduce 35 - WHILE reduce 35 - FOR reduce 35 - FOREACH reduce 35 - CONTINUE reduce 35 - BREAK reduce 35 - RETURN reduce 35 - ACTIONNAME reduce 35 - -State 196: - (34) stmt ::= error SEMICOLON * + constExpr ::= LPAREN constExpr * RPAREN + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - $ reduce 34 - ELSE reduce 34 - QMARK reduce 34 - COMMA reduce 34 - LOR reduce 34 - LAND reduce 34 - EQ reduce 34 - LE reduce 34 - LT reduce 34 - GE reduce 34 - GT reduce 34 - NE reduce 34 - BITOR reduce 34 - BITXOR reduce 34 - BITAND reduce 34 - LSHIFT reduce 34 - RSHIFT reduce 34 - PLUS reduce 34 - MINUS reduce 34 - DIVIDE reduce 34 - MULTIPLY reduce 34 - MOD reduce 34 - BITNOT reduce 34 - LPAREN reduce 34 - LSQBRACKET reduce 34 - PERIOD reduce 34 - SEMICOLON reduce 34 - IMPORT reduce 34 - NAME reduce 34 - COLON reduce 34 - FUNCTION reduce 34 - RPAREN reduce 34 - OBJECT reduce 34 - LBRACKET reduce 34 - VAR reduce 34 - RBRACKET reduce 34 - NUMBER reduce 34 - RSQBRACKET reduce 34 - KILLS reduce 34 - TRGCONST reduce 34 - L2V reduce 34 - MAPSTRING reduce 34 - UNIT reduce 34 - SWITCH reduce 34 - LOCATION reduce 34 - STATTXTTBL reduce 34 - VARRAY reduce 34 - STATIC reduce 34 - CONST reduce 34 - INC reduce 34 - DEC reduce 34 - ONCE reduce 34 - IF reduce 34 - SWITCHCASE reduce 34 - CASE reduce 34 - DEFAULT reduce 34 - WHILE reduce 34 - FOR reduce 34 - FOREACH reduce 34 - CONTINUE reduce 34 - BREAK reduce 34 - RETURN reduce 34 - ACTIONNAME reduce 34 + EQ shift 138 + LE shift 125 + LT shift 123 + GE shift 124 + GT shift 122 + NE shift 126 + BITOR shift 128 + BITXOR shift 127 + BITAND shift 129 + LSHIFT shift 131 + RSHIFT shift 130 + PLUS shift 136 + MINUS shift 135 + DIVIDE shift 133 + MULTIPLY shift 134 + MOD shift 132 + RPAREN shift 504 -State 197: +State 160: + constExpr ::= LPAREN constExpr * RPAREN constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -19561,87 +16803,37 @@ State 197: constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr constExpr ::= constExpr * GT constExpr - (182) logicExpr ::= nonConstExpr GT constExpr * + logicExpr ::= constExpr * GT nonConstExpr - QMARK reduce 182 - COMMA reduce 182 - LOR reduce 182 - LAND reduce 182 - EQ error - EQ reduce 182 - LE error - LE reduce 182 - LT error - LT reduce 182 - GE error - GE reduce 182 - GT error - GT reduce 182 - NE error - NE reduce 182 + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 BITOR shift 102 - BITOR reduce 182 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 182 -- dropped by precedence BITAND shift 103 - BITAND reduce 182 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 182 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 182 -- dropped by precedence PLUS shift 113 - PLUS reduce 182 -- dropped by precedence MINUS shift 112 - MINUS reduce 182 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 182 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 182 -- dropped by precedence MOD shift 106 - MOD reduce 182 -- dropped by precedence - BITNOT reduce 182 - LPAREN reduce 182 - LSQBRACKET reduce 182 - PERIOD reduce 182 - SEMICOLON reduce 182 - NAME reduce 182 - COLON reduce 182 - FUNCTION reduce 182 - RPAREN reduce 182 - LBRACKET reduce 182 - VAR reduce 182 - NUMBER reduce 182 - RSQBRACKET reduce 182 - KILLS reduce 182 - TRGCONST reduce 182 - L2V reduce 182 - MAPSTRING reduce 182 - UNIT reduce 182 - SWITCH reduce 182 - LOCATION reduce 182 - STATTXTTBL reduce 182 - VARRAY reduce 182 - STATIC reduce 182 - CONST reduce 182 - INC reduce 182 - DEC reduce 182 - ONCE reduce 182 - IF reduce 182 - SWITCHCASE reduce 182 - WHILE reduce 182 - FOR reduce 182 - FOREACH reduce 182 - CONTINUE reduce 182 - BREAK reduce 182 - RETURN reduce 182 - ACTIONNAME reduce 182 + RPAREN shift 504 -State 198: +State 161: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -19667,83 +16859,28 @@ State 198: constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr - (178) logicExpr ::= nonConstExpr LT constExpr * constExpr ::= constExpr * GT constExpr + (182) logicExpr ::= nonConstExpr GT constExpr * - QMARK reduce 178 - COMMA reduce 178 - LOR reduce 178 - LAND reduce 178 EQ error - EQ reduce 178 LE error - LE reduce 178 LT error - LT reduce 178 GE error - GE reduce 178 GT error - GT reduce 178 NE error - NE reduce 178 BITOR shift 102 - BITOR reduce 178 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 178 -- dropped by precedence BITAND shift 103 - BITAND reduce 178 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 178 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 178 -- dropped by precedence PLUS shift 113 - PLUS reduce 178 -- dropped by precedence MINUS shift 112 - MINUS reduce 178 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 178 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 178 -- dropped by precedence MOD shift 106 - MOD reduce 178 -- dropped by precedence - BITNOT reduce 178 - LPAREN reduce 178 - LSQBRACKET reduce 178 - PERIOD reduce 178 - SEMICOLON reduce 178 - NAME reduce 178 - COLON reduce 178 - FUNCTION reduce 178 - RPAREN reduce 178 - LBRACKET reduce 178 - VAR reduce 178 - NUMBER reduce 178 - RSQBRACKET reduce 178 - KILLS reduce 178 - TRGCONST reduce 178 - L2V reduce 178 - MAPSTRING reduce 178 - UNIT reduce 178 - SWITCH reduce 178 - LOCATION reduce 178 - STATTXTTBL reduce 178 - VARRAY reduce 178 - STATIC reduce 178 - CONST reduce 178 - INC reduce 178 - DEC reduce 178 - ONCE reduce 178 - IF reduce 178 - SWITCHCASE reduce 178 - WHILE reduce 178 - FOR reduce 178 - FOREACH reduce 178 - CONTINUE reduce 178 - BREAK reduce 178 - RETURN reduce 178 - ACTIONNAME reduce 178 + {default} reduce 182 -State 199: +State 162: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -19768,84 +16905,29 @@ State 199: constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr - (174) logicExpr ::= nonConstExpr GE constExpr * constExpr ::= constExpr * LT constExpr + (178) logicExpr ::= nonConstExpr LT constExpr * constExpr ::= constExpr * GT constExpr - QMARK reduce 174 - COMMA reduce 174 - LOR reduce 174 - LAND reduce 174 EQ error - EQ reduce 174 LE error - LE reduce 174 LT error - LT reduce 174 GE error - GE reduce 174 GT error - GT reduce 174 NE error - NE reduce 174 BITOR shift 102 - BITOR reduce 174 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 174 -- dropped by precedence BITAND shift 103 - BITAND reduce 174 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 174 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 174 -- dropped by precedence PLUS shift 113 - PLUS reduce 174 -- dropped by precedence MINUS shift 112 - MINUS reduce 174 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 174 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 174 -- dropped by precedence MOD shift 106 - MOD reduce 174 -- dropped by precedence - BITNOT reduce 174 - LPAREN reduce 174 - LSQBRACKET reduce 174 - PERIOD reduce 174 - SEMICOLON reduce 174 - NAME reduce 174 - COLON reduce 174 - FUNCTION reduce 174 - RPAREN reduce 174 - LBRACKET reduce 174 - VAR reduce 174 - NUMBER reduce 174 - RSQBRACKET reduce 174 - KILLS reduce 174 - TRGCONST reduce 174 - L2V reduce 174 - MAPSTRING reduce 174 - UNIT reduce 174 - SWITCH reduce 174 - LOCATION reduce 174 - STATTXTTBL reduce 174 - VARRAY reduce 174 - STATIC reduce 174 - CONST reduce 174 - INC reduce 174 - DEC reduce 174 - ONCE reduce 174 - IF reduce 174 - SWITCHCASE reduce 174 - WHILE reduce 174 - FOR reduce 174 - FOREACH reduce 174 - CONTINUE reduce 174 - BREAK reduce 174 - RETURN reduce 174 - ACTIONNAME reduce 174 + {default} reduce 178 -State 200: +State 163: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -19869,85 +16951,30 @@ State 200: constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr - (170) logicExpr ::= nonConstExpr LE constExpr * constExpr ::= constExpr * GE constExpr + (174) logicExpr ::= nonConstExpr GE constExpr * constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 170 - COMMA reduce 170 - LOR reduce 170 - LAND reduce 170 EQ error - EQ reduce 170 LE error - LE reduce 170 LT error - LT reduce 170 GE error - GE reduce 170 GT error - GT reduce 170 NE error - NE reduce 170 BITOR shift 102 - BITOR reduce 170 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 170 -- dropped by precedence BITAND shift 103 - BITAND reduce 170 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 170 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 170 -- dropped by precedence PLUS shift 113 - PLUS reduce 170 -- dropped by precedence MINUS shift 112 - MINUS reduce 170 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 170 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 170 -- dropped by precedence MOD shift 106 - MOD reduce 170 -- dropped by precedence - BITNOT reduce 170 - LPAREN reduce 170 - LSQBRACKET reduce 170 - PERIOD reduce 170 - SEMICOLON reduce 170 - NAME reduce 170 - COLON reduce 170 - FUNCTION reduce 170 - RPAREN reduce 170 - LBRACKET reduce 170 - VAR reduce 170 - NUMBER reduce 170 - RSQBRACKET reduce 170 - KILLS reduce 170 - TRGCONST reduce 170 - L2V reduce 170 - MAPSTRING reduce 170 - UNIT reduce 170 - SWITCH reduce 170 - LOCATION reduce 170 - STATTXTTBL reduce 170 - VARRAY reduce 170 - STATIC reduce 170 - CONST reduce 170 - INC reduce 170 - DEC reduce 170 - ONCE reduce 170 - IF reduce 170 - SWITCHCASE reduce 170 - WHILE reduce 170 - FOR reduce 170 - FOREACH reduce 170 - CONTINUE reduce 170 - BREAK reduce 170 - RETURN reduce 170 - ACTIONNAME reduce 170 + {default} reduce 174 -State 201: +State 164: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -19970,86 +16997,31 @@ State 201: nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr - (166) logicExpr ::= nonConstExpr NE constExpr * constExpr ::= constExpr * LE constExpr + (170) logicExpr ::= nonConstExpr LE constExpr * constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 166 - COMMA reduce 166 - LOR reduce 166 - LAND reduce 166 EQ error - EQ reduce 166 LE error - LE reduce 166 LT error - LT reduce 166 GE error - GE reduce 166 GT error - GT reduce 166 NE error - NE reduce 166 BITOR shift 102 - BITOR reduce 166 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 166 -- dropped by precedence BITAND shift 103 - BITAND reduce 166 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 166 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 166 -- dropped by precedence PLUS shift 113 - PLUS reduce 166 -- dropped by precedence MINUS shift 112 - MINUS reduce 166 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 166 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 166 -- dropped by precedence MOD shift 106 - MOD reduce 166 -- dropped by precedence - BITNOT reduce 166 - LPAREN reduce 166 - LSQBRACKET reduce 166 - PERIOD reduce 166 - SEMICOLON reduce 166 - NAME reduce 166 - COLON reduce 166 - FUNCTION reduce 166 - RPAREN reduce 166 - LBRACKET reduce 166 - VAR reduce 166 - NUMBER reduce 166 - RSQBRACKET reduce 166 - KILLS reduce 166 - TRGCONST reduce 166 - L2V reduce 166 - MAPSTRING reduce 166 - UNIT reduce 166 - SWITCH reduce 166 - LOCATION reduce 166 - STATTXTTBL reduce 166 - VARRAY reduce 166 - STATIC reduce 166 - CONST reduce 166 - INC reduce 166 - DEC reduce 166 - ONCE reduce 166 - IF reduce 166 - SWITCHCASE reduce 166 - WHILE reduce 166 - FOR reduce 166 - FOREACH reduce 166 - CONTINUE reduce 166 - BREAK reduce 166 - RETURN reduce 166 - ACTIONNAME reduce 166 + {default} reduce 170 -State 202: +State 165: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -20071,87 +17043,32 @@ State 202: constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr - (162) logicExpr ::= nonConstExpr EQ constExpr * constExpr ::= constExpr * NE constExpr + (166) logicExpr ::= nonConstExpr NE constExpr * constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 162 - COMMA reduce 162 - LOR reduce 162 - LAND reduce 162 EQ error - EQ reduce 162 LE error - LE reduce 162 LT error - LT reduce 162 GE error - GE reduce 162 GT error - GT reduce 162 NE error - NE reduce 162 BITOR shift 102 - BITOR reduce 162 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 162 -- dropped by precedence BITAND shift 103 - BITAND reduce 162 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 162 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 162 -- dropped by precedence PLUS shift 113 - PLUS reduce 162 -- dropped by precedence MINUS shift 112 - MINUS reduce 162 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 162 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 162 -- dropped by precedence MOD shift 106 - MOD reduce 162 -- dropped by precedence - BITNOT reduce 162 - LPAREN reduce 162 - LSQBRACKET reduce 162 - PERIOD reduce 162 - SEMICOLON reduce 162 - NAME reduce 162 - COLON reduce 162 - FUNCTION reduce 162 - RPAREN reduce 162 - LBRACKET reduce 162 - VAR reduce 162 - NUMBER reduce 162 - RSQBRACKET reduce 162 - KILLS reduce 162 - TRGCONST reduce 162 - L2V reduce 162 - MAPSTRING reduce 162 - UNIT reduce 162 - SWITCH reduce 162 - LOCATION reduce 162 - STATTXTTBL reduce 162 - VARRAY reduce 162 - STATIC reduce 162 - CONST reduce 162 - INC reduce 162 - DEC reduce 162 - ONCE reduce 162 - IF reduce 162 - SWITCHCASE reduce 162 - WHILE reduce 162 - FOR reduce 162 - FOREACH reduce 162 - CONTINUE reduce 162 - BREAK reduce 162 - RETURN reduce 162 - ACTIONNAME reduce 162 + {default} reduce 166 -State 203: +State 166: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -20173,87 +17090,32 @@ State 203: constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr + (162) logicExpr ::= nonConstExpr EQ constExpr * constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - (180) constExpr ::= constExpr GT constExpr * - QMARK reduce 180 - COMMA reduce 180 - LOR reduce 180 - LAND reduce 180 EQ error - EQ reduce 180 LE error - LE reduce 180 LT error - LT reduce 180 GE error - GE reduce 180 GT error - GT reduce 180 NE error - NE reduce 180 BITOR shift 102 - BITOR reduce 180 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 180 -- dropped by precedence BITAND shift 103 - BITAND reduce 180 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 180 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 180 -- dropped by precedence PLUS shift 113 - PLUS reduce 180 -- dropped by precedence MINUS shift 112 - MINUS reduce 180 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 180 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 180 -- dropped by precedence MOD shift 106 - MOD reduce 180 -- dropped by precedence - BITNOT reduce 180 - LPAREN reduce 180 - LSQBRACKET reduce 180 - PERIOD reduce 180 - SEMICOLON reduce 180 - NAME reduce 180 - COLON reduce 180 - FUNCTION reduce 180 - RPAREN reduce 180 - LBRACKET reduce 180 - VAR reduce 180 - NUMBER reduce 180 - RSQBRACKET reduce 180 - KILLS reduce 180 - TRGCONST reduce 180 - L2V reduce 180 - MAPSTRING reduce 180 - UNIT reduce 180 - SWITCH reduce 180 - LOCATION reduce 180 - STATTXTTBL reduce 180 - VARRAY reduce 180 - STATIC reduce 180 - CONST reduce 180 - INC reduce 180 - DEC reduce 180 - ONCE reduce 180 - IF reduce 180 - SWITCHCASE reduce 180 - WHILE reduce 180 - FOR reduce 180 - FOREACH reduce 180 - CONTINUE reduce 180 - BREAK reduce 180 - RETURN reduce 180 - ACTIONNAME reduce 180 + {default} reduce 162 -State 204: +State 167: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -20279,83 +17141,26 @@ State 204: constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr - (176) constExpr ::= constExpr LT constExpr * constExpr ::= constExpr * GT constExpr - QMARK reduce 176 - COMMA reduce 176 - LOR reduce 176 - LAND reduce 176 - EQ error - EQ reduce 176 - LE error - LE reduce 176 - LT error - LT reduce 176 - GE error - GE reduce 176 - GT error - GT reduce 176 - NE error - NE reduce 176 + EQ shift 138 + LE shift 125 + LT shift 123 + GE shift 124 + GT shift 122 + NE shift 126 BITOR shift 102 - BITOR reduce 176 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 176 -- dropped by precedence BITAND shift 103 - BITAND reduce 176 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 176 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 176 -- dropped by precedence PLUS shift 113 - PLUS reduce 176 -- dropped by precedence MINUS shift 112 - MINUS reduce 176 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 176 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 176 -- dropped by precedence MOD shift 106 - MOD reduce 176 -- dropped by precedence - BITNOT reduce 176 - LPAREN reduce 176 - LSQBRACKET reduce 176 - PERIOD reduce 176 - SEMICOLON reduce 176 - NAME reduce 176 - COLON reduce 176 - FUNCTION reduce 176 - RPAREN reduce 176 - LBRACKET reduce 176 - VAR reduce 176 - NUMBER reduce 176 - RSQBRACKET reduce 176 - KILLS reduce 176 - TRGCONST reduce 176 - L2V reduce 176 - MAPSTRING reduce 176 - UNIT reduce 176 - SWITCH reduce 176 - LOCATION reduce 176 - STATTXTTBL reduce 176 - VARRAY reduce 176 - STATIC reduce 176 - CONST reduce 176 - INC reduce 176 - DEC reduce 176 - ONCE reduce 176 - IF reduce 176 - SWITCHCASE reduce 176 - WHILE reduce 176 - FOR reduce 176 - FOREACH reduce 176 - CONTINUE reduce 176 - BREAK reduce 176 - RETURN reduce 176 - ACTIONNAME reduce 176 -State 205: +State 168: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -20380,84 +17185,29 @@ State 205: constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr - (172) constExpr ::= constExpr GE constExpr * constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + (180) constExpr ::= constExpr GT constExpr * - QMARK reduce 172 - COMMA reduce 172 - LOR reduce 172 - LAND reduce 172 EQ error - EQ reduce 172 LE error - LE reduce 172 LT error - LT reduce 172 GE error - GE reduce 172 GT error - GT reduce 172 NE error - NE reduce 172 BITOR shift 102 - BITOR reduce 172 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 172 -- dropped by precedence BITAND shift 103 - BITAND reduce 172 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 172 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 172 -- dropped by precedence PLUS shift 113 - PLUS reduce 172 -- dropped by precedence MINUS shift 112 - MINUS reduce 172 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 172 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 172 -- dropped by precedence MOD shift 106 - MOD reduce 172 -- dropped by precedence - BITNOT reduce 172 - LPAREN reduce 172 - LSQBRACKET reduce 172 - PERIOD reduce 172 - SEMICOLON reduce 172 - NAME reduce 172 - COLON reduce 172 - FUNCTION reduce 172 - RPAREN reduce 172 - LBRACKET reduce 172 - VAR reduce 172 - NUMBER reduce 172 - RSQBRACKET reduce 172 - KILLS reduce 172 - TRGCONST reduce 172 - L2V reduce 172 - MAPSTRING reduce 172 - UNIT reduce 172 - SWITCH reduce 172 - LOCATION reduce 172 - STATTXTTBL reduce 172 - VARRAY reduce 172 - STATIC reduce 172 - CONST reduce 172 - INC reduce 172 - DEC reduce 172 - ONCE reduce 172 - IF reduce 172 - SWITCHCASE reduce 172 - WHILE reduce 172 - FOR reduce 172 - FOREACH reduce 172 - CONTINUE reduce 172 - BREAK reduce 172 - RETURN reduce 172 - ACTIONNAME reduce 172 + {default} reduce 180 -State 206: +State 169: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -20481,85 +17231,30 @@ State 206: constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr - (168) constExpr ::= constExpr LE constExpr * constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr + (176) constExpr ::= constExpr LT constExpr * constExpr ::= constExpr * GT constExpr - QMARK reduce 168 - COMMA reduce 168 - LOR reduce 168 - LAND reduce 168 EQ error - EQ reduce 168 LE error - LE reduce 168 LT error - LT reduce 168 GE error - GE reduce 168 GT error - GT reduce 168 NE error - NE reduce 168 BITOR shift 102 - BITOR reduce 168 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 168 -- dropped by precedence BITAND shift 103 - BITAND reduce 168 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 168 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 168 -- dropped by precedence PLUS shift 113 - PLUS reduce 168 -- dropped by precedence MINUS shift 112 - MINUS reduce 168 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 168 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 168 -- dropped by precedence MOD shift 106 - MOD reduce 168 -- dropped by precedence - BITNOT reduce 168 - LPAREN reduce 168 - LSQBRACKET reduce 168 - PERIOD reduce 168 - SEMICOLON reduce 168 - NAME reduce 168 - COLON reduce 168 - FUNCTION reduce 168 - RPAREN reduce 168 - LBRACKET reduce 168 - VAR reduce 168 - NUMBER reduce 168 - RSQBRACKET reduce 168 - KILLS reduce 168 - TRGCONST reduce 168 - L2V reduce 168 - MAPSTRING reduce 168 - UNIT reduce 168 - SWITCH reduce 168 - LOCATION reduce 168 - STATTXTTBL reduce 168 - VARRAY reduce 168 - STATIC reduce 168 - CONST reduce 168 - INC reduce 168 - DEC reduce 168 - ONCE reduce 168 - IF reduce 168 - SWITCHCASE reduce 168 - WHILE reduce 168 - FOR reduce 168 - FOREACH reduce 168 - CONTINUE reduce 168 - BREAK reduce 168 - RETURN reduce 168 - ACTIONNAME reduce 168 + {default} reduce 176 -State 207: +State 170: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -20582,86 +17277,31 @@ State 207: nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr - (164) constExpr ::= constExpr NE constExpr * constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr + (172) constExpr ::= constExpr GE constExpr * constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 164 - COMMA reduce 164 - LOR reduce 164 - LAND reduce 164 EQ error - EQ reduce 164 LE error - LE reduce 164 LT error - LT reduce 164 GE error - GE reduce 164 GT error - GT reduce 164 NE error - NE reduce 164 BITOR shift 102 - BITOR reduce 164 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 164 -- dropped by precedence BITAND shift 103 - BITAND reduce 164 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 164 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 164 -- dropped by precedence PLUS shift 113 - PLUS reduce 164 -- dropped by precedence MINUS shift 112 - MINUS reduce 164 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 164 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 164 -- dropped by precedence MOD shift 106 - MOD reduce 164 -- dropped by precedence - BITNOT reduce 164 - LPAREN reduce 164 - LSQBRACKET reduce 164 - PERIOD reduce 164 - SEMICOLON reduce 164 - NAME reduce 164 - COLON reduce 164 - FUNCTION reduce 164 - RPAREN reduce 164 - LBRACKET reduce 164 - VAR reduce 164 - NUMBER reduce 164 - RSQBRACKET reduce 164 - KILLS reduce 164 - TRGCONST reduce 164 - L2V reduce 164 - MAPSTRING reduce 164 - UNIT reduce 164 - SWITCH reduce 164 - LOCATION reduce 164 - STATTXTTBL reduce 164 - VARRAY reduce 164 - STATIC reduce 164 - CONST reduce 164 - INC reduce 164 - DEC reduce 164 - ONCE reduce 164 - IF reduce 164 - SWITCHCASE reduce 164 - WHILE reduce 164 - FOR reduce 164 - FOREACH reduce 164 - CONTINUE reduce 164 - BREAK reduce 164 - RETURN reduce 164 - ACTIONNAME reduce 164 + {default} reduce 172 -State 208: +State 171: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -20683,87 +17323,126 @@ State 208: constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr - (160) constExpr ::= constExpr EQ constExpr * constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr + (168) constExpr ::= constExpr LE constExpr * constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 160 - COMMA reduce 160 - LOR reduce 160 - LAND reduce 160 EQ error - EQ reduce 160 LE error - LE reduce 160 LT error - LT reduce 160 GE error - GE reduce 160 GT error - GT reduce 160 NE error - NE reduce 160 BITOR shift 102 - BITOR reduce 160 -- dropped by precedence BITXOR shift 101 - BITXOR reduce 160 -- dropped by precedence BITAND shift 103 - BITAND reduce 160 -- dropped by precedence LSHIFT shift 105 - LSHIFT reduce 160 -- dropped by precedence RSHIFT shift 104 - RSHIFT reduce 160 -- dropped by precedence PLUS shift 113 - PLUS reduce 160 -- dropped by precedence MINUS shift 112 - MINUS reduce 160 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 160 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 160 -- dropped by precedence MOD shift 106 - MOD reduce 160 -- dropped by precedence - BITNOT reduce 160 - LPAREN reduce 160 - LSQBRACKET reduce 160 - PERIOD reduce 160 - SEMICOLON reduce 160 - NAME reduce 160 - COLON reduce 160 - FUNCTION reduce 160 - RPAREN reduce 160 - LBRACKET reduce 160 - VAR reduce 160 - NUMBER reduce 160 - RSQBRACKET reduce 160 - KILLS reduce 160 - TRGCONST reduce 160 - L2V reduce 160 - MAPSTRING reduce 160 - UNIT reduce 160 - SWITCH reduce 160 - LOCATION reduce 160 - STATTXTTBL reduce 160 - VARRAY reduce 160 - STATIC reduce 160 - CONST reduce 160 - INC reduce 160 - DEC reduce 160 - ONCE reduce 160 - IF reduce 160 - SWITCHCASE reduce 160 - WHILE reduce 160 - FOR reduce 160 - FOREACH reduce 160 - CONTINUE reduce 160 - BREAK reduce 160 - RETURN reduce 160 - ACTIONNAME reduce 160 + {default} reduce 168 -State 209: +State 172: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + (164) constExpr ::= constExpr NE constExpr * + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + EQ error + LE error + LT error + GE error + GT error + NE error + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 164 + +State 173: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + (160) constExpr ::= constExpr EQ constExpr * + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + EQ error + LE error + LT error + GE error + GT error + NE error + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 160 + +State 174: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -20782,80 +17461,25 @@ State 209: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 160 - COMMA reduce 160 - LOR reduce 160 - LAND reduce 160 EQ error - EQ reduce 160 LE error - LE reduce 160 LT error - LT reduce 160 GE error - GE reduce 160 GT error - GT reduce 160 NE error - NE reduce 160 BITOR shift 128 - BITOR reduce 160 -- dropped by precedence BITXOR shift 127 - BITXOR reduce 160 -- dropped by precedence BITAND shift 129 - BITAND reduce 160 -- dropped by precedence LSHIFT shift 131 - LSHIFT reduce 160 -- dropped by precedence RSHIFT shift 130 - RSHIFT reduce 160 -- dropped by precedence PLUS shift 136 - PLUS reduce 160 -- dropped by precedence MINUS shift 135 - MINUS reduce 160 -- dropped by precedence DIVIDE shift 133 - DIVIDE reduce 160 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 160 -- dropped by precedence MOD shift 132 - MOD reduce 160 -- dropped by precedence - BITNOT reduce 160 - LPAREN reduce 160 - LSQBRACKET reduce 160 - PERIOD reduce 160 - SEMICOLON reduce 160 - NAME reduce 160 - COLON reduce 160 - FUNCTION reduce 160 - RPAREN reduce 160 - LBRACKET reduce 160 - VAR reduce 160 - NUMBER reduce 160 - RSQBRACKET reduce 160 - KILLS reduce 160 - TRGCONST reduce 160 - L2V reduce 160 - MAPSTRING reduce 160 - UNIT reduce 160 - SWITCH reduce 160 - LOCATION reduce 160 - STATTXTTBL reduce 160 - VARRAY reduce 160 - STATIC reduce 160 - CONST reduce 160 - INC reduce 160 - DEC reduce 160 - ONCE reduce 160 - IF reduce 160 - SWITCHCASE reduce 160 - WHILE reduce 160 - FOR reduce 160 - FOREACH reduce 160 - CONTINUE reduce 160 - BREAK reduce 160 - RETURN reduce 160 - ACTIONNAME reduce 160 + {default} reduce 160 -State 210: +State 175: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -20874,80 +17498,25 @@ State 210: constExpr ::= constExpr * GT constExpr (180) constExpr ::= constExpr GT constExpr * - QMARK reduce 180 - COMMA reduce 180 - LOR reduce 180 - LAND reduce 180 EQ error - EQ reduce 180 LE error - LE reduce 180 LT error - LT reduce 180 GE error - GE reduce 180 GT error - GT reduce 180 NE error - NE reduce 180 BITOR shift 128 - BITOR reduce 180 -- dropped by precedence BITXOR shift 127 - BITXOR reduce 180 -- dropped by precedence BITAND shift 129 - BITAND reduce 180 -- dropped by precedence LSHIFT shift 131 - LSHIFT reduce 180 -- dropped by precedence RSHIFT shift 130 - RSHIFT reduce 180 -- dropped by precedence PLUS shift 136 - PLUS reduce 180 -- dropped by precedence MINUS shift 135 - MINUS reduce 180 -- dropped by precedence DIVIDE shift 133 - DIVIDE reduce 180 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 180 -- dropped by precedence MOD shift 132 - MOD reduce 180 -- dropped by precedence - BITNOT reduce 180 - LPAREN reduce 180 - LSQBRACKET reduce 180 - PERIOD reduce 180 - SEMICOLON reduce 180 - NAME reduce 180 - COLON reduce 180 - FUNCTION reduce 180 - RPAREN reduce 180 - LBRACKET reduce 180 - VAR reduce 180 - NUMBER reduce 180 - RSQBRACKET reduce 180 - KILLS reduce 180 - TRGCONST reduce 180 - L2V reduce 180 - MAPSTRING reduce 180 - UNIT reduce 180 - SWITCH reduce 180 - LOCATION reduce 180 - STATTXTTBL reduce 180 - VARRAY reduce 180 - STATIC reduce 180 - CONST reduce 180 - INC reduce 180 - DEC reduce 180 - ONCE reduce 180 - IF reduce 180 - SWITCHCASE reduce 180 - WHILE reduce 180 - FOR reduce 180 - FOREACH reduce 180 - CONTINUE reduce 180 - BREAK reduce 180 - RETURN reduce 180 - ACTIONNAME reduce 180 + {default} reduce 180 -State 211: +State 176: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -20966,80 +17535,25 @@ State 211: (176) constExpr ::= constExpr LT constExpr * constExpr ::= constExpr * GT constExpr - QMARK reduce 176 - COMMA reduce 176 - LOR reduce 176 - LAND reduce 176 EQ error - EQ reduce 176 LE error - LE reduce 176 LT error - LT reduce 176 GE error - GE reduce 176 GT error - GT reduce 176 NE error - NE reduce 176 BITOR shift 128 - BITOR reduce 176 -- dropped by precedence BITXOR shift 127 - BITXOR reduce 176 -- dropped by precedence BITAND shift 129 - BITAND reduce 176 -- dropped by precedence LSHIFT shift 131 - LSHIFT reduce 176 -- dropped by precedence RSHIFT shift 130 - RSHIFT reduce 176 -- dropped by precedence PLUS shift 136 - PLUS reduce 176 -- dropped by precedence MINUS shift 135 - MINUS reduce 176 -- dropped by precedence DIVIDE shift 133 - DIVIDE reduce 176 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 176 -- dropped by precedence MOD shift 132 - MOD reduce 176 -- dropped by precedence - BITNOT reduce 176 - LPAREN reduce 176 - LSQBRACKET reduce 176 - PERIOD reduce 176 - SEMICOLON reduce 176 - NAME reduce 176 - COLON reduce 176 - FUNCTION reduce 176 - RPAREN reduce 176 - LBRACKET reduce 176 - VAR reduce 176 - NUMBER reduce 176 - RSQBRACKET reduce 176 - KILLS reduce 176 - TRGCONST reduce 176 - L2V reduce 176 - MAPSTRING reduce 176 - UNIT reduce 176 - SWITCH reduce 176 - LOCATION reduce 176 - STATTXTTBL reduce 176 - VARRAY reduce 176 - STATIC reduce 176 - CONST reduce 176 - INC reduce 176 - DEC reduce 176 - ONCE reduce 176 - IF reduce 176 - SWITCHCASE reduce 176 - WHILE reduce 176 - FOR reduce 176 - FOREACH reduce 176 - CONTINUE reduce 176 - BREAK reduce 176 - RETURN reduce 176 - ACTIONNAME reduce 176 + {default} reduce 176 -State 212: +State 177: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -21058,80 +17572,25 @@ State 212: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 172 - COMMA reduce 172 - LOR reduce 172 - LAND reduce 172 EQ error - EQ reduce 172 LE error - LE reduce 172 LT error - LT reduce 172 GE error - GE reduce 172 GT error - GT reduce 172 NE error - NE reduce 172 BITOR shift 128 - BITOR reduce 172 -- dropped by precedence BITXOR shift 127 - BITXOR reduce 172 -- dropped by precedence BITAND shift 129 - BITAND reduce 172 -- dropped by precedence LSHIFT shift 131 - LSHIFT reduce 172 -- dropped by precedence RSHIFT shift 130 - RSHIFT reduce 172 -- dropped by precedence PLUS shift 136 - PLUS reduce 172 -- dropped by precedence MINUS shift 135 - MINUS reduce 172 -- dropped by precedence DIVIDE shift 133 - DIVIDE reduce 172 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 172 -- dropped by precedence MOD shift 132 - MOD reduce 172 -- dropped by precedence - BITNOT reduce 172 - LPAREN reduce 172 - LSQBRACKET reduce 172 - PERIOD reduce 172 - SEMICOLON reduce 172 - NAME reduce 172 - COLON reduce 172 - FUNCTION reduce 172 - RPAREN reduce 172 - LBRACKET reduce 172 - VAR reduce 172 - NUMBER reduce 172 - RSQBRACKET reduce 172 - KILLS reduce 172 - TRGCONST reduce 172 - L2V reduce 172 - MAPSTRING reduce 172 - UNIT reduce 172 - SWITCH reduce 172 - LOCATION reduce 172 - STATTXTTBL reduce 172 - VARRAY reduce 172 - STATIC reduce 172 - CONST reduce 172 - INC reduce 172 - DEC reduce 172 - ONCE reduce 172 - IF reduce 172 - SWITCHCASE reduce 172 - WHILE reduce 172 - FOR reduce 172 - FOREACH reduce 172 - CONTINUE reduce 172 - BREAK reduce 172 - RETURN reduce 172 - ACTIONNAME reduce 172 + {default} reduce 172 -State 213: +State 178: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -21150,80 +17609,25 @@ State 213: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 168 - COMMA reduce 168 - LOR reduce 168 - LAND reduce 168 EQ error - EQ reduce 168 LE error - LE reduce 168 LT error - LT reduce 168 GE error - GE reduce 168 GT error - GT reduce 168 NE error - NE reduce 168 BITOR shift 128 - BITOR reduce 168 -- dropped by precedence BITXOR shift 127 - BITXOR reduce 168 -- dropped by precedence BITAND shift 129 - BITAND reduce 168 -- dropped by precedence LSHIFT shift 131 - LSHIFT reduce 168 -- dropped by precedence RSHIFT shift 130 - RSHIFT reduce 168 -- dropped by precedence PLUS shift 136 - PLUS reduce 168 -- dropped by precedence MINUS shift 135 - MINUS reduce 168 -- dropped by precedence DIVIDE shift 133 - DIVIDE reduce 168 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 168 -- dropped by precedence MOD shift 132 - MOD reduce 168 -- dropped by precedence - BITNOT reduce 168 - LPAREN reduce 168 - LSQBRACKET reduce 168 - PERIOD reduce 168 - SEMICOLON reduce 168 - NAME reduce 168 - COLON reduce 168 - FUNCTION reduce 168 - RPAREN reduce 168 - LBRACKET reduce 168 - VAR reduce 168 - NUMBER reduce 168 - RSQBRACKET reduce 168 - KILLS reduce 168 - TRGCONST reduce 168 - L2V reduce 168 - MAPSTRING reduce 168 - UNIT reduce 168 - SWITCH reduce 168 - LOCATION reduce 168 - STATTXTTBL reduce 168 - VARRAY reduce 168 - STATIC reduce 168 - CONST reduce 168 - INC reduce 168 - DEC reduce 168 - ONCE reduce 168 - IF reduce 168 - SWITCHCASE reduce 168 - WHILE reduce 168 - FOR reduce 168 - FOREACH reduce 168 - CONTINUE reduce 168 - BREAK reduce 168 - RETURN reduce 168 - ACTIONNAME reduce 168 + {default} reduce 168 -State 214: +State 179: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -21242,796 +17646,27 @@ State 214: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 164 - COMMA reduce 164 - LOR reduce 164 - LAND reduce 164 EQ error - EQ reduce 164 LE error - LE reduce 164 LT error - LT reduce 164 GE error - GE reduce 164 GT error - GT reduce 164 NE error - NE reduce 164 BITOR shift 128 - BITOR reduce 164 -- dropped by precedence BITXOR shift 127 - BITXOR reduce 164 -- dropped by precedence BITAND shift 129 - BITAND reduce 164 -- dropped by precedence LSHIFT shift 131 - LSHIFT reduce 164 -- dropped by precedence RSHIFT shift 130 - RSHIFT reduce 164 -- dropped by precedence PLUS shift 136 - PLUS reduce 164 -- dropped by precedence MINUS shift 135 - MINUS reduce 164 -- dropped by precedence DIVIDE shift 133 - DIVIDE reduce 164 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 164 -- dropped by precedence MOD shift 132 - MOD reduce 164 -- dropped by precedence - BITNOT reduce 164 - LPAREN reduce 164 - LSQBRACKET reduce 164 - PERIOD reduce 164 - SEMICOLON reduce 164 - NAME reduce 164 - COLON reduce 164 - FUNCTION reduce 164 - RPAREN reduce 164 - LBRACKET reduce 164 - VAR reduce 164 - NUMBER reduce 164 - RSQBRACKET reduce 164 - KILLS reduce 164 - TRGCONST reduce 164 - L2V reduce 164 - MAPSTRING reduce 164 - UNIT reduce 164 - SWITCH reduce 164 - LOCATION reduce 164 - STATTXTTBL reduce 164 - VARRAY reduce 164 - STATIC reduce 164 - CONST reduce 164 - INC reduce 164 - DEC reduce 164 - ONCE reduce 164 - IF reduce 164 - SWITCHCASE reduce 164 - WHILE reduce 164 - FOR reduce 164 - FOREACH reduce 164 - CONTINUE reduce 164 - BREAK reduce 164 - RETURN reduce 164 - ACTIONNAME reduce 164 - -State 215: - (272) logicExpr ::= KILLS LPAREN fArgs RPAREN * - - QMARK reduce 272 - COMMA reduce 272 - LOR reduce 272 - LAND reduce 272 - EQ reduce 272 - LE reduce 272 - LT reduce 272 - GE reduce 272 - GT reduce 272 - NE reduce 272 - BITOR reduce 272 - BITXOR reduce 272 - BITAND reduce 272 - LSHIFT reduce 272 - RSHIFT reduce 272 - PLUS reduce 272 - MINUS reduce 272 - DIVIDE reduce 272 - MULTIPLY reduce 272 - MOD reduce 272 - BITNOT reduce 272 - LPAREN reduce 272 - LSQBRACKET reduce 272 - PERIOD reduce 272 - SEMICOLON reduce 272 - NAME reduce 272 - COLON reduce 272 - FUNCTION reduce 272 - RPAREN reduce 272 - LBRACKET reduce 272 - VAR reduce 272 - NUMBER reduce 272 - RSQBRACKET reduce 272 - KILLS reduce 272 - TRGCONST reduce 272 - L2V reduce 272 - MAPSTRING reduce 272 - UNIT reduce 272 - SWITCH reduce 272 - LOCATION reduce 272 - STATTXTTBL reduce 272 - VARRAY reduce 272 - STATIC reduce 272 - CONST reduce 272 - INC reduce 272 - DEC reduce 272 - ONCE reduce 272 - IF reduce 272 - SWITCHCASE reduce 272 - WHILE reduce 272 - FOR reduce 272 - FOREACH reduce 272 - CONTINUE reduce 272 - BREAK reduce 272 - RETURN reduce 272 - ACTIONNAME reduce 272 - -State 216: - (107) funcexpr ::= NAME LPAREN fArgs RPAREN * - - QMARK reduce 107 - COMMA reduce 107 - LOR reduce 107 - LAND reduce 107 - EQ reduce 107 - LE reduce 107 - LT reduce 107 - GE reduce 107 - GT reduce 107 - NE reduce 107 - BITOR reduce 107 - BITXOR reduce 107 - BITAND reduce 107 - LSHIFT reduce 107 - RSHIFT reduce 107 - PLUS reduce 107 - MINUS reduce 107 - DIVIDE reduce 107 - MULTIPLY reduce 107 - MOD reduce 107 - BITNOT reduce 107 - LPAREN reduce 107 - LSQBRACKET reduce 107 - PERIOD reduce 107 - SEMICOLON reduce 107 - NAME reduce 107 - COLON reduce 107 - FUNCTION reduce 107 - RPAREN reduce 107 - LBRACKET reduce 107 - VAR reduce 107 - NUMBER reduce 107 - RSQBRACKET reduce 107 - KILLS reduce 107 - TRGCONST reduce 107 - L2V reduce 107 - MAPSTRING reduce 107 - UNIT reduce 107 - SWITCH reduce 107 - LOCATION reduce 107 - STATTXTTBL reduce 107 - VARRAY reduce 107 - STATIC reduce 107 - CONST reduce 107 - INC reduce 107 - DEC reduce 107 - ONCE reduce 107 - IF reduce 107 - SWITCHCASE reduce 107 - WHILE reduce 107 - FOR reduce 107 - FOREACH reduce 107 - CONTINUE reduce 107 - BREAK reduce 107 - RETURN reduce 107 - ACTIONNAME reduce 107 - -State 217: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (183) logicExpr ::= nonConstExpr GT nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 183 - COMMA reduce 183 - LOR reduce 183 - LAND reduce 183 - EQ reduce 183 - LE reduce 183 - LT reduce 183 - GE reduce 183 - GT reduce 183 - NE reduce 183 - BITOR shift 66 - BITOR reduce 183 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 183 -- dropped by precedence - BITAND shift 67 - BITAND reduce 183 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 183 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 183 -- dropped by precedence - PLUS shift 74 - PLUS reduce 183 -- dropped by precedence - MINUS shift 73 - MINUS reduce 183 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 183 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 183 -- dropped by precedence - MOD shift 70 - MOD reduce 183 -- dropped by precedence - BITNOT reduce 183 - LPAREN shift 23 - LPAREN reduce 183 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 183 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 183 -- dropped by precedence - SEMICOLON reduce 183 - NAME reduce 183 - COLON reduce 183 - FUNCTION reduce 183 - RPAREN reduce 183 - LBRACKET reduce 183 - VAR reduce 183 - NUMBER reduce 183 - RSQBRACKET reduce 183 - KILLS reduce 183 - TRGCONST reduce 183 - L2V reduce 183 - MAPSTRING reduce 183 - UNIT reduce 183 - SWITCH reduce 183 - LOCATION reduce 183 - STATTXTTBL reduce 183 - VARRAY reduce 183 - STATIC reduce 183 - CONST reduce 183 - INC reduce 183 - DEC reduce 183 - ONCE reduce 183 - IF reduce 183 - SWITCHCASE reduce 183 - WHILE reduce 183 - FOR reduce 183 - FOREACH reduce 183 - CONTINUE reduce 183 - BREAK reduce 183 - RETURN reduce 183 - ACTIONNAME reduce 183 - -State 218: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (179) logicExpr ::= nonConstExpr LT nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 179 - COMMA reduce 179 - LOR reduce 179 - LAND reduce 179 - EQ reduce 179 - LE reduce 179 - LT reduce 179 - GE reduce 179 - GT reduce 179 - NE reduce 179 - BITOR shift 66 - BITOR reduce 179 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 179 -- dropped by precedence - BITAND shift 67 - BITAND reduce 179 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 179 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 179 -- dropped by precedence - PLUS shift 74 - PLUS reduce 179 -- dropped by precedence - MINUS shift 73 - MINUS reduce 179 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 179 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 179 -- dropped by precedence - MOD shift 70 - MOD reduce 179 -- dropped by precedence - BITNOT reduce 179 - LPAREN shift 23 - LPAREN reduce 179 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 179 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 179 -- dropped by precedence - SEMICOLON reduce 179 - NAME reduce 179 - COLON reduce 179 - FUNCTION reduce 179 - RPAREN reduce 179 - LBRACKET reduce 179 - VAR reduce 179 - NUMBER reduce 179 - RSQBRACKET reduce 179 - KILLS reduce 179 - TRGCONST reduce 179 - L2V reduce 179 - MAPSTRING reduce 179 - UNIT reduce 179 - SWITCH reduce 179 - LOCATION reduce 179 - STATTXTTBL reduce 179 - VARRAY reduce 179 - STATIC reduce 179 - CONST reduce 179 - INC reduce 179 - DEC reduce 179 - ONCE reduce 179 - IF reduce 179 - SWITCHCASE reduce 179 - WHILE reduce 179 - FOR reduce 179 - FOREACH reduce 179 - CONTINUE reduce 179 - BREAK reduce 179 - RETURN reduce 179 - ACTIONNAME reduce 179 - -State 219: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (175) logicExpr ::= nonConstExpr GE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 175 - COMMA reduce 175 - LOR reduce 175 - LAND reduce 175 - EQ reduce 175 - LE reduce 175 - LT reduce 175 - GE reduce 175 - GT reduce 175 - NE reduce 175 - BITOR shift 66 - BITOR reduce 175 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 175 -- dropped by precedence - BITAND shift 67 - BITAND reduce 175 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 175 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 175 -- dropped by precedence - PLUS shift 74 - PLUS reduce 175 -- dropped by precedence - MINUS shift 73 - MINUS reduce 175 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 175 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 175 -- dropped by precedence - MOD shift 70 - MOD reduce 175 -- dropped by precedence - BITNOT reduce 175 - LPAREN shift 23 - LPAREN reduce 175 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 175 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 175 -- dropped by precedence - SEMICOLON reduce 175 - NAME reduce 175 - COLON reduce 175 - FUNCTION reduce 175 - RPAREN reduce 175 - LBRACKET reduce 175 - VAR reduce 175 - NUMBER reduce 175 - RSQBRACKET reduce 175 - KILLS reduce 175 - TRGCONST reduce 175 - L2V reduce 175 - MAPSTRING reduce 175 - UNIT reduce 175 - SWITCH reduce 175 - LOCATION reduce 175 - STATTXTTBL reduce 175 - VARRAY reduce 175 - STATIC reduce 175 - CONST reduce 175 - INC reduce 175 - DEC reduce 175 - ONCE reduce 175 - IF reduce 175 - SWITCHCASE reduce 175 - WHILE reduce 175 - FOR reduce 175 - FOREACH reduce 175 - CONTINUE reduce 175 - BREAK reduce 175 - RETURN reduce 175 - ACTIONNAME reduce 175 - -State 220: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (171) logicExpr ::= nonConstExpr LE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 171 - COMMA reduce 171 - LOR reduce 171 - LAND reduce 171 - EQ reduce 171 - LE reduce 171 - LT reduce 171 - GE reduce 171 - GT reduce 171 - NE reduce 171 - BITOR shift 66 - BITOR reduce 171 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 171 -- dropped by precedence - BITAND shift 67 - BITAND reduce 171 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 171 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 171 -- dropped by precedence - PLUS shift 74 - PLUS reduce 171 -- dropped by precedence - MINUS shift 73 - MINUS reduce 171 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 171 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 171 -- dropped by precedence - MOD shift 70 - MOD reduce 171 -- dropped by precedence - BITNOT reduce 171 - LPAREN shift 23 - LPAREN reduce 171 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 171 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 171 -- dropped by precedence - SEMICOLON reduce 171 - NAME reduce 171 - COLON reduce 171 - FUNCTION reduce 171 - RPAREN reduce 171 - LBRACKET reduce 171 - VAR reduce 171 - NUMBER reduce 171 - RSQBRACKET reduce 171 - KILLS reduce 171 - TRGCONST reduce 171 - L2V reduce 171 - MAPSTRING reduce 171 - UNIT reduce 171 - SWITCH reduce 171 - LOCATION reduce 171 - STATTXTTBL reduce 171 - VARRAY reduce 171 - STATIC reduce 171 - CONST reduce 171 - INC reduce 171 - DEC reduce 171 - ONCE reduce 171 - IF reduce 171 - SWITCHCASE reduce 171 - WHILE reduce 171 - FOR reduce 171 - FOREACH reduce 171 - CONTINUE reduce 171 - BREAK reduce 171 - RETURN reduce 171 - ACTIONNAME reduce 171 + {default} reduce 164 -State 221: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (167) logicExpr ::= nonConstExpr NE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 167 - COMMA reduce 167 - LOR reduce 167 - LAND reduce 167 - EQ reduce 167 - LE reduce 167 - LT reduce 167 - GE reduce 167 - GT reduce 167 - NE reduce 167 - BITOR shift 66 - BITOR reduce 167 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 167 -- dropped by precedence - BITAND shift 67 - BITAND reduce 167 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 167 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 167 -- dropped by precedence - PLUS shift 74 - PLUS reduce 167 -- dropped by precedence - MINUS shift 73 - MINUS reduce 167 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 167 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 167 -- dropped by precedence - MOD shift 70 - MOD reduce 167 -- dropped by precedence - BITNOT reduce 167 - LPAREN shift 23 - LPAREN reduce 167 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 167 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 167 -- dropped by precedence - SEMICOLON reduce 167 - NAME reduce 167 - COLON reduce 167 - FUNCTION reduce 167 - RPAREN reduce 167 - LBRACKET reduce 167 - VAR reduce 167 - NUMBER reduce 167 - RSQBRACKET reduce 167 - KILLS reduce 167 - TRGCONST reduce 167 - L2V reduce 167 - MAPSTRING reduce 167 - UNIT reduce 167 - SWITCH reduce 167 - LOCATION reduce 167 - STATTXTTBL reduce 167 - VARRAY reduce 167 - STATIC reduce 167 - CONST reduce 167 - INC reduce 167 - DEC reduce 167 - ONCE reduce 167 - IF reduce 167 - SWITCHCASE reduce 167 - WHILE reduce 167 - FOR reduce 167 - FOREACH reduce 167 - CONTINUE reduce 167 - BREAK reduce 167 - RETURN reduce 167 - ACTIONNAME reduce 167 - -State 222: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (163) logicExpr ::= nonConstExpr EQ nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 163 - COMMA reduce 163 - LOR reduce 163 - LAND reduce 163 - EQ reduce 163 - LE reduce 163 - LT reduce 163 - GE reduce 163 - GT reduce 163 - NE reduce 163 - BITOR shift 66 - BITOR reduce 163 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 163 -- dropped by precedence - BITAND shift 67 - BITAND reduce 163 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 163 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 163 -- dropped by precedence - PLUS shift 74 - PLUS reduce 163 -- dropped by precedence - MINUS shift 73 - MINUS reduce 163 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 163 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 163 -- dropped by precedence - MOD shift 70 - MOD reduce 163 -- dropped by precedence - BITNOT reduce 163 - LPAREN shift 23 - LPAREN reduce 163 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 163 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 163 -- dropped by precedence - SEMICOLON reduce 163 - NAME reduce 163 - COLON reduce 163 - FUNCTION reduce 163 - RPAREN reduce 163 - LBRACKET reduce 163 - VAR reduce 163 - NUMBER reduce 163 - RSQBRACKET reduce 163 - KILLS reduce 163 - TRGCONST reduce 163 - L2V reduce 163 - MAPSTRING reduce 163 - UNIT reduce 163 - SWITCH reduce 163 - LOCATION reduce 163 - STATTXTTBL reduce 163 - VARRAY reduce 163 - STATIC reduce 163 - CONST reduce 163 - INC reduce 163 - DEC reduce 163 - ONCE reduce 163 - IF reduce 163 - SWITCHCASE reduce 163 - WHILE reduce 163 - FOR reduce 163 - FOREACH reduce 163 - CONTINUE reduce 163 - BREAK reduce 163 - RETURN reduce 163 - ACTIONNAME reduce 163 - -State 223: - (87) constExpr ::= lambdaExprStart stmt * - - QMARK reduce 87 - COMMA reduce 87 - LOR reduce 87 - LAND reduce 87 - EQ reduce 87 - LE reduce 87 - LT reduce 87 - GE reduce 87 - GT reduce 87 - NE reduce 87 - BITOR reduce 87 - BITXOR reduce 87 - BITAND reduce 87 - LSHIFT reduce 87 - RSHIFT reduce 87 - PLUS reduce 87 - MINUS reduce 87 - DIVIDE reduce 87 - MULTIPLY reduce 87 - MOD reduce 87 - BITNOT reduce 87 - LPAREN reduce 87 - LSQBRACKET reduce 87 - PERIOD reduce 87 - SEMICOLON reduce 87 - NAME reduce 87 - COLON reduce 87 - FUNCTION reduce 87 - RPAREN reduce 87 - LBRACKET reduce 87 - VAR reduce 87 - NUMBER reduce 87 - RSQBRACKET reduce 87 - KILLS reduce 87 - TRGCONST reduce 87 - L2V reduce 87 - MAPSTRING reduce 87 - UNIT reduce 87 - SWITCH reduce 87 - LOCATION reduce 87 - STATTXTTBL reduce 87 - VARRAY reduce 87 - STATIC reduce 87 - CONST reduce 87 - INC reduce 87 - DEC reduce 87 - ONCE reduce 87 - IF reduce 87 - SWITCHCASE reduce 87 - WHILE reduce 87 - FOR reduce 87 - FOREACH reduce 87 - CONTINUE reduce 87 - BREAK reduce 87 - RETURN reduce 87 - ACTIONNAME reduce 87 - -State 224: +State 180: + (91) fConstArg ::= constExpr * constExpr ::= constExpr * PLUS constExpr - (124) constExpr ::= constExpr PLUS constExpr * nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr nonConstExpr ::= constExpr * MINUS nonConstExpr @@ -22052,658 +17687,37 @@ State 224: constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr - QMARK reduce 124 - COMMA reduce 124 - LOR reduce 124 - LAND reduce 124 - EQ shift 138 -- dropped by precedence - EQ reduce 124 - LE shift 125 -- dropped by precedence - LE reduce 124 - LT shift 123 -- dropped by precedence - LT reduce 124 - GE shift 124 -- dropped by precedence - GE reduce 124 - GT shift 122 -- dropped by precedence - GT reduce 124 - NE shift 126 -- dropped by precedence - NE reduce 124 - BITOR shift 102 -- dropped by precedence - BITOR reduce 124 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 124 - BITAND shift 103 -- dropped by precedence - BITAND reduce 124 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 124 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 124 - PLUS shift 113 -- dropped by precedence - PLUS reduce 124 - MINUS shift 112 -- dropped by precedence - MINUS reduce 124 - DIVIDE shift 107 - DIVIDE reduce 124 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 124 -- dropped by precedence - MOD shift 106 - MOD reduce 124 -- dropped by precedence - BITNOT reduce 124 - LPAREN reduce 124 - LSQBRACKET reduce 124 - PERIOD reduce 124 - SEMICOLON reduce 124 - NAME reduce 124 - COLON reduce 124 - FUNCTION reduce 124 - RPAREN reduce 124 - LBRACKET reduce 124 - VAR reduce 124 - NUMBER reduce 124 - RSQBRACKET reduce 124 - KILLS reduce 124 - TRGCONST reduce 124 - L2V reduce 124 - MAPSTRING reduce 124 - UNIT reduce 124 - SWITCH reduce 124 - LOCATION reduce 124 - STATTXTTBL reduce 124 - VARRAY reduce 124 - STATIC reduce 124 - CONST reduce 124 - INC reduce 124 - DEC reduce 124 - ONCE reduce 124 - IF reduce 124 - SWITCHCASE reduce 124 - WHILE reduce 124 - FOR reduce 124 - FOREACH reduce 124 - CONTINUE reduce 124 - BREAK reduce 124 - RETURN reduce 124 - ACTIONNAME reduce 124 - -State 225: - (108) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * - - QMARK reduce 108 - COMMA reduce 108 - LOR reduce 108 - LAND reduce 108 - EQ reduce 108 - LE reduce 108 - LT reduce 108 - GE reduce 108 - GT reduce 108 - NE reduce 108 - BITOR reduce 108 - BITXOR reduce 108 - BITAND reduce 108 - LSHIFT reduce 108 - RSHIFT reduce 108 - PLUS reduce 108 - MINUS reduce 108 - DIVIDE reduce 108 - MULTIPLY reduce 108 - MOD reduce 108 - BITNOT reduce 108 - LPAREN reduce 108 - LSQBRACKET reduce 108 - PERIOD reduce 108 - SEMICOLON reduce 108 - NAME reduce 108 - COLON reduce 108 - FUNCTION reduce 108 - RPAREN reduce 108 - LBRACKET reduce 108 - VAR reduce 108 - NUMBER reduce 108 - RSQBRACKET reduce 108 - KILLS reduce 108 - TRGCONST reduce 108 - L2V reduce 108 - MAPSTRING reduce 108 - UNIT reduce 108 - SWITCH reduce 108 - LOCATION reduce 108 - STATTXTTBL reduce 108 - VARRAY reduce 108 - STATIC reduce 108 - CONST reduce 108 - INC reduce 108 - DEC reduce 108 - ONCE reduce 108 - IF reduce 108 - SWITCHCASE reduce 108 - WHILE reduce 108 - FOR reduce 108 - FOREACH reduce 108 - CONTINUE reduce 108 - BREAK reduce 108 - RETURN reduce 108 - ACTIONNAME reduce 108 - -State 226: - logicExpr ::= logicExpr * LAND logicExpr - (185) logicExpr ::= logicExpr LAND logicExpr * - logicExpr ::= logicExpr * LOR logicExpr - - QMARK reduce 185 - COMMA reduce 185 - LOR shift 82 -- dropped by precedence - LOR reduce 185 - LAND shift 84 -- dropped by precedence - LAND reduce 185 - EQ reduce 185 - LE reduce 185 - LT reduce 185 - GE reduce 185 - GT reduce 185 - NE reduce 185 - BITOR reduce 185 - BITXOR reduce 185 - BITAND reduce 185 - LSHIFT reduce 185 - RSHIFT reduce 185 - PLUS reduce 185 - MINUS reduce 185 - DIVIDE reduce 185 - MULTIPLY reduce 185 - MOD reduce 185 - BITNOT reduce 185 - LPAREN reduce 185 - LSQBRACKET reduce 185 - PERIOD reduce 185 - SEMICOLON reduce 185 - NAME reduce 185 - COLON reduce 185 - FUNCTION reduce 185 - RPAREN reduce 185 - LBRACKET reduce 185 - VAR reduce 185 - NUMBER reduce 185 - RSQBRACKET reduce 185 - KILLS reduce 185 - TRGCONST reduce 185 - L2V reduce 185 - MAPSTRING reduce 185 - UNIT reduce 185 - SWITCH reduce 185 - LOCATION reduce 185 - STATTXTTBL reduce 185 - VARRAY reduce 185 - STATIC reduce 185 - CONST reduce 185 - INC reduce 185 - DEC reduce 185 - ONCE reduce 185 - IF reduce 185 - SWITCHCASE reduce 185 - WHILE reduce 185 - FOR reduce 185 - FOREACH reduce 185 - CONTINUE reduce 185 - BREAK reduce 185 - RETURN reduce 185 - ACTIONNAME reduce 185 - -State 227: - (111) nonConstExpr ::= LPAREN logicExpr RPAREN * - - QMARK reduce 111 - COMMA reduce 111 - LOR reduce 111 - LAND reduce 111 - EQ reduce 111 - LE reduce 111 - LT reduce 111 - GE reduce 111 - GT reduce 111 - NE reduce 111 - BITOR reduce 111 - BITXOR reduce 111 - BITAND reduce 111 - LSHIFT reduce 111 - RSHIFT reduce 111 - PLUS reduce 111 - MINUS reduce 111 - DIVIDE reduce 111 - MULTIPLY reduce 111 - MOD reduce 111 - BITNOT reduce 111 - LPAREN reduce 111 - LSQBRACKET reduce 111 - PERIOD reduce 111 - SEMICOLON reduce 111 - NAME reduce 111 - COLON reduce 111 - FUNCTION reduce 111 - RPAREN reduce 111 - LBRACKET reduce 111 - VAR reduce 111 - NUMBER reduce 111 - RSQBRACKET reduce 111 - KILLS reduce 111 - TRGCONST reduce 111 - L2V reduce 111 - MAPSTRING reduce 111 - UNIT reduce 111 - SWITCH reduce 111 - LOCATION reduce 111 - STATTXTTBL reduce 111 - VARRAY reduce 111 - STATIC reduce 111 - CONST reduce 111 - INC reduce 111 - DEC reduce 111 - ONCE reduce 111 - IF reduce 111 - SWITCHCASE reduce 111 - WHILE reduce 111 - FOR reduce 111 - FOREACH reduce 111 - CONTINUE reduce 111 - BREAK reduce 111 - RETURN reduce 111 - ACTIONNAME reduce 111 - -State 228: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - (127) constExpr ::= constExpr MINUS constExpr * - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - - QMARK reduce 127 - COMMA reduce 127 - LOR reduce 127 - LAND reduce 127 - EQ shift 138 -- dropped by precedence - EQ reduce 127 - LE shift 125 -- dropped by precedence - LE reduce 127 - LT shift 123 -- dropped by precedence - LT reduce 127 - GE shift 124 -- dropped by precedence - GE reduce 127 - GT shift 122 -- dropped by precedence - GT reduce 127 - NE shift 126 -- dropped by precedence - NE reduce 127 - BITOR shift 102 -- dropped by precedence - BITOR reduce 127 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 127 - BITAND shift 103 -- dropped by precedence - BITAND reduce 127 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 127 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 127 - PLUS shift 113 -- dropped by precedence - PLUS reduce 127 - MINUS shift 112 -- dropped by precedence - MINUS reduce 127 + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 DIVIDE shift 107 - DIVIDE reduce 127 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 127 -- dropped by precedence MOD shift 106 - MOD reduce 127 -- dropped by precedence - BITNOT reduce 127 - LPAREN reduce 127 - LSQBRACKET reduce 127 - PERIOD reduce 127 - SEMICOLON reduce 127 - NAME reduce 127 - COLON reduce 127 - FUNCTION reduce 127 - RPAREN reduce 127 - LBRACKET reduce 127 - VAR reduce 127 - NUMBER reduce 127 - RSQBRACKET reduce 127 - KILLS reduce 127 - TRGCONST reduce 127 - L2V reduce 127 - MAPSTRING reduce 127 - UNIT reduce 127 - SWITCH reduce 127 - LOCATION reduce 127 - STATTXTTBL reduce 127 - VARRAY reduce 127 - STATIC reduce 127 - CONST reduce 127 - INC reduce 127 - DEC reduce 127 - ONCE reduce 127 - IF reduce 127 - SWITCHCASE reduce 127 - WHILE reduce 127 - FOR reduce 127 - FOREACH reduce 127 - CONTINUE reduce 127 - BREAK reduce 127 - RETURN reduce 127 - ACTIONNAME reduce 127 - -State 229: - (123) nonConstExpr ::= nonConstExpr QMARK expr COLON expr * - - QMARK reduce 123 - COMMA reduce 123 - LOR reduce 123 - LAND reduce 123 - EQ reduce 123 - LE reduce 123 - LT reduce 123 - GE reduce 123 - GT reduce 123 - NE reduce 123 - BITOR reduce 123 - BITXOR reduce 123 - BITAND reduce 123 - LSHIFT reduce 123 - RSHIFT reduce 123 - PLUS reduce 123 - MINUS reduce 123 - DIVIDE reduce 123 - MULTIPLY reduce 123 - MOD reduce 123 - BITNOT reduce 123 - LPAREN reduce 123 - LSQBRACKET reduce 123 - PERIOD reduce 123 - SEMICOLON reduce 123 - NAME reduce 123 - COLON reduce 123 - FUNCTION reduce 123 - RPAREN reduce 123 - LBRACKET reduce 123 - VAR reduce 123 - NUMBER reduce 123 - RSQBRACKET reduce 123 - KILLS reduce 123 - TRGCONST reduce 123 - L2V reduce 123 - MAPSTRING reduce 123 - UNIT reduce 123 - SWITCH reduce 123 - LOCATION reduce 123 - STATTXTTBL reduce 123 - VARRAY reduce 123 - STATIC reduce 123 - CONST reduce 123 - INC reduce 123 - DEC reduce 123 - ONCE reduce 123 - IF reduce 123 - SWITCHCASE reduce 123 - WHILE reduce 123 - FOR reduce 123 - FOREACH reduce 123 - CONTINUE reduce 123 - BREAK reduce 123 - RETURN reduce 123 - ACTIONNAME reduce 123 - -State 230: - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr - (186) logicExpr ::= logicExpr LOR logicExpr * - - QMARK reduce 186 - COMMA reduce 186 - LOR shift 82 -- dropped by precedence - LOR reduce 186 - LAND shift 84 - LAND reduce 186 -- dropped by precedence - EQ reduce 186 - LE reduce 186 - LT reduce 186 - GE reduce 186 - GT reduce 186 - NE reduce 186 - BITOR reduce 186 - BITXOR reduce 186 - BITAND reduce 186 - LSHIFT reduce 186 - RSHIFT reduce 186 - PLUS reduce 186 - MINUS reduce 186 - DIVIDE reduce 186 - MULTIPLY reduce 186 - MOD reduce 186 - BITNOT reduce 186 - LPAREN reduce 186 - LSQBRACKET reduce 186 - PERIOD reduce 186 - SEMICOLON reduce 186 - NAME reduce 186 - COLON reduce 186 - FUNCTION reduce 186 - RPAREN reduce 186 - LBRACKET reduce 186 - VAR reduce 186 - NUMBER reduce 186 - RSQBRACKET reduce 186 - KILLS reduce 186 - TRGCONST reduce 186 - L2V reduce 186 - MAPSTRING reduce 186 - UNIT reduce 186 - SWITCH reduce 186 - LOCATION reduce 186 - STATTXTTBL reduce 186 - VARRAY reduce 186 - STATIC reduce 186 - CONST reduce 186 - INC reduce 186 - DEC reduce 186 - ONCE reduce 186 - IF reduce 186 - SWITCHCASE reduce 186 - WHILE reduce 186 - FOR reduce 186 - FOREACH reduce 186 - CONTINUE reduce 186 - BREAK reduce 186 - RETURN reduce 186 - ACTIONNAME reduce 186 - -State 231: - (114) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * - - QMARK reduce 114 - COMMA reduce 114 - LOR reduce 114 - LAND reduce 114 - EQ reduce 114 - LE reduce 114 - LT reduce 114 - GE reduce 114 - GT reduce 114 - NE reduce 114 - BITOR reduce 114 - BITXOR reduce 114 - BITAND reduce 114 - LSHIFT reduce 114 - RSHIFT reduce 114 - PLUS reduce 114 - MINUS reduce 114 - DIVIDE reduce 114 - MULTIPLY reduce 114 - MOD reduce 114 - BITNOT reduce 114 - LPAREN reduce 114 - LSQBRACKET reduce 114 - PERIOD reduce 114 - SEMICOLON reduce 114 - NAME reduce 114 - COLON reduce 114 - FUNCTION reduce 114 - RPAREN reduce 114 - LBRACKET reduce 114 - VAR reduce 114 - NUMBER reduce 114 - RSQBRACKET reduce 114 - KILLS reduce 114 - TRGCONST reduce 114 - L2V reduce 114 - MAPSTRING reduce 114 - UNIT reduce 114 - SWITCH reduce 114 - LOCATION reduce 114 - STATTXTTBL reduce 114 - VARRAY reduce 114 - STATIC reduce 114 - CONST reduce 114 - INC reduce 114 - DEC reduce 114 - ONCE reduce 114 - IF reduce 114 - SWITCHCASE reduce 114 - WHILE reduce 114 - FOR reduce 114 - FOREACH reduce 114 - CONTINUE reduce 114 - BREAK reduce 114 - RETURN reduce 114 - ACTIONNAME reduce 114 - -State 232: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (154) constExpr ::= PLUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + {default} reduce 91 - QMARK reduce 154 - COMMA reduce 154 - LOR reduce 154 - LAND reduce 154 - EQ shift 138 -- dropped by precedence - EQ reduce 154 - LE shift 125 -- dropped by precedence - LE reduce 154 - LT shift 123 -- dropped by precedence - LT reduce 154 - GE shift 124 -- dropped by precedence - GE reduce 154 - GT shift 122 -- dropped by precedence - GT reduce 154 - NE shift 126 -- dropped by precedence - NE reduce 154 - BITOR shift 102 -- dropped by precedence - BITOR reduce 154 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 154 - BITAND shift 103 -- dropped by precedence - BITAND reduce 154 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 154 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 154 - PLUS shift 113 -- dropped by precedence - PLUS reduce 154 - MINUS shift 112 -- dropped by precedence - MINUS reduce 154 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 154 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 154 - MOD shift 106 -- dropped by precedence - MOD reduce 154 - BITNOT reduce 154 - LPAREN reduce 154 - LSQBRACKET reduce 154 - PERIOD reduce 154 - SEMICOLON reduce 154 - NAME reduce 154 - COLON reduce 154 - FUNCTION reduce 154 - RPAREN reduce 154 - LBRACKET reduce 154 - VAR reduce 154 - NUMBER reduce 154 - RSQBRACKET reduce 154 - KILLS reduce 154 - TRGCONST reduce 154 - L2V reduce 154 - MAPSTRING reduce 154 - UNIT reduce 154 - SWITCH reduce 154 - LOCATION reduce 154 - STATTXTTBL reduce 154 - VARRAY reduce 154 - STATIC reduce 154 - CONST reduce 154 - INC reduce 154 - DEC reduce 154 - ONCE reduce 154 - IF reduce 154 - SWITCHCASE reduce 154 - WHILE reduce 154 - FOR reduce 154 - FOREACH reduce 154 - CONTINUE reduce 154 - BREAK reduce 154 - RETURN reduce 154 - ACTIONNAME reduce 154 - -State 233: +State 181: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -22724,88 +17738,38 @@ State 233: nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr - (156) constExpr ::= MINUS constExpr * constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr - QMARK reduce 156 - COMMA reduce 156 - LOR reduce 156 - LAND reduce 156 - EQ shift 138 -- dropped by precedence - EQ reduce 156 - LE shift 125 -- dropped by precedence - LE reduce 156 - LT shift 123 -- dropped by precedence - LT reduce 156 - GE shift 124 -- dropped by precedence - GE reduce 156 - GT shift 122 -- dropped by precedence - GT reduce 156 - NE shift 126 -- dropped by precedence - NE reduce 156 - BITOR shift 102 -- dropped by precedence - BITOR reduce 156 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 156 - BITAND shift 103 -- dropped by precedence - BITAND reduce 156 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 156 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 156 - PLUS shift 113 -- dropped by precedence - PLUS reduce 156 - MINUS shift 112 -- dropped by precedence - MINUS reduce 156 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 156 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 156 - MOD shift 106 -- dropped by precedence - MOD reduce 156 - BITNOT reduce 156 - LPAREN reduce 156 - LSQBRACKET reduce 156 - PERIOD reduce 156 - SEMICOLON reduce 156 - NAME reduce 156 - COLON reduce 156 - FUNCTION reduce 156 - RPAREN reduce 156 - LBRACKET reduce 156 - VAR reduce 156 - NUMBER reduce 156 - RSQBRACKET reduce 156 - KILLS reduce 156 - TRGCONST reduce 156 - L2V reduce 156 - MAPSTRING reduce 156 - UNIT reduce 156 - SWITCH reduce 156 - LOCATION reduce 156 - STATTXTTBL reduce 156 - VARRAY reduce 156 - STATIC reduce 156 - CONST reduce 156 - INC reduce 156 - DEC reduce 156 - ONCE reduce 156 - IF reduce 156 - SWITCHCASE reduce 156 - WHILE reduce 156 - FOR reduce 156 - FOREACH reduce 156 - CONTINUE reduce 156 - BREAK reduce 156 - RETURN reduce 156 - ACTIONNAME reduce 156 + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 -State 234: +State 182: + (88) expr ::= constExpr * constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -22826,314 +17790,98 @@ State 234: nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr - (158) constExpr ::= BITNOT constExpr * constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr - QMARK reduce 158 - COMMA reduce 158 - LOR reduce 158 - LAND reduce 158 - EQ shift 138 -- dropped by precedence - EQ reduce 158 - LE shift 125 -- dropped by precedence - LE reduce 158 - LT shift 123 -- dropped by precedence - LT reduce 158 - GE shift 124 -- dropped by precedence - GE reduce 158 - GT shift 122 -- dropped by precedence - GT reduce 158 - NE shift 126 -- dropped by precedence - NE reduce 158 - BITOR shift 102 -- dropped by precedence - BITOR reduce 158 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 158 - BITAND shift 103 -- dropped by precedence - BITAND reduce 158 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 158 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 158 - PLUS shift 113 -- dropped by precedence - PLUS reduce 158 - MINUS shift 112 -- dropped by precedence - MINUS reduce 158 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 158 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 158 - MOD shift 106 -- dropped by precedence - MOD reduce 158 - BITNOT reduce 158 - LPAREN reduce 158 - LSQBRACKET reduce 158 - PERIOD reduce 158 - SEMICOLON reduce 158 - NAME reduce 158 - COLON reduce 158 - FUNCTION reduce 158 - RPAREN reduce 158 - LBRACKET reduce 158 - VAR reduce 158 - NUMBER reduce 158 - RSQBRACKET reduce 158 - KILLS reduce 158 - TRGCONST reduce 158 - L2V reduce 158 - MAPSTRING reduce 158 - UNIT reduce 158 - SWITCH reduce 158 - LOCATION reduce 158 - STATTXTTBL reduce 158 - VARRAY reduce 158 - STATIC reduce 158 - CONST reduce 158 - INC reduce 158 - DEC reduce 158 - ONCE reduce 158 - IF reduce 158 - SWITCHCASE reduce 158 - WHILE reduce 158 - FOR reduce 158 - FOREACH reduce 158 - CONTINUE reduce 158 - BREAK reduce 158 - RETURN reduce 158 - ACTIONNAME reduce 158 + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 88 -State 235: - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr - (187) logicExpr ::= LNOT logicExpr * +State 183: + (85) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + (195) lvalue ::= nonConstExpr LSQBRACKET expr RSQBRACKET * - QMARK reduce 187 - COMMA reduce 187 - LOR shift 82 -- dropped by precedence - LOR reduce 187 - LAND shift 84 -- dropped by precedence - LAND reduce 187 - EQ reduce 187 - LE reduce 187 - LT reduce 187 - GE reduce 187 - GT reduce 187 - NE reduce 187 - BITOR reduce 187 - BITXOR reduce 187 - BITAND reduce 187 - LSHIFT reduce 187 - RSHIFT reduce 187 - PLUS reduce 187 - MINUS reduce 187 - DIVIDE reduce 187 - MULTIPLY reduce 187 - MOD reduce 187 - BITNOT reduce 187 - LPAREN reduce 187 - LSQBRACKET reduce 187 - PERIOD reduce 187 - SEMICOLON reduce 187 - NAME reduce 187 - COLON reduce 187 - FUNCTION reduce 187 - RPAREN reduce 187 - LBRACKET reduce 187 - VAR reduce 187 - NUMBER reduce 187 - RSQBRACKET reduce 187 - KILLS reduce 187 - TRGCONST reduce 187 - L2V reduce 187 - MAPSTRING reduce 187 - UNIT reduce 187 - SWITCH reduce 187 - LOCATION reduce 187 - STATTXTTBL reduce 187 - VARRAY reduce 187 - STATIC reduce 187 - CONST reduce 187 - INC reduce 187 - DEC reduce 187 - ONCE reduce 187 - IF reduce 187 - SWITCHCASE reduce 187 - WHILE reduce 187 - FOR reduce 187 - FOREACH reduce 187 - CONTINUE reduce 187 - BREAK reduce 187 - RETURN reduce 187 - ACTIONNAME reduce 187 + QMARK reduce 85 + BITOR reduce 85 + BITXOR reduce 85 + BITAND reduce 85 + LSHIFT reduce 85 + RSHIFT reduce 85 + PLUS reduce 85 + MINUS reduce 85 + DIVIDE reduce 85 + MULTIPLY reduce 85 + MOD reduce 85 + LPAREN reduce 85 + LSQBRACKET reduce 85 + PERIOD reduce 85 + {default} reduce 195 -State 236: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - (130) constExpr ::= constExpr MULTIPLY constExpr * - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 184: + (84) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * + (197) lvalue ::= nonConstExpr PERIOD TRGCONST * - QMARK reduce 130 - COMMA reduce 130 - LOR reduce 130 - LAND reduce 130 - EQ shift 138 -- dropped by precedence - EQ reduce 130 - LE shift 125 -- dropped by precedence - LE reduce 130 - LT shift 123 -- dropped by precedence - LT reduce 130 - GE shift 124 -- dropped by precedence - GE reduce 130 - GT shift 122 -- dropped by precedence - GT reduce 130 - NE shift 126 -- dropped by precedence - NE reduce 130 - BITOR shift 102 -- dropped by precedence - BITOR reduce 130 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 130 - BITAND shift 103 -- dropped by precedence - BITAND reduce 130 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 130 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 130 - PLUS shift 113 -- dropped by precedence - PLUS reduce 130 - MINUS shift 112 -- dropped by precedence - MINUS reduce 130 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 130 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 130 - MOD shift 106 -- dropped by precedence - MOD reduce 130 - BITNOT reduce 130 - LPAREN reduce 130 - LSQBRACKET reduce 130 - PERIOD reduce 130 - SEMICOLON reduce 130 - NAME reduce 130 - COLON reduce 130 - FUNCTION reduce 130 - RPAREN reduce 130 - LBRACKET reduce 130 - VAR reduce 130 - NUMBER reduce 130 - RSQBRACKET reduce 130 - KILLS reduce 130 - TRGCONST reduce 130 - L2V reduce 130 - MAPSTRING reduce 130 - UNIT reduce 130 - SWITCH reduce 130 - LOCATION reduce 130 - STATTXTTBL reduce 130 - VARRAY reduce 130 - STATIC reduce 130 - CONST reduce 130 - INC reduce 130 - DEC reduce 130 - ONCE reduce 130 - IF reduce 130 - SWITCHCASE reduce 130 - WHILE reduce 130 - FOR reduce 130 - FOREACH reduce 130 - CONTINUE reduce 130 - BREAK reduce 130 - RETURN reduce 130 - ACTIONNAME reduce 130 + QMARK reduce 84 + BITOR reduce 84 + BITXOR reduce 84 + BITAND reduce 84 + LSHIFT reduce 84 + RSHIFT reduce 84 + PLUS reduce 84 + MINUS reduce 84 + DIVIDE reduce 84 + MULTIPLY reduce 84 + MOD reduce 84 + LPAREN reduce 84 + LSQBRACKET reduce 84 + PERIOD reduce 84 + {default} reduce 197 -State 237: - (271) logicExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * +State 185: + (83) nonConstExpr ::= nonConstExpr PERIOD NAME * + (196) lvalue ::= nonConstExpr PERIOD NAME * - QMARK reduce 271 - COMMA reduce 271 - LOR reduce 271 - LAND reduce 271 - EQ reduce 271 - LE reduce 271 - LT reduce 271 - GE reduce 271 - GT reduce 271 - NE reduce 271 - BITOR reduce 271 - BITXOR reduce 271 - BITAND reduce 271 - LSHIFT reduce 271 - RSHIFT reduce 271 - PLUS reduce 271 - MINUS reduce 271 - DIVIDE reduce 271 - MULTIPLY reduce 271 - MOD reduce 271 - BITNOT reduce 271 - LPAREN reduce 271 - LSQBRACKET reduce 271 - PERIOD reduce 271 - SEMICOLON reduce 271 - NAME reduce 271 - COLON reduce 271 - FUNCTION reduce 271 - RPAREN reduce 271 - LBRACKET reduce 271 - VAR reduce 271 - NUMBER reduce 271 - RSQBRACKET reduce 271 - KILLS reduce 271 - TRGCONST reduce 271 - L2V reduce 271 - MAPSTRING reduce 271 - UNIT reduce 271 - SWITCH reduce 271 - LOCATION reduce 271 - STATTXTTBL reduce 271 - VARRAY reduce 271 - STATIC reduce 271 - CONST reduce 271 - INC reduce 271 - DEC reduce 271 - ONCE reduce 271 - IF reduce 271 - SWITCHCASE reduce 271 - WHILE reduce 271 - FOR reduce 271 - FOREACH reduce 271 - CONTINUE reduce 271 - BREAK reduce 271 - RETURN reduce 271 - ACTIONNAME reduce 271 + QMARK reduce 83 + BITOR reduce 83 + BITXOR reduce 83 + BITAND reduce 83 + LSHIFT reduce 83 + RSHIFT reduce 83 + PLUS reduce 83 + MINUS reduce 83 + DIVIDE reduce 83 + MULTIPLY reduce 83 + MOD reduce 83 + LPAREN reduce 83 + LSQBRACKET reduce 83 + PERIOD reduce 83 + {default} reduce 196 -State 238: +State 186: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -23149,169 +17897,80 @@ State 238: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (181) logicExpr ::= constExpr GT nonConstExpr * + lvalue ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + lvalue ::= nonConstExpr * PERIOD NAME + lvalue ::= nonConstExpr * PERIOD TRGCONST - QMARK shift 76 -- dropped by precedence - QMARK reduce 181 - COMMA reduce 181 - LOR reduce 181 - LAND reduce 181 - EQ reduce 181 - LE reduce 181 - LT reduce 181 - GE reduce 181 - GT reduce 181 - NE reduce 181 - BITOR shift 66 - BITOR reduce 181 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 181 -- dropped by precedence - BITAND shift 67 - BITAND reduce 181 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 181 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 181 -- dropped by precedence - PLUS shift 74 - PLUS reduce 181 -- dropped by precedence - MINUS shift 73 - MINUS reduce 181 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 181 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 181 -- dropped by precedence - MOD shift 70 - MOD reduce 181 -- dropped by precedence - BITNOT reduce 181 - LPAREN shift 23 - LPAREN reduce 181 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 181 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 181 -- dropped by precedence - SEMICOLON reduce 181 - NAME reduce 181 - COLON reduce 181 - FUNCTION reduce 181 - RPAREN reduce 181 - LBRACKET reduce 181 - VAR reduce 181 - NUMBER reduce 181 - RSQBRACKET reduce 181 - KILLS reduce 181 - TRGCONST reduce 181 - L2V reduce 181 - MAPSTRING reduce 181 - UNIT reduce 181 - SWITCH reduce 181 - LOCATION reduce 181 - STATTXTTBL reduce 181 - VARRAY reduce 181 - STATIC reduce 181 - CONST reduce 181 - INC reduce 181 - DEC reduce 181 - ONCE reduce 181 - IF reduce 181 - SWITCHCASE reduce 181 - WHILE reduce 181 - FOR reduce 181 - FOREACH reduce 181 - CONTINUE reduce 181 - BREAK reduce 181 - RETURN reduce 181 - ACTIONNAME reduce 181 + QMARK shift 76 + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 77 + PERIOD shift 246 -State 239: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr +State 187: + (82) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN + (194) lvalue ::= NAME * + + QMARK reduce 82 + BITOR reduce 82 + BITXOR reduce 82 + BITAND reduce 82 + LSHIFT reduce 82 + RSHIFT reduce 82 + PLUS reduce 82 + MINUS reduce 82 + DIVIDE reduce 82 + MULTIPLY reduce 82 + MOD reduce 82 + LPAREN shift 25 + LSQBRACKET reduce 82 + PERIOD reduce 82 + {default} reduce 194 + +State 188: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr nonConstExpr ::= nonConstExpr * RSHIFT expr nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (177) logicExpr ::= constExpr LT nonConstExpr * + (183) logicExpr ::= nonConstExpr GT nonConstExpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 177 - COMMA reduce 177 - LOR reduce 177 - LAND reduce 177 - EQ reduce 177 - LE reduce 177 - LT reduce 177 - GE reduce 177 - GT reduce 177 - NE reduce 177 - BITOR shift 66 - BITOR reduce 177 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 177 -- dropped by precedence - BITAND shift 67 - BITAND reduce 177 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 177 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 177 -- dropped by precedence - PLUS shift 74 - PLUS reduce 177 -- dropped by precedence - MINUS shift 73 - MINUS reduce 177 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 177 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 177 -- dropped by precedence - MOD shift 70 - MOD reduce 177 -- dropped by precedence - BITNOT reduce 177 - LPAREN shift 23 - LPAREN reduce 177 -- dropped by precedence + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 177 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 177 -- dropped by precedence - SEMICOLON reduce 177 - NAME reduce 177 - COLON reduce 177 - FUNCTION reduce 177 - RPAREN reduce 177 - LBRACKET reduce 177 - VAR reduce 177 - NUMBER reduce 177 - RSQBRACKET reduce 177 - KILLS reduce 177 - TRGCONST reduce 177 - L2V reduce 177 - MAPSTRING reduce 177 - UNIT reduce 177 - SWITCH reduce 177 - LOCATION reduce 177 - STATTXTTBL reduce 177 - VARRAY reduce 177 - STATIC reduce 177 - CONST reduce 177 - INC reduce 177 - DEC reduce 177 - ONCE reduce 177 - IF reduce 177 - SWITCHCASE reduce 177 - WHILE reduce 177 - FOR reduce 177 - FOREACH reduce 177 - CONTINUE reduce 177 - BREAK reduce 177 - RETURN reduce 177 - ACTIONNAME reduce 177 + PERIOD shift 247 + {default} reduce 183 -State 240: +State 189: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -23327,80 +17986,24 @@ State 240: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (173) logicExpr ::= constExpr GE nonConstExpr * + (179) logicExpr ::= nonConstExpr LT nonConstExpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 173 - COMMA reduce 173 - LOR reduce 173 - LAND reduce 173 - EQ reduce 173 - LE reduce 173 - LT reduce 173 - GE reduce 173 - GT reduce 173 - NE reduce 173 - BITOR shift 66 - BITOR reduce 173 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 173 -- dropped by precedence - BITAND shift 67 - BITAND reduce 173 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 173 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 173 -- dropped by precedence - PLUS shift 74 - PLUS reduce 173 -- dropped by precedence - MINUS shift 73 - MINUS reduce 173 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 173 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 173 -- dropped by precedence - MOD shift 70 - MOD reduce 173 -- dropped by precedence - BITNOT reduce 173 - LPAREN shift 23 - LPAREN reduce 173 -- dropped by precedence + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 173 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 173 -- dropped by precedence - SEMICOLON reduce 173 - NAME reduce 173 - COLON reduce 173 - FUNCTION reduce 173 - RPAREN reduce 173 - LBRACKET reduce 173 - VAR reduce 173 - NUMBER reduce 173 - RSQBRACKET reduce 173 - KILLS reduce 173 - TRGCONST reduce 173 - L2V reduce 173 - MAPSTRING reduce 173 - UNIT reduce 173 - SWITCH reduce 173 - LOCATION reduce 173 - STATTXTTBL reduce 173 - VARRAY reduce 173 - STATIC reduce 173 - CONST reduce 173 - INC reduce 173 - DEC reduce 173 - ONCE reduce 173 - IF reduce 173 - SWITCHCASE reduce 173 - WHILE reduce 173 - FOR reduce 173 - FOREACH reduce 173 - CONTINUE reduce 173 - BREAK reduce 173 - RETURN reduce 173 - ACTIONNAME reduce 173 + PERIOD shift 247 + {default} reduce 179 -State 241: +State 190: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -23416,80 +18019,24 @@ State 241: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (169) logicExpr ::= constExpr LE nonConstExpr * + (175) logicExpr ::= nonConstExpr GE nonConstExpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 169 - COMMA reduce 169 - LOR reduce 169 - LAND reduce 169 - EQ reduce 169 - LE reduce 169 - LT reduce 169 - GE reduce 169 - GT reduce 169 - NE reduce 169 - BITOR shift 66 - BITOR reduce 169 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 169 -- dropped by precedence - BITAND shift 67 - BITAND reduce 169 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 169 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 169 -- dropped by precedence - PLUS shift 74 - PLUS reduce 169 -- dropped by precedence - MINUS shift 73 - MINUS reduce 169 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 169 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 169 -- dropped by precedence - MOD shift 70 - MOD reduce 169 -- dropped by precedence - BITNOT reduce 169 - LPAREN shift 23 - LPAREN reduce 169 -- dropped by precedence + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 169 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 169 -- dropped by precedence - SEMICOLON reduce 169 - NAME reduce 169 - COLON reduce 169 - FUNCTION reduce 169 - RPAREN reduce 169 - LBRACKET reduce 169 - VAR reduce 169 - NUMBER reduce 169 - RSQBRACKET reduce 169 - KILLS reduce 169 - TRGCONST reduce 169 - L2V reduce 169 - MAPSTRING reduce 169 - UNIT reduce 169 - SWITCH reduce 169 - LOCATION reduce 169 - STATTXTTBL reduce 169 - VARRAY reduce 169 - STATIC reduce 169 - CONST reduce 169 - INC reduce 169 - DEC reduce 169 - ONCE reduce 169 - IF reduce 169 - SWITCHCASE reduce 169 - WHILE reduce 169 - FOR reduce 169 - FOREACH reduce 169 - CONTINUE reduce 169 - BREAK reduce 169 - RETURN reduce 169 - ACTIONNAME reduce 169 + PERIOD shift 247 + {default} reduce 175 -State 242: +State 191: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -23505,80 +18052,24 @@ State 242: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (165) logicExpr ::= constExpr NE nonConstExpr * + (171) logicExpr ::= nonConstExpr LE nonConstExpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 165 - COMMA reduce 165 - LOR reduce 165 - LAND reduce 165 - EQ reduce 165 - LE reduce 165 - LT reduce 165 - GE reduce 165 - GT reduce 165 - NE reduce 165 - BITOR shift 66 - BITOR reduce 165 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 165 -- dropped by precedence - BITAND shift 67 - BITAND reduce 165 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 165 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 165 -- dropped by precedence - PLUS shift 74 - PLUS reduce 165 -- dropped by precedence - MINUS shift 73 - MINUS reduce 165 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 165 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 165 -- dropped by precedence - MOD shift 70 - MOD reduce 165 -- dropped by precedence - BITNOT reduce 165 - LPAREN shift 23 - LPAREN reduce 165 -- dropped by precedence + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 165 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 165 -- dropped by precedence - SEMICOLON reduce 165 - NAME reduce 165 - COLON reduce 165 - FUNCTION reduce 165 - RPAREN reduce 165 - LBRACKET reduce 165 - VAR reduce 165 - NUMBER reduce 165 - RSQBRACKET reduce 165 - KILLS reduce 165 - TRGCONST reduce 165 - L2V reduce 165 - MAPSTRING reduce 165 - UNIT reduce 165 - SWITCH reduce 165 - LOCATION reduce 165 - STATTXTTBL reduce 165 - VARRAY reduce 165 - STATIC reduce 165 - CONST reduce 165 - INC reduce 165 - DEC reduce 165 - ONCE reduce 165 - IF reduce 165 - SWITCHCASE reduce 165 - WHILE reduce 165 - FOR reduce 165 - FOREACH reduce 165 - CONTINUE reduce 165 - BREAK reduce 165 - RETURN reduce 165 - ACTIONNAME reduce 165 + PERIOD shift 247 + {default} reduce 171 -State 243: +State 192: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -23594,540 +18085,379 @@ State 243: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (161) logicExpr ::= constExpr EQ nonConstExpr * + (167) logicExpr ::= nonConstExpr NE nonConstExpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 161 - COMMA reduce 161 - LOR reduce 161 - LAND reduce 161 - EQ reduce 161 - LE reduce 161 - LT reduce 161 - GE reduce 161 - GT reduce 161 - NE reduce 161 - BITOR shift 66 - BITOR reduce 161 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 161 -- dropped by precedence - BITAND shift 67 - BITAND reduce 161 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 161 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 161 -- dropped by precedence - PLUS shift 74 - PLUS reduce 161 -- dropped by precedence - MINUS shift 73 - MINUS reduce 161 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 161 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 161 -- dropped by precedence - MOD shift 70 - MOD reduce 161 -- dropped by precedence - BITNOT reduce 161 - LPAREN shift 23 - LPAREN reduce 161 -- dropped by precedence + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 161 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 161 -- dropped by precedence - SEMICOLON reduce 161 - NAME reduce 161 - COLON reduce 161 - FUNCTION reduce 161 - RPAREN reduce 161 - LBRACKET reduce 161 - VAR reduce 161 - NUMBER reduce 161 - RSQBRACKET reduce 161 - KILLS reduce 161 - TRGCONST reduce 161 - L2V reduce 161 - MAPSTRING reduce 161 - UNIT reduce 161 - SWITCH reduce 161 - LOCATION reduce 161 - STATTXTTBL reduce 161 - VARRAY reduce 161 - STATIC reduce 161 - CONST reduce 161 - INC reduce 161 - DEC reduce 161 - ONCE reduce 161 - IF reduce 161 - SWITCHCASE reduce 161 - WHILE reduce 161 - FOR reduce 161 - FOREACH reduce 161 - CONTINUE reduce 161 - BREAK reduce 161 - RETURN reduce 161 - ACTIONNAME reduce 161 + PERIOD shift 247 + {default} reduce 167 -State 244: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (158) constExpr ::= BITNOT constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 193: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (163) logicExpr ::= nonConstExpr EQ nonConstExpr * - QMARK reduce 158 - COMMA reduce 158 - LOR reduce 158 - LAND reduce 158 - EQ shift 138 -- dropped by precedence - EQ reduce 158 - LE shift 125 -- dropped by precedence - LE reduce 158 - LT shift 123 -- dropped by precedence - LT reduce 158 - GE shift 124 -- dropped by precedence - GE reduce 158 - GT shift 122 -- dropped by precedence - GT reduce 158 - NE shift 126 -- dropped by precedence - NE reduce 158 - BITOR shift 128 -- dropped by precedence - BITOR reduce 158 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 158 - BITAND shift 129 -- dropped by precedence - BITAND reduce 158 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 158 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 158 - PLUS shift 136 -- dropped by precedence - PLUS reduce 158 - MINUS shift 135 -- dropped by precedence - MINUS reduce 158 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 158 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 158 - MOD shift 132 -- dropped by precedence - MOD reduce 158 - BITNOT reduce 158 - LPAREN reduce 158 - LSQBRACKET reduce 158 - PERIOD reduce 158 - SEMICOLON reduce 158 - NAME reduce 158 - COLON reduce 158 - FUNCTION reduce 158 - RPAREN reduce 158 - LBRACKET reduce 158 - VAR reduce 158 - NUMBER reduce 158 - RSQBRACKET reduce 158 - KILLS reduce 158 - TRGCONST reduce 158 - L2V reduce 158 - MAPSTRING reduce 158 - UNIT reduce 158 - SWITCH reduce 158 - LOCATION reduce 158 - STATTXTTBL reduce 158 - VARRAY reduce 158 - STATIC reduce 158 - CONST reduce 158 - INC reduce 158 - DEC reduce 158 - ONCE reduce 158 - IF reduce 158 - SWITCHCASE reduce 158 - WHILE reduce 158 - FOR reduce 158 - FOREACH reduce 158 - CONTINUE reduce 158 - BREAK reduce 158 - RETURN reduce 158 - ACTIONNAME reduce 158 + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 163 -State 245: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (156) constExpr ::= MINUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 194: + (198) lvalueList_nonEmpty ::= lvalue * + assign_stmt ::= lvalue * ASSIGN expr + assign_stmt ::= lvalue * INC + assign_stmt ::= lvalue * DEC + assign_stmt ::= lvalue * IADD expr + assign_stmt ::= lvalue * ISUB expr + assign_stmt ::= lvalue * IMUL expr + assign_stmt ::= lvalue * IDIV expr + assign_stmt ::= lvalue * IMOD expr + assign_stmt ::= lvalue * ILSH expr + assign_stmt ::= lvalue * IRSH expr + assign_stmt ::= lvalue * IBND expr + assign_stmt ::= lvalue * IBOR expr + assign_stmt ::= lvalue * IBXR expr - QMARK reduce 156 - COMMA reduce 156 - LOR reduce 156 - LAND reduce 156 - EQ shift 138 -- dropped by precedence - EQ reduce 156 - LE shift 125 -- dropped by precedence - LE reduce 156 - LT shift 123 -- dropped by precedence - LT reduce 156 - GE shift 124 -- dropped by precedence - GE reduce 156 - GT shift 122 -- dropped by precedence - GT reduce 156 - NE shift 126 -- dropped by precedence - NE reduce 156 - BITOR shift 128 -- dropped by precedence - BITOR reduce 156 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 156 - BITAND shift 129 -- dropped by precedence - BITAND reduce 156 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 156 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 156 - PLUS shift 136 -- dropped by precedence - PLUS reduce 156 - MINUS shift 135 -- dropped by precedence - MINUS reduce 156 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 156 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 156 - MOD shift 132 -- dropped by precedence - MOD reduce 156 - BITNOT reduce 156 - LPAREN reduce 156 - LSQBRACKET reduce 156 - PERIOD reduce 156 - SEMICOLON reduce 156 - NAME reduce 156 - COLON reduce 156 - FUNCTION reduce 156 - RPAREN reduce 156 - LBRACKET reduce 156 - VAR reduce 156 - NUMBER reduce 156 - RSQBRACKET reduce 156 - KILLS reduce 156 - TRGCONST reduce 156 - L2V reduce 156 - MAPSTRING reduce 156 - UNIT reduce 156 - SWITCH reduce 156 - LOCATION reduce 156 - STATTXTTBL reduce 156 - VARRAY reduce 156 - STATIC reduce 156 - CONST reduce 156 - INC reduce 156 - DEC reduce 156 - ONCE reduce 156 - IF reduce 156 - SWITCHCASE reduce 156 - WHILE reduce 156 - FOR reduce 156 - FOREACH reduce 156 - CONTINUE reduce 156 - BREAK reduce 156 - RETURN reduce 156 - ACTIONNAME reduce 156 + ASSIGN shift 62 + INC shift 450 + DEC shift 449 + IADD shift 61 + ISUB shift 60 + IMUL shift 59 + IDIV shift 58 + IMOD shift 57 + ILSH shift 56 + IRSH shift 55 + IBND shift 54 + IBOR shift 53 + IBXR shift 52 + {default} reduce 198 -State 246: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (154) constExpr ::= PLUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 195: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (181) logicExpr ::= constExpr GT nonConstExpr * - QMARK reduce 154 - COMMA reduce 154 - LOR reduce 154 - LAND reduce 154 - EQ shift 138 -- dropped by precedence - EQ reduce 154 - LE shift 125 -- dropped by precedence - LE reduce 154 - LT shift 123 -- dropped by precedence - LT reduce 154 - GE shift 124 -- dropped by precedence - GE reduce 154 - GT shift 122 -- dropped by precedence - GT reduce 154 - NE shift 126 -- dropped by precedence - NE reduce 154 - BITOR shift 128 -- dropped by precedence - BITOR reduce 154 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 154 - BITAND shift 129 -- dropped by precedence - BITAND reduce 154 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 154 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 154 - PLUS shift 136 -- dropped by precedence - PLUS reduce 154 - MINUS shift 135 -- dropped by precedence - MINUS reduce 154 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 154 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 154 - MOD shift 132 -- dropped by precedence - MOD reduce 154 - BITNOT reduce 154 - LPAREN reduce 154 - LSQBRACKET reduce 154 - PERIOD reduce 154 - SEMICOLON reduce 154 - NAME reduce 154 - COLON reduce 154 - FUNCTION reduce 154 - RPAREN reduce 154 - LBRACKET reduce 154 - VAR reduce 154 - NUMBER reduce 154 - RSQBRACKET reduce 154 - KILLS reduce 154 - TRGCONST reduce 154 - L2V reduce 154 - MAPSTRING reduce 154 - UNIT reduce 154 - SWITCH reduce 154 - LOCATION reduce 154 - STATTXTTBL reduce 154 - VARRAY reduce 154 - STATIC reduce 154 - CONST reduce 154 - INC reduce 154 - DEC reduce 154 - ONCE reduce 154 - IF reduce 154 - SWITCHCASE reduce 154 - WHILE reduce 154 - FOR reduce 154 - FOREACH reduce 154 - CONTINUE reduce 154 - BREAK reduce 154 - RETURN reduce 154 - ACTIONNAME reduce 154 + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 181 -State 247: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (151) constExpr ::= constExpr BITXOR constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 196: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (177) logicExpr ::= constExpr LT nonConstExpr * - QMARK reduce 151 - COMMA reduce 151 - LOR reduce 151 - LAND reduce 151 - EQ shift 138 -- dropped by precedence - EQ reduce 151 - LE shift 125 -- dropped by precedence - LE reduce 151 - LT shift 123 -- dropped by precedence - LT reduce 151 - GE shift 124 -- dropped by precedence - GE reduce 151 - GT shift 122 -- dropped by precedence - GT reduce 151 - NE shift 126 -- dropped by precedence - NE reduce 151 - BITOR shift 128 -- dropped by precedence - BITOR reduce 151 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 151 - BITAND shift 129 - BITAND reduce 151 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 151 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 151 -- dropped by precedence - PLUS shift 136 - PLUS reduce 151 -- dropped by precedence - MINUS shift 135 - MINUS reduce 151 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 151 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 151 -- dropped by precedence - MOD shift 132 - MOD reduce 151 -- dropped by precedence - BITNOT reduce 151 - LPAREN reduce 151 - LSQBRACKET reduce 151 - PERIOD reduce 151 - SEMICOLON reduce 151 - NAME reduce 151 - COLON reduce 151 - FUNCTION reduce 151 - RPAREN reduce 151 - LBRACKET reduce 151 - VAR reduce 151 - NUMBER reduce 151 - RSQBRACKET reduce 151 - KILLS reduce 151 - TRGCONST reduce 151 - L2V reduce 151 - MAPSTRING reduce 151 - UNIT reduce 151 - SWITCH reduce 151 - LOCATION reduce 151 - STATTXTTBL reduce 151 - VARRAY reduce 151 - STATIC reduce 151 - CONST reduce 151 - INC reduce 151 - DEC reduce 151 - ONCE reduce 151 - IF reduce 151 - SWITCHCASE reduce 151 - WHILE reduce 151 - FOR reduce 151 - FOREACH reduce 151 - CONTINUE reduce 151 - BREAK reduce 151 - RETURN reduce 151 - ACTIONNAME reduce 151 + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 177 -State 248: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - (148) constExpr ::= constExpr BITOR constExpr * - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 197: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (173) logicExpr ::= constExpr GE nonConstExpr * - QMARK reduce 148 - COMMA reduce 148 - LOR reduce 148 - LAND reduce 148 - EQ shift 138 -- dropped by precedence - EQ reduce 148 - LE shift 125 -- dropped by precedence - LE reduce 148 - LT shift 123 -- dropped by precedence - LT reduce 148 - GE shift 124 -- dropped by precedence - GE reduce 148 - GT shift 122 -- dropped by precedence - GT reduce 148 - NE shift 126 -- dropped by precedence - NE reduce 148 - BITOR shift 128 -- dropped by precedence - BITOR reduce 148 - BITXOR shift 127 - BITXOR reduce 148 -- dropped by precedence - BITAND shift 129 - BITAND reduce 148 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 148 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 148 -- dropped by precedence - PLUS shift 136 - PLUS reduce 148 -- dropped by precedence - MINUS shift 135 - MINUS reduce 148 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 148 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 148 -- dropped by precedence - MOD shift 132 - MOD reduce 148 -- dropped by precedence - BITNOT reduce 148 - LPAREN reduce 148 - LSQBRACKET reduce 148 - PERIOD reduce 148 - SEMICOLON reduce 148 - NAME reduce 148 - COLON reduce 148 - FUNCTION reduce 148 - RPAREN reduce 148 - LBRACKET reduce 148 - VAR reduce 148 - NUMBER reduce 148 - RSQBRACKET reduce 148 - KILLS reduce 148 - TRGCONST reduce 148 - L2V reduce 148 - MAPSTRING reduce 148 - UNIT reduce 148 - SWITCH reduce 148 - LOCATION reduce 148 - STATTXTTBL reduce 148 - VARRAY reduce 148 - STATIC reduce 148 - CONST reduce 148 - INC reduce 148 - DEC reduce 148 - ONCE reduce 148 - IF reduce 148 - SWITCHCASE reduce 148 - WHILE reduce 148 - FOR reduce 148 - FOREACH reduce 148 - CONTINUE reduce 148 - BREAK reduce 148 - RETURN reduce 148 - ACTIONNAME reduce 148 + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 173 -State 249: +State 198: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (169) logicExpr ::= constExpr LE nonConstExpr * + + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 169 + +State 199: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (165) logicExpr ::= constExpr NE nonConstExpr * + + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 165 + +State 200: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (161) logicExpr ::= constExpr EQ nonConstExpr * + + BITOR shift 65 + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 161 + +State 201: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + (149) nonConstExpr ::= constExpr BITOR nonConstExpr * + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + + BITXOR shift 64 + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 149 + +State 202: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + (152) nonConstExpr ::= constExpr BITXOR nonConstExpr * + nonConstExpr ::= nonConstExpr * BITXOR expr + + BITAND shift 66 + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 152 + +State 203: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + (146) nonConstExpr ::= constExpr BITAND nonConstExpr * + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + + LSHIFT shift 68 + RSHIFT shift 67 + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 146 + +State 204: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -24136,8 +18466,8 @@ State 249: constExpr ::= constExpr * LSHIFT constExpr constExpr ::= constExpr * RSHIFT constExpr constExpr ::= constExpr * BITAND constExpr - (145) constExpr ::= constExpr BITAND constExpr * constExpr ::= constExpr * BITOR constExpr + (148) constExpr ::= constExpr BITOR constExpr * constExpr ::= constExpr * BITXOR constExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr @@ -24146,91 +18476,39 @@ State 249: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 145 - COMMA reduce 145 - LOR reduce 145 - LAND reduce 145 - EQ shift 138 -- dropped by precedence - EQ reduce 145 - LE shift 125 -- dropped by precedence - LE reduce 145 - LT shift 123 -- dropped by precedence - LT reduce 145 - GE shift 124 -- dropped by precedence - GE reduce 145 - GT shift 122 -- dropped by precedence - GT reduce 145 - NE shift 126 -- dropped by precedence - NE reduce 145 - BITOR shift 128 -- dropped by precedence - BITOR reduce 145 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 145 - BITAND shift 129 -- dropped by precedence - BITAND reduce 145 + BITXOR shift 127 + BITAND shift 129 LSHIFT shift 131 - LSHIFT reduce 145 -- dropped by precedence RSHIFT shift 130 - RSHIFT reduce 145 -- dropped by precedence PLUS shift 136 - PLUS reduce 145 -- dropped by precedence MINUS shift 135 - MINUS reduce 145 -- dropped by precedence DIVIDE shift 133 - DIVIDE reduce 145 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 145 -- dropped by precedence MOD shift 132 - MOD reduce 145 -- dropped by precedence - BITNOT reduce 145 - LPAREN reduce 145 - LSQBRACKET reduce 145 - PERIOD reduce 145 - SEMICOLON reduce 145 - NAME reduce 145 - COLON reduce 145 - FUNCTION reduce 145 - RPAREN reduce 145 - LBRACKET reduce 145 - VAR reduce 145 - NUMBER reduce 145 - RSQBRACKET reduce 145 - KILLS reduce 145 - TRGCONST reduce 145 - L2V reduce 145 - MAPSTRING reduce 145 - UNIT reduce 145 - SWITCH reduce 145 - LOCATION reduce 145 - STATTXTTBL reduce 145 - VARRAY reduce 145 - STATIC reduce 145 - CONST reduce 145 - INC reduce 145 - DEC reduce 145 - ONCE reduce 145 - IF reduce 145 - SWITCHCASE reduce 145 - WHILE reduce 145 - FOR reduce 145 - FOREACH reduce 145 - CONTINUE reduce 145 - BREAK reduce 145 - RETURN reduce 145 - ACTIONNAME reduce 145 + {default} reduce 148 -State 250: +State 205: constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - (142) constExpr ::= constExpr RSHIFT constExpr * + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + (148) constExpr ::= constExpr BITOR constExpr * + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -24238,91 +18516,29 @@ State 250: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 142 - COMMA reduce 142 - LOR reduce 142 - LAND reduce 142 - EQ shift 138 -- dropped by precedence - EQ reduce 142 - LE shift 125 -- dropped by precedence - LE reduce 142 - LT shift 123 -- dropped by precedence - LT reduce 142 - GE shift 124 -- dropped by precedence - GE reduce 142 - GT shift 122 -- dropped by precedence - GT reduce 142 - NE shift 126 -- dropped by precedence - NE reduce 142 - BITOR shift 128 -- dropped by precedence - BITOR reduce 142 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 142 - BITAND shift 129 -- dropped by precedence - BITAND reduce 142 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 142 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 142 - PLUS shift 136 - PLUS reduce 142 -- dropped by precedence - MINUS shift 135 - MINUS reduce 142 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 142 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 142 -- dropped by precedence - MOD shift 132 - MOD reduce 142 -- dropped by precedence - BITNOT reduce 142 - LPAREN reduce 142 - LSQBRACKET reduce 142 - PERIOD reduce 142 - SEMICOLON reduce 142 - NAME reduce 142 - COLON reduce 142 - FUNCTION reduce 142 - RPAREN reduce 142 - LBRACKET reduce 142 - VAR reduce 142 - NUMBER reduce 142 - RSQBRACKET reduce 142 - KILLS reduce 142 - TRGCONST reduce 142 - L2V reduce 142 - MAPSTRING reduce 142 - UNIT reduce 142 - SWITCH reduce 142 - LOCATION reduce 142 - STATTXTTBL reduce 142 - VARRAY reduce 142 - STATIC reduce 142 - CONST reduce 142 - INC reduce 142 - DEC reduce 142 - ONCE reduce 142 - IF reduce 142 - SWITCHCASE reduce 142 - WHILE reduce 142 - FOR reduce 142 - FOREACH reduce 142 - CONTINUE reduce 142 - BREAK reduce 142 - RETURN reduce 142 - ACTIONNAME reduce 142 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 148 -State 251: +State 206: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr constExpr ::= constExpr * DIVIDE constExpr constExpr ::= constExpr * MOD constExpr constExpr ::= constExpr * LSHIFT constExpr - (139) constExpr ::= constExpr LSHIFT constExpr * constExpr ::= constExpr * RSHIFT constExpr constExpr ::= constExpr * BITAND constExpr constExpr ::= constExpr * BITOR constExpr constExpr ::= constExpr * BITXOR constExpr + (151) constExpr ::= constExpr BITXOR constExpr * constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -24330,91 +18546,38 @@ State 251: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 139 - COMMA reduce 139 - LOR reduce 139 - LAND reduce 139 - EQ shift 138 -- dropped by precedence - EQ reduce 139 - LE shift 125 -- dropped by precedence - LE reduce 139 - LT shift 123 -- dropped by precedence - LT reduce 139 - GE shift 124 -- dropped by precedence - GE reduce 139 - GT shift 122 -- dropped by precedence - GT reduce 139 - NE shift 126 -- dropped by precedence - NE reduce 139 - BITOR shift 128 -- dropped by precedence - BITOR reduce 139 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 139 - BITAND shift 129 -- dropped by precedence - BITAND reduce 139 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 139 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 139 + BITAND shift 129 + LSHIFT shift 131 + RSHIFT shift 130 PLUS shift 136 - PLUS reduce 139 -- dropped by precedence MINUS shift 135 - MINUS reduce 139 -- dropped by precedence DIVIDE shift 133 - DIVIDE reduce 139 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 139 -- dropped by precedence MOD shift 132 - MOD reduce 139 -- dropped by precedence - BITNOT reduce 139 - LPAREN reduce 139 - LSQBRACKET reduce 139 - PERIOD reduce 139 - SEMICOLON reduce 139 - NAME reduce 139 - COLON reduce 139 - FUNCTION reduce 139 - RPAREN reduce 139 - LBRACKET reduce 139 - VAR reduce 139 - NUMBER reduce 139 - RSQBRACKET reduce 139 - KILLS reduce 139 - TRGCONST reduce 139 - L2V reduce 139 - MAPSTRING reduce 139 - UNIT reduce 139 - SWITCH reduce 139 - LOCATION reduce 139 - STATTXTTBL reduce 139 - VARRAY reduce 139 - STATIC reduce 139 - CONST reduce 139 - INC reduce 139 - DEC reduce 139 - ONCE reduce 139 - IF reduce 139 - SWITCHCASE reduce 139 - WHILE reduce 139 - FOR reduce 139 - FOREACH reduce 139 - CONTINUE reduce 139 - BREAK reduce 139 - RETURN reduce 139 - ACTIONNAME reduce 139 + {default} reduce 151 -State 252: +State 207: constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - (136) constExpr ::= constExpr MOD constExpr * + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr + (151) constExpr ::= constExpr BITXOR constExpr * + nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -24422,89 +18585,82 @@ State 252: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 136 - COMMA reduce 136 - LOR reduce 136 - LAND reduce 136 - EQ shift 138 -- dropped by precedence - EQ reduce 136 - LE shift 125 -- dropped by precedence - LE reduce 136 - LT shift 123 -- dropped by precedence - LT reduce 136 - GE shift 124 -- dropped by precedence - GE reduce 136 - GT shift 122 -- dropped by precedence - GT reduce 136 - NE shift 126 -- dropped by precedence - NE reduce 136 - BITOR shift 128 -- dropped by precedence - BITOR reduce 136 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 136 - BITAND shift 129 -- dropped by precedence - BITAND reduce 136 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 136 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 136 - PLUS shift 136 -- dropped by precedence - PLUS reduce 136 - MINUS shift 135 -- dropped by precedence - MINUS reduce 136 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 136 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 136 - MOD shift 132 -- dropped by precedence - MOD reduce 136 - BITNOT reduce 136 - LPAREN reduce 136 - LSQBRACKET reduce 136 - PERIOD reduce 136 - SEMICOLON reduce 136 - NAME reduce 136 - COLON reduce 136 - FUNCTION reduce 136 - RPAREN reduce 136 - LBRACKET reduce 136 - VAR reduce 136 - NUMBER reduce 136 - RSQBRACKET reduce 136 - KILLS reduce 136 - TRGCONST reduce 136 - L2V reduce 136 - MAPSTRING reduce 136 - UNIT reduce 136 - SWITCH reduce 136 - LOCATION reduce 136 - STATTXTTBL reduce 136 - VARRAY reduce 136 - STATIC reduce 136 - CONST reduce 136 - INC reduce 136 - DEC reduce 136 - ONCE reduce 136 - IF reduce 136 - SWITCHCASE reduce 136 - WHILE reduce 136 - FOR reduce 136 - FOREACH reduce 136 - CONTINUE reduce 136 - BREAK reduce 136 - RETURN reduce 136 - ACTIONNAME reduce 136 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 151 -State 253: +State 208: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + (143) nonConstExpr ::= constExpr RSHIFT nonConstExpr * + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 143 + +State 209: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + (140) nonConstExpr ::= constExpr LSHIFT nonConstExpr * + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + + PLUS shift 73 + MINUS shift 72 + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 140 + +State 210: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr constExpr ::= constExpr * DIVIDE constExpr - (133) constExpr ::= constExpr DIVIDE constExpr * constExpr ::= constExpr * MOD constExpr constExpr ::= constExpr * LSHIFT constExpr constExpr ::= constExpr * RSHIFT constExpr constExpr ::= constExpr * BITAND constExpr + (145) constExpr ::= constExpr BITAND constExpr * constExpr ::= constExpr * BITOR constExpr constExpr ::= constExpr * BITXOR constExpr constExpr ::= constExpr * EQ constExpr @@ -24514,91 +18670,37 @@ State 253: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 133 - COMMA reduce 133 - LOR reduce 133 - LAND reduce 133 - EQ shift 138 -- dropped by precedence - EQ reduce 133 - LE shift 125 -- dropped by precedence - LE reduce 133 - LT shift 123 -- dropped by precedence - LT reduce 133 - GE shift 124 -- dropped by precedence - GE reduce 133 - GT shift 122 -- dropped by precedence - GT reduce 133 - NE shift 126 -- dropped by precedence - NE reduce 133 - BITOR shift 128 -- dropped by precedence - BITOR reduce 133 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 133 - BITAND shift 129 -- dropped by precedence - BITAND reduce 133 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 133 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 133 - PLUS shift 136 -- dropped by precedence - PLUS reduce 133 - MINUS shift 135 -- dropped by precedence - MINUS reduce 133 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 133 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 133 - MOD shift 132 -- dropped by precedence - MOD reduce 133 - BITNOT reduce 133 - LPAREN reduce 133 - LSQBRACKET reduce 133 - PERIOD reduce 133 - SEMICOLON reduce 133 - NAME reduce 133 - COLON reduce 133 - FUNCTION reduce 133 - RPAREN reduce 133 - LBRACKET reduce 133 - VAR reduce 133 - NUMBER reduce 133 - RSQBRACKET reduce 133 - KILLS reduce 133 - TRGCONST reduce 133 - L2V reduce 133 - MAPSTRING reduce 133 - UNIT reduce 133 - SWITCH reduce 133 - LOCATION reduce 133 - STATTXTTBL reduce 133 - VARRAY reduce 133 - STATIC reduce 133 - CONST reduce 133 - INC reduce 133 - DEC reduce 133 - ONCE reduce 133 - IF reduce 133 - SWITCHCASE reduce 133 - WHILE reduce 133 - FOR reduce 133 - FOREACH reduce 133 - CONTINUE reduce 133 - BREAK reduce 133 - RETURN reduce 133 - ACTIONNAME reduce 133 + LSHIFT shift 131 + RSHIFT shift 130 + PLUS shift 136 + MINUS shift 135 + DIVIDE shift 133 + MULTIPLY shift 134 + MOD shift 132 + {default} reduce 145 -State 254: +State 211: constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr - (130) constExpr ::= constExpr MULTIPLY constExpr * + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + (145) constExpr ::= constExpr BITAND constExpr * + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -24606,88 +18708,76 @@ State 254: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 130 - COMMA reduce 130 - LOR reduce 130 - LAND reduce 130 - EQ shift 138 -- dropped by precedence - EQ reduce 130 - LE shift 125 -- dropped by precedence - LE reduce 130 - LT shift 123 -- dropped by precedence - LT reduce 130 - GE shift 124 -- dropped by precedence - GE reduce 130 - GT shift 122 -- dropped by precedence - GT reduce 130 - NE shift 126 -- dropped by precedence - NE reduce 130 - BITOR shift 128 -- dropped by precedence - BITOR reduce 130 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 130 - BITAND shift 129 -- dropped by precedence - BITAND reduce 130 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 130 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 130 - PLUS shift 136 -- dropped by precedence - PLUS reduce 130 - MINUS shift 135 -- dropped by precedence - MINUS reduce 130 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 130 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 130 - MOD shift 132 -- dropped by precedence - MOD reduce 130 - BITNOT reduce 130 - LPAREN reduce 130 - LSQBRACKET reduce 130 - PERIOD reduce 130 - SEMICOLON reduce 130 - NAME reduce 130 - COLON reduce 130 - FUNCTION reduce 130 - RPAREN reduce 130 - LBRACKET reduce 130 - VAR reduce 130 - NUMBER reduce 130 - RSQBRACKET reduce 130 - KILLS reduce 130 - TRGCONST reduce 130 - L2V reduce 130 - MAPSTRING reduce 130 - UNIT reduce 130 - SWITCH reduce 130 - LOCATION reduce 130 - STATTXTTBL reduce 130 - VARRAY reduce 130 - STATIC reduce 130 - CONST reduce 130 - INC reduce 130 - DEC reduce 130 - ONCE reduce 130 - IF reduce 130 - SWITCHCASE reduce 130 - WHILE reduce 130 - FOR reduce 130 - FOREACH reduce 130 - CONTINUE reduce 130 - BREAK reduce 130 - RETURN reduce 130 - ACTIONNAME reduce 130 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + {default} reduce 145 -State 255: +State 212: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + (128) nonConstExpr ::= constExpr MINUS nonConstExpr * + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 128 + +State 213: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + (125) nonConstExpr ::= constExpr PLUS nonConstExpr * + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + + DIVIDE shift 70 + MULTIPLY shift 71 + MOD shift 69 + LPAREN shift 24 + LSQBRACKET shift 79 + PERIOD shift 247 + {default} reduce 125 + +State 214: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr - (127) constExpr ::= constExpr MINUS constExpr * constExpr ::= constExpr * MULTIPLY constExpr constExpr ::= constExpr * DIVIDE constExpr constExpr ::= constExpr * MOD constExpr constExpr ::= constExpr * LSHIFT constExpr constExpr ::= constExpr * RSHIFT constExpr + (142) constExpr ::= constExpr RSHIFT constExpr * constExpr ::= constExpr * BITAND constExpr constExpr ::= constExpr * BITOR constExpr constExpr ::= constExpr * BITXOR constExpr @@ -24698,87 +18788,21 @@ State 255: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 127 - COMMA reduce 127 - LOR reduce 127 - LAND reduce 127 - EQ shift 138 -- dropped by precedence - EQ reduce 127 - LE shift 125 -- dropped by precedence - LE reduce 127 - LT shift 123 -- dropped by precedence - LT reduce 127 - GE shift 124 -- dropped by precedence - GE reduce 127 - GT shift 122 -- dropped by precedence - GT reduce 127 - NE shift 126 -- dropped by precedence - NE reduce 127 - BITOR shift 128 -- dropped by precedence - BITOR reduce 127 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 127 - BITAND shift 129 -- dropped by precedence - BITAND reduce 127 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 127 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 127 - PLUS shift 136 -- dropped by precedence - PLUS reduce 127 - MINUS shift 135 -- dropped by precedence - MINUS reduce 127 + PLUS shift 136 + MINUS shift 135 DIVIDE shift 133 - DIVIDE reduce 127 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 127 -- dropped by precedence MOD shift 132 - MOD reduce 127 -- dropped by precedence - BITNOT reduce 127 - LPAREN reduce 127 - LSQBRACKET reduce 127 - PERIOD reduce 127 - SEMICOLON reduce 127 - NAME reduce 127 - COLON reduce 127 - FUNCTION reduce 127 - RPAREN reduce 127 - LBRACKET reduce 127 - VAR reduce 127 - NUMBER reduce 127 - RSQBRACKET reduce 127 - KILLS reduce 127 - TRGCONST reduce 127 - L2V reduce 127 - MAPSTRING reduce 127 - UNIT reduce 127 - SWITCH reduce 127 - LOCATION reduce 127 - STATTXTTBL reduce 127 - VARRAY reduce 127 - STATIC reduce 127 - CONST reduce 127 - INC reduce 127 - DEC reduce 127 - ONCE reduce 127 - IF reduce 127 - SWITCHCASE reduce 127 - WHILE reduce 127 - FOR reduce 127 - FOREACH reduce 127 - CONTINUE reduce 127 - BREAK reduce 127 - RETURN reduce 127 - ACTIONNAME reduce 127 + {default} reduce 142 -State 256: +State 215: constExpr ::= constExpr * PLUS constExpr - (124) constExpr ::= constExpr PLUS constExpr * constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr constExpr ::= constExpr * DIVIDE constExpr constExpr ::= constExpr * MOD constExpr constExpr ::= constExpr * LSHIFT constExpr + (139) constExpr ::= constExpr LSHIFT constExpr * constExpr ::= constExpr * RSHIFT constExpr constExpr ::= constExpr * BITAND constExpr constExpr ::= constExpr * BITOR constExpr @@ -24790,80 +18814,14 @@ State 256: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 124 - COMMA reduce 124 - LOR reduce 124 - LAND reduce 124 - EQ shift 138 -- dropped by precedence - EQ reduce 124 - LE shift 125 -- dropped by precedence - LE reduce 124 - LT shift 123 -- dropped by precedence - LT reduce 124 - GE shift 124 -- dropped by precedence - GE reduce 124 - GT shift 122 -- dropped by precedence - GT reduce 124 - NE shift 126 -- dropped by precedence - NE reduce 124 - BITOR shift 128 -- dropped by precedence - BITOR reduce 124 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 124 - BITAND shift 129 -- dropped by precedence - BITAND reduce 124 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 124 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 124 - PLUS shift 136 -- dropped by precedence - PLUS reduce 124 - MINUS shift 135 -- dropped by precedence - MINUS reduce 124 + PLUS shift 136 + MINUS shift 135 DIVIDE shift 133 - DIVIDE reduce 124 -- dropped by precedence MULTIPLY shift 134 - MULTIPLY reduce 124 -- dropped by precedence MOD shift 132 - MOD reduce 124 -- dropped by precedence - BITNOT reduce 124 - LPAREN reduce 124 - LSQBRACKET reduce 124 - PERIOD reduce 124 - SEMICOLON reduce 124 - NAME reduce 124 - COLON reduce 124 - FUNCTION reduce 124 - RPAREN reduce 124 - LBRACKET reduce 124 - VAR reduce 124 - NUMBER reduce 124 - RSQBRACKET reduce 124 - KILLS reduce 124 - TRGCONST reduce 124 - L2V reduce 124 - MAPSTRING reduce 124 - UNIT reduce 124 - SWITCH reduce 124 - LOCATION reduce 124 - STATTXTTBL reduce 124 - VARRAY reduce 124 - STATIC reduce 124 - CONST reduce 124 - INC reduce 124 - DEC reduce 124 - ONCE reduce 124 - IF reduce 124 - SWITCHCASE reduce 124 - WHILE reduce 124 - FOR reduce 124 - FOREACH reduce 124 - CONTINUE reduce 124 - BREAK reduce 124 - RETURN reduce 124 - ACTIONNAME reduce 124 + {default} reduce 139 -State 257: +State 216: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -24877,13 +18835,13 @@ State 257: constExpr ::= constExpr * LSHIFT constExpr nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr + (142) constExpr ::= constExpr RSHIFT constExpr * nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - (151) constExpr ::= constExpr BITXOR constExpr * nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr @@ -24892,169 +18850,14 @@ State 257: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 151 - COMMA reduce 151 - LOR reduce 151 - LAND reduce 151 - EQ shift 138 -- dropped by precedence - EQ reduce 151 - LE shift 125 -- dropped by precedence - LE reduce 151 - LT shift 123 -- dropped by precedence - LT reduce 151 - GE shift 124 -- dropped by precedence - GE reduce 151 - GT shift 122 -- dropped by precedence - GT reduce 151 - NE shift 126 -- dropped by precedence - NE reduce 151 - BITOR shift 102 -- dropped by precedence - BITOR reduce 151 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 151 - BITAND shift 103 - BITAND reduce 151 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 151 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 151 -- dropped by precedence PLUS shift 113 - PLUS reduce 151 -- dropped by precedence MINUS shift 112 - MINUS reduce 151 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 151 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 151 -- dropped by precedence MOD shift 106 - MOD reduce 151 -- dropped by precedence - BITNOT reduce 151 - LPAREN reduce 151 - LSQBRACKET reduce 151 - PERIOD reduce 151 - SEMICOLON reduce 151 - NAME reduce 151 - COLON reduce 151 - FUNCTION reduce 151 - RPAREN reduce 151 - LBRACKET reduce 151 - VAR reduce 151 - NUMBER reduce 151 - RSQBRACKET reduce 151 - KILLS reduce 151 - TRGCONST reduce 151 - L2V reduce 151 - MAPSTRING reduce 151 - UNIT reduce 151 - SWITCH reduce 151 - LOCATION reduce 151 - STATTXTTBL reduce 151 - VARRAY reduce 151 - STATIC reduce 151 - CONST reduce 151 - INC reduce 151 - DEC reduce 151 - ONCE reduce 151 - IF reduce 151 - SWITCHCASE reduce 151 - WHILE reduce 151 - FOR reduce 151 - FOREACH reduce 151 - CONTINUE reduce 151 - BREAK reduce 151 - RETURN reduce 151 - ACTIONNAME reduce 151 - -State 258: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - (152) nonConstExpr ::= constExpr BITXOR nonConstExpr * - nonConstExpr ::= nonConstExpr * BITXOR expr + {default} reduce 142 - QMARK shift 76 -- dropped by precedence - QMARK reduce 152 - COMMA reduce 152 - LOR reduce 152 - LAND reduce 152 - EQ reduce 152 - LE reduce 152 - LT reduce 152 - GE reduce 152 - GT reduce 152 - NE reduce 152 - BITOR shift 66 -- dropped by precedence - BITOR reduce 152 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 152 - BITAND shift 67 - BITAND reduce 152 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 152 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 152 -- dropped by precedence - PLUS shift 74 - PLUS reduce 152 -- dropped by precedence - MINUS shift 73 - MINUS reduce 152 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 152 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 152 -- dropped by precedence - MOD shift 70 - MOD reduce 152 -- dropped by precedence - BITNOT reduce 152 - LPAREN shift 23 - LPAREN reduce 152 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 152 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 152 -- dropped by precedence - SEMICOLON reduce 152 - NAME reduce 152 - COLON reduce 152 - FUNCTION reduce 152 - RPAREN reduce 152 - LBRACKET reduce 152 - VAR reduce 152 - NUMBER reduce 152 - RSQBRACKET reduce 152 - KILLS reduce 152 - TRGCONST reduce 152 - L2V reduce 152 - MAPSTRING reduce 152 - UNIT reduce 152 - SWITCH reduce 152 - LOCATION reduce 152 - STATTXTTBL reduce 152 - VARRAY reduce 152 - STATIC reduce 152 - CONST reduce 152 - INC reduce 152 - DEC reduce 152 - ONCE reduce 152 - IF reduce 152 - SWITCHCASE reduce 152 - WHILE reduce 152 - FOR reduce 152 - FOREACH reduce 152 - CONTINUE reduce 152 - BREAK reduce 152 - RETURN reduce 152 - ACTIONNAME reduce 152 - -State 259: +State 217: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -25066,13 +18869,13 @@ State 259: constExpr ::= constExpr * MOD constExpr nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + (139) constExpr ::= constExpr LSHIFT constExpr * nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - (148) constExpr ::= constExpr BITOR constExpr * nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr @@ -25083,170 +18886,27 @@ State 259: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 148 - COMMA reduce 148 - LOR reduce 148 - LAND reduce 148 - EQ shift 138 -- dropped by precedence - EQ reduce 148 - LE shift 125 -- dropped by precedence - LE reduce 148 - LT shift 123 -- dropped by precedence - LT reduce 148 - GE shift 124 -- dropped by precedence - GE reduce 148 - GT shift 122 -- dropped by precedence - GT reduce 148 - NE shift 126 -- dropped by precedence - NE reduce 148 - BITOR shift 102 -- dropped by precedence - BITOR reduce 148 - BITXOR shift 101 - BITXOR reduce 148 -- dropped by precedence - BITAND shift 103 - BITAND reduce 148 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 148 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 148 -- dropped by precedence PLUS shift 113 - PLUS reduce 148 -- dropped by precedence MINUS shift 112 - MINUS reduce 148 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 148 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 148 -- dropped by precedence MOD shift 106 - MOD reduce 148 -- dropped by precedence - BITNOT reduce 148 - LPAREN reduce 148 - LSQBRACKET reduce 148 - PERIOD reduce 148 - SEMICOLON reduce 148 - NAME reduce 148 - COLON reduce 148 - FUNCTION reduce 148 - RPAREN reduce 148 - LBRACKET reduce 148 - VAR reduce 148 - NUMBER reduce 148 - RSQBRACKET reduce 148 - KILLS reduce 148 - TRGCONST reduce 148 - L2V reduce 148 - MAPSTRING reduce 148 - UNIT reduce 148 - SWITCH reduce 148 - LOCATION reduce 148 - STATTXTTBL reduce 148 - VARRAY reduce 148 - STATIC reduce 148 - CONST reduce 148 - INC reduce 148 - DEC reduce 148 - ONCE reduce 148 - IF reduce 148 - SWITCHCASE reduce 148 - WHILE reduce 148 - FOR reduce 148 - FOREACH reduce 148 - CONTINUE reduce 148 - BREAK reduce 148 - RETURN reduce 148 - ACTIONNAME reduce 148 + {default} reduce 139 -State 260: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - (149) nonConstExpr ::= constExpr BITOR nonConstExpr * - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr +State 218: + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (106) funcexprStmt ::= funcexpr * + (109) nonConstExpr ::= funcexpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 149 - COMMA reduce 149 - LOR reduce 149 - LAND reduce 149 - EQ reduce 149 - LE reduce 149 - LT reduce 149 - GE reduce 149 - GT reduce 149 - NE reduce 149 - BITOR shift 66 -- dropped by precedence - BITOR reduce 149 - BITXOR shift 65 - BITXOR reduce 149 -- dropped by precedence - BITAND shift 67 - BITAND reduce 149 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 149 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 149 -- dropped by precedence - PLUS shift 74 - PLUS reduce 149 -- dropped by precedence - MINUS shift 73 - MINUS reduce 149 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 149 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 149 -- dropped by precedence - MOD shift 70 - MOD reduce 149 -- dropped by precedence - BITNOT reduce 149 - LPAREN shift 23 - LPAREN reduce 149 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 149 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 149 -- dropped by precedence - SEMICOLON reduce 149 - NAME reduce 149 - COLON reduce 149 - FUNCTION reduce 149 - RPAREN reduce 149 - LBRACKET reduce 149 - VAR reduce 149 - NUMBER reduce 149 - RSQBRACKET reduce 149 - KILLS reduce 149 - TRGCONST reduce 149 - L2V reduce 149 - MAPSTRING reduce 149 - UNIT reduce 149 - SWITCH reduce 149 - LOCATION reduce 149 - STATTXTTBL reduce 149 - VARRAY reduce 149 - STATIC reduce 149 - CONST reduce 149 - INC reduce 149 - DEC reduce 149 - ONCE reduce 149 - IF reduce 149 - SWITCHCASE reduce 149 - WHILE reduce 149 - FOR reduce 149 - FOREACH reduce 149 - CONTINUE reduce 149 - BREAK reduce 149 - RETURN reduce 149 - ACTIONNAME reduce 149 + COMMA reduce 106 + LSQBRACKET shift 356 + SEMICOLON reduce 106 + RPAREN reduce 106 + {default} reduce 109 -State 261: +State 219: constExpr ::= constExpr * PLUS constExpr + (124) constExpr ::= constExpr PLUS constExpr * nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr nonConstExpr ::= constExpr * MINUS nonConstExpr @@ -25261,7 +18921,6 @@ State 261: constExpr ::= constExpr * RSHIFT constExpr nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - (145) constExpr ::= constExpr BITAND constExpr * nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr nonConstExpr ::= constExpr * BITOR nonConstExpr @@ -25274,172 +18933,25 @@ State 261: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 145 - COMMA reduce 145 - LOR reduce 145 - LAND reduce 145 - EQ shift 138 -- dropped by precedence - EQ reduce 145 - LE shift 125 -- dropped by precedence - LE reduce 145 - LT shift 123 -- dropped by precedence - LT reduce 145 - GE shift 124 -- dropped by precedence - GE reduce 145 - GT shift 122 -- dropped by precedence - GT reduce 145 - NE shift 126 -- dropped by precedence - NE reduce 145 - BITOR shift 102 -- dropped by precedence - BITOR reduce 145 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 145 - BITAND shift 103 -- dropped by precedence - BITAND reduce 145 - LSHIFT shift 105 - LSHIFT reduce 145 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 145 -- dropped by precedence - PLUS shift 113 - PLUS reduce 145 -- dropped by precedence - MINUS shift 112 - MINUS reduce 145 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 145 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 145 -- dropped by precedence MOD shift 106 - MOD reduce 145 -- dropped by precedence - BITNOT reduce 145 - LPAREN reduce 145 - LSQBRACKET reduce 145 - PERIOD reduce 145 - SEMICOLON reduce 145 - NAME reduce 145 - COLON reduce 145 - FUNCTION reduce 145 - RPAREN reduce 145 - LBRACKET reduce 145 - VAR reduce 145 - NUMBER reduce 145 - RSQBRACKET reduce 145 - KILLS reduce 145 - TRGCONST reduce 145 - L2V reduce 145 - MAPSTRING reduce 145 - UNIT reduce 145 - SWITCH reduce 145 - LOCATION reduce 145 - STATTXTTBL reduce 145 - VARRAY reduce 145 - STATIC reduce 145 - CONST reduce 145 - INC reduce 145 - DEC reduce 145 - ONCE reduce 145 - IF reduce 145 - SWITCHCASE reduce 145 - WHILE reduce 145 - FOR reduce 145 - FOREACH reduce 145 - CONTINUE reduce 145 - BREAK reduce 145 - RETURN reduce 145 - ACTIONNAME reduce 145 + {default} reduce 124 -State 262: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - (146) nonConstExpr ::= constExpr BITAND nonConstExpr * - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr +State 220: + nonConstExpr ::= LPAREN logicExpr * RPAREN + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr - QMARK shift 76 -- dropped by precedence - QMARK reduce 146 - COMMA reduce 146 - LOR reduce 146 - LAND reduce 146 - EQ reduce 146 - LE reduce 146 - LT reduce 146 - GE reduce 146 - GT reduce 146 - NE reduce 146 - BITOR shift 66 -- dropped by precedence - BITOR reduce 146 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 146 - BITAND shift 67 -- dropped by precedence - BITAND reduce 146 - LSHIFT shift 69 - LSHIFT reduce 146 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 146 -- dropped by precedence - PLUS shift 74 - PLUS reduce 146 -- dropped by precedence - MINUS shift 73 - MINUS reduce 146 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 146 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 146 -- dropped by precedence - MOD shift 70 - MOD reduce 146 -- dropped by precedence - BITNOT reduce 146 - LPAREN shift 23 - LPAREN reduce 146 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 146 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 146 -- dropped by precedence - SEMICOLON reduce 146 - NAME reduce 146 - COLON reduce 146 - FUNCTION reduce 146 - RPAREN reduce 146 - LBRACKET reduce 146 - VAR reduce 146 - NUMBER reduce 146 - RSQBRACKET reduce 146 - KILLS reduce 146 - TRGCONST reduce 146 - L2V reduce 146 - MAPSTRING reduce 146 - UNIT reduce 146 - SWITCH reduce 146 - LOCATION reduce 146 - STATTXTTBL reduce 146 - VARRAY reduce 146 - STATIC reduce 146 - CONST reduce 146 - INC reduce 146 - DEC reduce 146 - ONCE reduce 146 - IF reduce 146 - SWITCHCASE reduce 146 - WHILE reduce 146 - FOR reduce 146 - FOREACH reduce 146 - CONTINUE reduce 146 - BREAK reduce 146 - RETURN reduce 146 - ACTIONNAME reduce 146 + LOR shift 82 + LAND shift 84 + RPAREN shift 456 -State 263: +State 221: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + (127) constExpr ::= constExpr MINUS constExpr * nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr nonConstExpr ::= constExpr * MULTIPLY nonConstExpr @@ -25450,7 +18962,6 @@ State 263: constExpr ::= constExpr * LSHIFT constExpr nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - (142) constExpr ::= constExpr RSHIFT constExpr * nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr nonConstExpr ::= constExpr * BITAND nonConstExpr @@ -25465,190 +18976,23 @@ State 263: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 142 - COMMA reduce 142 - LOR reduce 142 - LAND reduce 142 - EQ shift 138 -- dropped by precedence - EQ reduce 142 - LE shift 125 -- dropped by precedence - LE reduce 142 - LT shift 123 -- dropped by precedence - LT reduce 142 - GE shift 124 -- dropped by precedence - GE reduce 142 - GT shift 122 -- dropped by precedence - GT reduce 142 - NE shift 126 -- dropped by precedence - NE reduce 142 - BITOR shift 102 -- dropped by precedence - BITOR reduce 142 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 142 - BITAND shift 103 -- dropped by precedence - BITAND reduce 142 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 142 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 142 - PLUS shift 113 - PLUS reduce 142 -- dropped by precedence - MINUS shift 112 - MINUS reduce 142 -- dropped by precedence DIVIDE shift 107 - DIVIDE reduce 142 -- dropped by precedence MULTIPLY shift 108 - MULTIPLY reduce 142 -- dropped by precedence MOD shift 106 - MOD reduce 142 -- dropped by precedence - BITNOT reduce 142 - LPAREN reduce 142 - LSQBRACKET reduce 142 - PERIOD reduce 142 - SEMICOLON reduce 142 - NAME reduce 142 - COLON reduce 142 - FUNCTION reduce 142 - RPAREN reduce 142 - LBRACKET reduce 142 - VAR reduce 142 - NUMBER reduce 142 - RSQBRACKET reduce 142 - KILLS reduce 142 - TRGCONST reduce 142 - L2V reduce 142 - MAPSTRING reduce 142 - UNIT reduce 142 - SWITCH reduce 142 - LOCATION reduce 142 - STATTXTTBL reduce 142 - VARRAY reduce 142 - STATIC reduce 142 - CONST reduce 142 - INC reduce 142 - DEC reduce 142 - ONCE reduce 142 - IF reduce 142 - SWITCHCASE reduce 142 - WHILE reduce 142 - FOR reduce 142 - FOREACH reduce 142 - CONTINUE reduce 142 - BREAK reduce 142 - RETURN reduce 142 - ACTIONNAME reduce 142 - -State 264: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - (143) nonConstExpr ::= constExpr RSHIFT nonConstExpr * - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 143 - COMMA reduce 143 - LOR reduce 143 - LAND reduce 143 - EQ reduce 143 - LE reduce 143 - LT reduce 143 - GE reduce 143 - GT reduce 143 - NE reduce 143 - BITOR shift 66 -- dropped by precedence - BITOR reduce 143 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 143 - BITAND shift 67 -- dropped by precedence - BITAND reduce 143 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 143 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 143 - PLUS shift 74 - PLUS reduce 143 -- dropped by precedence - MINUS shift 73 - MINUS reduce 143 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 143 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 143 -- dropped by precedence - MOD shift 70 - MOD reduce 143 -- dropped by precedence - BITNOT reduce 143 - LPAREN shift 23 - LPAREN reduce 143 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 143 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 143 -- dropped by precedence - SEMICOLON reduce 143 - NAME reduce 143 - COLON reduce 143 - FUNCTION reduce 143 - RPAREN reduce 143 - LBRACKET reduce 143 - VAR reduce 143 - NUMBER reduce 143 - RSQBRACKET reduce 143 - KILLS reduce 143 - TRGCONST reduce 143 - L2V reduce 143 - MAPSTRING reduce 143 - UNIT reduce 143 - SWITCH reduce 143 - LOCATION reduce 143 - STATTXTTBL reduce 143 - VARRAY reduce 143 - STATIC reduce 143 - CONST reduce 143 - INC reduce 143 - DEC reduce 143 - ONCE reduce 143 - IF reduce 143 - SWITCHCASE reduce 143 - WHILE reduce 143 - FOR reduce 143 - FOREACH reduce 143 - CONTINUE reduce 143 - BREAK reduce 143 - RETURN reduce 143 - ACTIONNAME reduce 143 + {default} reduce 127 -State 265: +State 222: constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr + (127) constExpr ::= constExpr MINUS constExpr * constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - (139) constExpr ::= constExpr LSHIFT constExpr * - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -25656,190 +19000,23 @@ State 265: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 139 - COMMA reduce 139 - LOR reduce 139 - LAND reduce 139 - EQ shift 138 -- dropped by precedence - EQ reduce 139 - LE shift 125 -- dropped by precedence - LE reduce 139 - LT shift 123 -- dropped by precedence - LT reduce 139 - GE shift 124 -- dropped by precedence - GE reduce 139 - GT shift 122 -- dropped by precedence - GT reduce 139 - NE shift 126 -- dropped by precedence - NE reduce 139 - BITOR shift 102 -- dropped by precedence - BITOR reduce 139 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 139 - BITAND shift 103 -- dropped by precedence - BITAND reduce 139 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 139 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 139 - PLUS shift 113 - PLUS reduce 139 -- dropped by precedence - MINUS shift 112 - MINUS reduce 139 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 139 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 139 -- dropped by precedence - MOD shift 106 - MOD reduce 139 -- dropped by precedence - BITNOT reduce 139 - LPAREN reduce 139 - LSQBRACKET reduce 139 - PERIOD reduce 139 - SEMICOLON reduce 139 - NAME reduce 139 - COLON reduce 139 - FUNCTION reduce 139 - RPAREN reduce 139 - LBRACKET reduce 139 - VAR reduce 139 - NUMBER reduce 139 - RSQBRACKET reduce 139 - KILLS reduce 139 - TRGCONST reduce 139 - L2V reduce 139 - MAPSTRING reduce 139 - UNIT reduce 139 - SWITCH reduce 139 - LOCATION reduce 139 - STATTXTTBL reduce 139 - VARRAY reduce 139 - STATIC reduce 139 - CONST reduce 139 - INC reduce 139 - DEC reduce 139 - ONCE reduce 139 - IF reduce 139 - SWITCHCASE reduce 139 - WHILE reduce 139 - FOR reduce 139 - FOREACH reduce 139 - CONTINUE reduce 139 - BREAK reduce 139 - RETURN reduce 139 - ACTIONNAME reduce 139 - -State 266: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - (140) nonConstExpr ::= constExpr LSHIFT nonConstExpr * - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 140 - COMMA reduce 140 - LOR reduce 140 - LAND reduce 140 - EQ reduce 140 - LE reduce 140 - LT reduce 140 - GE reduce 140 - GT reduce 140 - NE reduce 140 - BITOR shift 66 -- dropped by precedence - BITOR reduce 140 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 140 - BITAND shift 67 -- dropped by precedence - BITAND reduce 140 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 140 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 140 - PLUS shift 74 - PLUS reduce 140 -- dropped by precedence - MINUS shift 73 - MINUS reduce 140 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 140 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 140 -- dropped by precedence - MOD shift 70 - MOD reduce 140 -- dropped by precedence - BITNOT reduce 140 - LPAREN shift 23 - LPAREN reduce 140 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 140 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 140 -- dropped by precedence - SEMICOLON reduce 140 - NAME reduce 140 - COLON reduce 140 - FUNCTION reduce 140 - RPAREN reduce 140 - LBRACKET reduce 140 - VAR reduce 140 - NUMBER reduce 140 - RSQBRACKET reduce 140 - KILLS reduce 140 - TRGCONST reduce 140 - L2V reduce 140 - MAPSTRING reduce 140 - UNIT reduce 140 - SWITCH reduce 140 - LOCATION reduce 140 - STATTXTTBL reduce 140 - VARRAY reduce 140 - STATIC reduce 140 - CONST reduce 140 - INC reduce 140 - DEC reduce 140 - ONCE reduce 140 - IF reduce 140 - SWITCHCASE reduce 140 - WHILE reduce 140 - FOR reduce 140 - FOREACH reduce 140 - CONTINUE reduce 140 - BREAK reduce 140 - RETURN reduce 140 - ACTIONNAME reduce 140 + DIVIDE shift 133 + MULTIPLY shift 134 + MOD shift 132 + {default} reduce 127 -State 267: +State 223: constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr + (124) constExpr ::= constExpr PLUS constExpr * constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - (136) constExpr ::= constExpr MOD constExpr * - nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -25847,80 +19024,12 @@ State 267: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - QMARK reduce 136 - COMMA reduce 136 - LOR reduce 136 - LAND reduce 136 - EQ shift 138 -- dropped by precedence - EQ reduce 136 - LE shift 125 -- dropped by precedence - LE reduce 136 - LT shift 123 -- dropped by precedence - LT reduce 136 - GE shift 124 -- dropped by precedence - GE reduce 136 - GT shift 122 -- dropped by precedence - GT reduce 136 - NE shift 126 -- dropped by precedence - NE reduce 136 - BITOR shift 102 -- dropped by precedence - BITOR reduce 136 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 136 - BITAND shift 103 -- dropped by precedence - BITAND reduce 136 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 136 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 136 - PLUS shift 113 -- dropped by precedence - PLUS reduce 136 - MINUS shift 112 -- dropped by precedence - MINUS reduce 136 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 136 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 136 - MOD shift 106 -- dropped by precedence - MOD reduce 136 - BITNOT reduce 136 - LPAREN reduce 136 - LSQBRACKET reduce 136 - PERIOD reduce 136 - SEMICOLON reduce 136 - NAME reduce 136 - COLON reduce 136 - FUNCTION reduce 136 - RPAREN reduce 136 - LBRACKET reduce 136 - VAR reduce 136 - NUMBER reduce 136 - RSQBRACKET reduce 136 - KILLS reduce 136 - TRGCONST reduce 136 - L2V reduce 136 - MAPSTRING reduce 136 - UNIT reduce 136 - SWITCH reduce 136 - LOCATION reduce 136 - STATTXTTBL reduce 136 - VARRAY reduce 136 - STATIC reduce 136 - CONST reduce 136 - INC reduce 136 - DEC reduce 136 - ONCE reduce 136 - IF reduce 136 - SWITCHCASE reduce 136 - WHILE reduce 136 - FOR reduce 136 - FOREACH reduce 136 - CONTINUE reduce 136 - BREAK reduce 136 - RETURN reduce 136 - ACTIONNAME reduce 136 + DIVIDE shift 133 + MULTIPLY shift 134 + MOD shift 132 + {default} reduce 124 -State 268: +State 224: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -25938,600 +19047,12 @@ State 268: nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - QMARK shift 76 -- dropped by precedence - QMARK reduce 137 - COMMA reduce 137 - LOR reduce 137 - LAND reduce 137 - EQ reduce 137 - LE reduce 137 - LT reduce 137 - GE reduce 137 - GT reduce 137 - NE reduce 137 - BITOR shift 66 -- dropped by precedence - BITOR reduce 137 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 137 - BITAND shift 67 -- dropped by precedence - BITAND reduce 137 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 137 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 137 - PLUS shift 74 -- dropped by precedence - PLUS reduce 137 - MINUS shift 73 -- dropped by precedence - MINUS reduce 137 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 137 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 137 - MOD shift 70 -- dropped by precedence - MOD reduce 137 - BITNOT reduce 137 - LPAREN shift 23 - LPAREN reduce 137 -- dropped by precedence + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 137 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 137 -- dropped by precedence - SEMICOLON reduce 137 - NAME reduce 137 - COLON reduce 137 - FUNCTION reduce 137 - RPAREN reduce 137 - LBRACKET reduce 137 - VAR reduce 137 - NUMBER reduce 137 - RSQBRACKET reduce 137 - KILLS reduce 137 - TRGCONST reduce 137 - L2V reduce 137 - MAPSTRING reduce 137 - UNIT reduce 137 - SWITCH reduce 137 - LOCATION reduce 137 - STATTXTTBL reduce 137 - VARRAY reduce 137 - STATIC reduce 137 - CONST reduce 137 - INC reduce 137 - DEC reduce 137 - ONCE reduce 137 - IF reduce 137 - SWITCHCASE reduce 137 - WHILE reduce 137 - FOR reduce 137 - FOREACH reduce 137 - CONTINUE reduce 137 - BREAK reduce 137 - RETURN reduce 137 - ACTIONNAME reduce 137 + PERIOD shift 247 + {default} reduce 137 -State 269: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - (133) constExpr ::= constExpr DIVIDE constExpr * - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - - QMARK reduce 133 - COMMA reduce 133 - LOR reduce 133 - LAND reduce 133 - EQ shift 138 -- dropped by precedence - EQ reduce 133 - LE shift 125 -- dropped by precedence - LE reduce 133 - LT shift 123 -- dropped by precedence - LT reduce 133 - GE shift 124 -- dropped by precedence - GE reduce 133 - GT shift 122 -- dropped by precedence - GT reduce 133 - NE shift 126 -- dropped by precedence - NE reduce 133 - BITOR shift 102 -- dropped by precedence - BITOR reduce 133 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 133 - BITAND shift 103 -- dropped by precedence - BITAND reduce 133 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 133 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 133 - PLUS shift 113 -- dropped by precedence - PLUS reduce 133 - MINUS shift 112 -- dropped by precedence - MINUS reduce 133 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 133 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 133 - MOD shift 106 -- dropped by precedence - MOD reduce 133 - BITNOT reduce 133 - LPAREN reduce 133 - LSQBRACKET reduce 133 - PERIOD reduce 133 - SEMICOLON reduce 133 - NAME reduce 133 - COLON reduce 133 - FUNCTION reduce 133 - RPAREN reduce 133 - LBRACKET reduce 133 - VAR reduce 133 - NUMBER reduce 133 - RSQBRACKET reduce 133 - KILLS reduce 133 - TRGCONST reduce 133 - L2V reduce 133 - MAPSTRING reduce 133 - UNIT reduce 133 - SWITCH reduce 133 - LOCATION reduce 133 - STATTXTTBL reduce 133 - VARRAY reduce 133 - STATIC reduce 133 - CONST reduce 133 - INC reduce 133 - DEC reduce 133 - ONCE reduce 133 - IF reduce 133 - SWITCHCASE reduce 133 - WHILE reduce 133 - FOR reduce 133 - FOREACH reduce 133 - CONTINUE reduce 133 - BREAK reduce 133 - RETURN reduce 133 - ACTIONNAME reduce 133 - -State 270: - (153) nonConstExpr ::= nonConstExpr BITXOR expr * - - QMARK reduce 153 - COMMA reduce 153 - LOR reduce 153 - LAND reduce 153 - EQ reduce 153 - LE reduce 153 - LT reduce 153 - GE reduce 153 - GT reduce 153 - NE reduce 153 - BITOR reduce 153 - BITXOR reduce 153 - BITAND reduce 153 - LSHIFT reduce 153 - RSHIFT reduce 153 - PLUS reduce 153 - MINUS reduce 153 - DIVIDE reduce 153 - MULTIPLY reduce 153 - MOD reduce 153 - BITNOT reduce 153 - LPAREN reduce 153 - LSQBRACKET reduce 153 - PERIOD reduce 153 - SEMICOLON reduce 153 - NAME reduce 153 - COLON reduce 153 - FUNCTION reduce 153 - RPAREN reduce 153 - LBRACKET reduce 153 - VAR reduce 153 - NUMBER reduce 153 - RSQBRACKET reduce 153 - KILLS reduce 153 - TRGCONST reduce 153 - L2V reduce 153 - MAPSTRING reduce 153 - UNIT reduce 153 - SWITCH reduce 153 - LOCATION reduce 153 - STATTXTTBL reduce 153 - VARRAY reduce 153 - STATIC reduce 153 - CONST reduce 153 - INC reduce 153 - DEC reduce 153 - ONCE reduce 153 - IF reduce 153 - SWITCHCASE reduce 153 - WHILE reduce 153 - FOR reduce 153 - FOREACH reduce 153 - CONTINUE reduce 153 - BREAK reduce 153 - RETURN reduce 153 - ACTIONNAME reduce 153 - -State 271: - (150) nonConstExpr ::= nonConstExpr BITOR expr * - - QMARK reduce 150 - COMMA reduce 150 - LOR reduce 150 - LAND reduce 150 - EQ reduce 150 - LE reduce 150 - LT reduce 150 - GE reduce 150 - GT reduce 150 - NE reduce 150 - BITOR reduce 150 - BITXOR reduce 150 - BITAND reduce 150 - LSHIFT reduce 150 - RSHIFT reduce 150 - PLUS reduce 150 - MINUS reduce 150 - DIVIDE reduce 150 - MULTIPLY reduce 150 - MOD reduce 150 - BITNOT reduce 150 - LPAREN reduce 150 - LSQBRACKET reduce 150 - PERIOD reduce 150 - SEMICOLON reduce 150 - NAME reduce 150 - COLON reduce 150 - FUNCTION reduce 150 - RPAREN reduce 150 - LBRACKET reduce 150 - VAR reduce 150 - NUMBER reduce 150 - RSQBRACKET reduce 150 - KILLS reduce 150 - TRGCONST reduce 150 - L2V reduce 150 - MAPSTRING reduce 150 - UNIT reduce 150 - SWITCH reduce 150 - LOCATION reduce 150 - STATTXTTBL reduce 150 - VARRAY reduce 150 - STATIC reduce 150 - CONST reduce 150 - INC reduce 150 - DEC reduce 150 - ONCE reduce 150 - IF reduce 150 - SWITCHCASE reduce 150 - WHILE reduce 150 - FOR reduce 150 - FOREACH reduce 150 - CONTINUE reduce 150 - BREAK reduce 150 - RETURN reduce 150 - ACTIONNAME reduce 150 - -State 272: - (147) nonConstExpr ::= nonConstExpr BITAND expr * - - QMARK reduce 147 - COMMA reduce 147 - LOR reduce 147 - LAND reduce 147 - EQ reduce 147 - LE reduce 147 - LT reduce 147 - GE reduce 147 - GT reduce 147 - NE reduce 147 - BITOR reduce 147 - BITXOR reduce 147 - BITAND reduce 147 - LSHIFT reduce 147 - RSHIFT reduce 147 - PLUS reduce 147 - MINUS reduce 147 - DIVIDE reduce 147 - MULTIPLY reduce 147 - MOD reduce 147 - BITNOT reduce 147 - LPAREN reduce 147 - LSQBRACKET reduce 147 - PERIOD reduce 147 - SEMICOLON reduce 147 - NAME reduce 147 - COLON reduce 147 - FUNCTION reduce 147 - RPAREN reduce 147 - LBRACKET reduce 147 - VAR reduce 147 - NUMBER reduce 147 - RSQBRACKET reduce 147 - KILLS reduce 147 - TRGCONST reduce 147 - L2V reduce 147 - MAPSTRING reduce 147 - UNIT reduce 147 - SWITCH reduce 147 - LOCATION reduce 147 - STATTXTTBL reduce 147 - VARRAY reduce 147 - STATIC reduce 147 - CONST reduce 147 - INC reduce 147 - DEC reduce 147 - ONCE reduce 147 - IF reduce 147 - SWITCHCASE reduce 147 - WHILE reduce 147 - FOR reduce 147 - FOREACH reduce 147 - CONTINUE reduce 147 - BREAK reduce 147 - RETURN reduce 147 - ACTIONNAME reduce 147 - -State 273: - (144) nonConstExpr ::= nonConstExpr RSHIFT expr * - - QMARK reduce 144 - COMMA reduce 144 - LOR reduce 144 - LAND reduce 144 - EQ reduce 144 - LE reduce 144 - LT reduce 144 - GE reduce 144 - GT reduce 144 - NE reduce 144 - BITOR reduce 144 - BITXOR reduce 144 - BITAND reduce 144 - LSHIFT reduce 144 - RSHIFT reduce 144 - PLUS reduce 144 - MINUS reduce 144 - DIVIDE reduce 144 - MULTIPLY reduce 144 - MOD reduce 144 - BITNOT reduce 144 - LPAREN reduce 144 - LSQBRACKET reduce 144 - PERIOD reduce 144 - SEMICOLON reduce 144 - NAME reduce 144 - COLON reduce 144 - FUNCTION reduce 144 - RPAREN reduce 144 - LBRACKET reduce 144 - VAR reduce 144 - NUMBER reduce 144 - RSQBRACKET reduce 144 - KILLS reduce 144 - TRGCONST reduce 144 - L2V reduce 144 - MAPSTRING reduce 144 - UNIT reduce 144 - SWITCH reduce 144 - LOCATION reduce 144 - STATTXTTBL reduce 144 - VARRAY reduce 144 - STATIC reduce 144 - CONST reduce 144 - INC reduce 144 - DEC reduce 144 - ONCE reduce 144 - IF reduce 144 - SWITCHCASE reduce 144 - WHILE reduce 144 - FOR reduce 144 - FOREACH reduce 144 - CONTINUE reduce 144 - BREAK reduce 144 - RETURN reduce 144 - ACTIONNAME reduce 144 - -State 274: - (141) nonConstExpr ::= nonConstExpr LSHIFT expr * - - QMARK reduce 141 - COMMA reduce 141 - LOR reduce 141 - LAND reduce 141 - EQ reduce 141 - LE reduce 141 - LT reduce 141 - GE reduce 141 - GT reduce 141 - NE reduce 141 - BITOR reduce 141 - BITXOR reduce 141 - BITAND reduce 141 - LSHIFT reduce 141 - RSHIFT reduce 141 - PLUS reduce 141 - MINUS reduce 141 - DIVIDE reduce 141 - MULTIPLY reduce 141 - MOD reduce 141 - BITNOT reduce 141 - LPAREN reduce 141 - LSQBRACKET reduce 141 - PERIOD reduce 141 - SEMICOLON reduce 141 - NAME reduce 141 - COLON reduce 141 - FUNCTION reduce 141 - RPAREN reduce 141 - LBRACKET reduce 141 - VAR reduce 141 - NUMBER reduce 141 - RSQBRACKET reduce 141 - KILLS reduce 141 - TRGCONST reduce 141 - L2V reduce 141 - MAPSTRING reduce 141 - UNIT reduce 141 - SWITCH reduce 141 - LOCATION reduce 141 - STATTXTTBL reduce 141 - VARRAY reduce 141 - STATIC reduce 141 - CONST reduce 141 - INC reduce 141 - DEC reduce 141 - ONCE reduce 141 - IF reduce 141 - SWITCHCASE reduce 141 - WHILE reduce 141 - FOR reduce 141 - FOREACH reduce 141 - CONTINUE reduce 141 - BREAK reduce 141 - RETURN reduce 141 - ACTIONNAME reduce 141 - -State 275: - (280) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * - - QMARK reduce 280 - COMMA reduce 280 - LOR reduce 280 - LAND reduce 280 - EQ reduce 280 - LE reduce 280 - LT reduce 280 - GE reduce 280 - GT reduce 280 - NE reduce 280 - BITOR reduce 280 - BITXOR reduce 280 - BITAND reduce 280 - LSHIFT reduce 280 - RSHIFT reduce 280 - PLUS reduce 280 - MINUS reduce 280 - DIVIDE reduce 280 - MULTIPLY reduce 280 - MOD reduce 280 - BITNOT reduce 280 - LPAREN reduce 280 - LSQBRACKET reduce 280 - PERIOD reduce 280 - SEMICOLON reduce 280 - NAME reduce 280 - COLON reduce 280 - FUNCTION reduce 280 - RPAREN reduce 280 - LBRACKET reduce 280 - VAR reduce 280 - NUMBER reduce 280 - RSQBRACKET reduce 280 - KILLS reduce 280 - TRGCONST reduce 280 - L2V reduce 280 - MAPSTRING reduce 280 - UNIT reduce 280 - SWITCH reduce 280 - LOCATION reduce 280 - STATTXTTBL reduce 280 - VARRAY reduce 280 - STATIC reduce 280 - CONST reduce 280 - INC reduce 280 - DEC reduce 280 - ONCE reduce 280 - IF reduce 280 - SWITCHCASE reduce 280 - WHILE reduce 280 - FOR reduce 280 - FOREACH reduce 280 - CONTINUE reduce 280 - BREAK reduce 280 - RETURN reduce 280 - ACTIONNAME reduce 280 - -State 276: - (138) nonConstExpr ::= nonConstExpr MOD expr * - - QMARK reduce 138 - COMMA reduce 138 - LOR reduce 138 - LAND reduce 138 - EQ reduce 138 - LE reduce 138 - LT reduce 138 - GE reduce 138 - GT reduce 138 - NE reduce 138 - BITOR reduce 138 - BITXOR reduce 138 - BITAND reduce 138 - LSHIFT reduce 138 - RSHIFT reduce 138 - PLUS reduce 138 - MINUS reduce 138 - DIVIDE reduce 138 - MULTIPLY reduce 138 - MOD reduce 138 - BITNOT reduce 138 - LPAREN reduce 138 - LSQBRACKET reduce 138 - PERIOD reduce 138 - SEMICOLON reduce 138 - NAME reduce 138 - COLON reduce 138 - FUNCTION reduce 138 - RPAREN reduce 138 - LBRACKET reduce 138 - VAR reduce 138 - NUMBER reduce 138 - RSQBRACKET reduce 138 - KILLS reduce 138 - TRGCONST reduce 138 - L2V reduce 138 - MAPSTRING reduce 138 - UNIT reduce 138 - SWITCH reduce 138 - LOCATION reduce 138 - STATTXTTBL reduce 138 - VARRAY reduce 138 - STATIC reduce 138 - CONST reduce 138 - INC reduce 138 - DEC reduce 138 - ONCE reduce 138 - IF reduce 138 - SWITCHCASE reduce 138 - WHILE reduce 138 - FOR reduce 138 - FOREACH reduce 138 - CONTINUE reduce 138 - BREAK reduce 138 - RETURN reduce 138 - ACTIONNAME reduce 138 - -State 277: +State 225: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -26549,138 +19070,12 @@ State 277: nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - QMARK shift 76 -- dropped by precedence - QMARK reduce 134 - COMMA reduce 134 - LOR reduce 134 - LAND reduce 134 - EQ reduce 134 - LE reduce 134 - LT reduce 134 - GE reduce 134 - GT reduce 134 - NE reduce 134 - BITOR shift 66 -- dropped by precedence - BITOR reduce 134 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 134 - BITAND shift 67 -- dropped by precedence - BITAND reduce 134 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 134 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 134 - PLUS shift 74 -- dropped by precedence - PLUS reduce 134 - MINUS shift 73 -- dropped by precedence - MINUS reduce 134 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 134 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 134 - MOD shift 70 -- dropped by precedence - MOD reduce 134 - BITNOT reduce 134 - LPAREN shift 23 - LPAREN reduce 134 -- dropped by precedence + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 134 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 134 -- dropped by precedence - SEMICOLON reduce 134 - NAME reduce 134 - COLON reduce 134 - FUNCTION reduce 134 - RPAREN reduce 134 - LBRACKET reduce 134 - VAR reduce 134 - NUMBER reduce 134 - RSQBRACKET reduce 134 - KILLS reduce 134 - TRGCONST reduce 134 - L2V reduce 134 - MAPSTRING reduce 134 - UNIT reduce 134 - SWITCH reduce 134 - LOCATION reduce 134 - STATTXTTBL reduce 134 - VARRAY reduce 134 - STATIC reduce 134 - CONST reduce 134 - INC reduce 134 - DEC reduce 134 - ONCE reduce 134 - IF reduce 134 - SWITCHCASE reduce 134 - WHILE reduce 134 - FOR reduce 134 - FOREACH reduce 134 - CONTINUE reduce 134 - BREAK reduce 134 - RETURN reduce 134 - ACTIONNAME reduce 134 - -State 278: - (135) nonConstExpr ::= nonConstExpr DIVIDE expr * + PERIOD shift 247 + {default} reduce 134 - QMARK reduce 135 - COMMA reduce 135 - LOR reduce 135 - LAND reduce 135 - EQ reduce 135 - LE reduce 135 - LT reduce 135 - GE reduce 135 - GT reduce 135 - NE reduce 135 - BITOR reduce 135 - BITXOR reduce 135 - BITAND reduce 135 - LSHIFT reduce 135 - RSHIFT reduce 135 - PLUS reduce 135 - MINUS reduce 135 - DIVIDE reduce 135 - MULTIPLY reduce 135 - MOD reduce 135 - BITNOT reduce 135 - LPAREN reduce 135 - LSQBRACKET reduce 135 - PERIOD reduce 135 - SEMICOLON reduce 135 - NAME reduce 135 - COLON reduce 135 - FUNCTION reduce 135 - RPAREN reduce 135 - LBRACKET reduce 135 - VAR reduce 135 - NUMBER reduce 135 - RSQBRACKET reduce 135 - KILLS reduce 135 - TRGCONST reduce 135 - L2V reduce 135 - MAPSTRING reduce 135 - UNIT reduce 135 - SWITCH reduce 135 - LOCATION reduce 135 - STATTXTTBL reduce 135 - VARRAY reduce 135 - STATIC reduce 135 - CONST reduce 135 - INC reduce 135 - DEC reduce 135 - ONCE reduce 135 - IF reduce 135 - SWITCHCASE reduce 135 - WHILE reduce 135 - FOR reduce 135 - FOREACH reduce 135 - CONTINUE reduce 135 - BREAK reduce 135 - RETURN reduce 135 - ACTIONNAME reduce 135 - -State 279: +State 226: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -26698,138 +19093,12 @@ State 279: nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - QMARK shift 76 -- dropped by precedence - QMARK reduce 131 - COMMA reduce 131 - LOR reduce 131 - LAND reduce 131 - EQ reduce 131 - LE reduce 131 - LT reduce 131 - GE reduce 131 - GT reduce 131 - NE reduce 131 - BITOR shift 66 -- dropped by precedence - BITOR reduce 131 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 131 - BITAND shift 67 -- dropped by precedence - BITAND reduce 131 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 131 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 131 - PLUS shift 74 -- dropped by precedence - PLUS reduce 131 - MINUS shift 73 -- dropped by precedence - MINUS reduce 131 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 131 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 131 - MOD shift 70 -- dropped by precedence - MOD reduce 131 - BITNOT reduce 131 - LPAREN shift 23 - LPAREN reduce 131 -- dropped by precedence + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 131 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 131 -- dropped by precedence - SEMICOLON reduce 131 - NAME reduce 131 - COLON reduce 131 - FUNCTION reduce 131 - RPAREN reduce 131 - LBRACKET reduce 131 - VAR reduce 131 - NUMBER reduce 131 - RSQBRACKET reduce 131 - KILLS reduce 131 - TRGCONST reduce 131 - L2V reduce 131 - MAPSTRING reduce 131 - UNIT reduce 131 - SWITCH reduce 131 - LOCATION reduce 131 - STATTXTTBL reduce 131 - VARRAY reduce 131 - STATIC reduce 131 - CONST reduce 131 - INC reduce 131 - DEC reduce 131 - ONCE reduce 131 - IF reduce 131 - SWITCHCASE reduce 131 - WHILE reduce 131 - FOR reduce 131 - FOREACH reduce 131 - CONTINUE reduce 131 - BREAK reduce 131 - RETURN reduce 131 - ACTIONNAME reduce 131 - -State 280: - (132) nonConstExpr ::= nonConstExpr MULTIPLY expr * + PERIOD shift 247 + {default} reduce 131 - QMARK reduce 132 - COMMA reduce 132 - LOR reduce 132 - LAND reduce 132 - EQ reduce 132 - LE reduce 132 - LT reduce 132 - GE reduce 132 - GT reduce 132 - NE reduce 132 - BITOR reduce 132 - BITXOR reduce 132 - BITAND reduce 132 - LSHIFT reduce 132 - RSHIFT reduce 132 - PLUS reduce 132 - MINUS reduce 132 - DIVIDE reduce 132 - MULTIPLY reduce 132 - MOD reduce 132 - BITNOT reduce 132 - LPAREN reduce 132 - LSQBRACKET reduce 132 - PERIOD reduce 132 - SEMICOLON reduce 132 - NAME reduce 132 - COLON reduce 132 - FUNCTION reduce 132 - RPAREN reduce 132 - LBRACKET reduce 132 - VAR reduce 132 - NUMBER reduce 132 - RSQBRACKET reduce 132 - KILLS reduce 132 - TRGCONST reduce 132 - L2V reduce 132 - MAPSTRING reduce 132 - UNIT reduce 132 - SWITCH reduce 132 - LOCATION reduce 132 - STATTXTTBL reduce 132 - VARRAY reduce 132 - STATIC reduce 132 - CONST reduce 132 - INC reduce 132 - DEC reduce 132 - ONCE reduce 132 - IF reduce 132 - SWITCHCASE reduce 132 - WHILE reduce 132 - FOR reduce 132 - FOREACH reduce 132 - CONTINUE reduce 132 - BREAK reduce 132 - RETURN reduce 132 - ACTIONNAME reduce 132 - -State 281: +State 227: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -26847,138 +19116,12 @@ State 281: nonConstExpr ::= nonConstExpr * BITXOR expr (159) nonConstExpr ::= BITNOT nonConstExpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 159 - COMMA reduce 159 - LOR reduce 159 - LAND reduce 159 - EQ reduce 159 - LE reduce 159 - LT reduce 159 - GE reduce 159 - GT reduce 159 - NE reduce 159 - BITOR shift 66 -- dropped by precedence - BITOR reduce 159 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 159 - BITAND shift 67 -- dropped by precedence - BITAND reduce 159 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 159 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 159 - PLUS shift 74 -- dropped by precedence - PLUS reduce 159 - MINUS shift 73 -- dropped by precedence - MINUS reduce 159 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 159 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 159 - MOD shift 70 -- dropped by precedence - MOD reduce 159 - BITNOT reduce 159 - LPAREN shift 23 - LPAREN reduce 159 -- dropped by precedence + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 159 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 159 -- dropped by precedence - SEMICOLON reduce 159 - NAME reduce 159 - COLON reduce 159 - FUNCTION reduce 159 - RPAREN reduce 159 - LBRACKET reduce 159 - VAR reduce 159 - NUMBER reduce 159 - RSQBRACKET reduce 159 - KILLS reduce 159 - TRGCONST reduce 159 - L2V reduce 159 - MAPSTRING reduce 159 - UNIT reduce 159 - SWITCH reduce 159 - LOCATION reduce 159 - STATTXTTBL reduce 159 - VARRAY reduce 159 - STATIC reduce 159 - CONST reduce 159 - INC reduce 159 - DEC reduce 159 - ONCE reduce 159 - IF reduce 159 - SWITCHCASE reduce 159 - WHILE reduce 159 - FOR reduce 159 - FOREACH reduce 159 - CONTINUE reduce 159 - BREAK reduce 159 - RETURN reduce 159 - ACTIONNAME reduce 159 - -State 282: - (129) nonConstExpr ::= nonConstExpr MINUS expr * + PERIOD shift 247 + {default} reduce 159 - QMARK reduce 129 - COMMA reduce 129 - LOR reduce 129 - LAND reduce 129 - EQ reduce 129 - LE reduce 129 - LT reduce 129 - GE reduce 129 - GT reduce 129 - NE reduce 129 - BITOR reduce 129 - BITXOR reduce 129 - BITAND reduce 129 - LSHIFT reduce 129 - RSHIFT reduce 129 - PLUS reduce 129 - MINUS reduce 129 - DIVIDE reduce 129 - MULTIPLY reduce 129 - MOD reduce 129 - BITNOT reduce 129 - LPAREN reduce 129 - LSQBRACKET reduce 129 - PERIOD reduce 129 - SEMICOLON reduce 129 - NAME reduce 129 - COLON reduce 129 - FUNCTION reduce 129 - RPAREN reduce 129 - LBRACKET reduce 129 - VAR reduce 129 - NUMBER reduce 129 - RSQBRACKET reduce 129 - KILLS reduce 129 - TRGCONST reduce 129 - L2V reduce 129 - MAPSTRING reduce 129 - UNIT reduce 129 - SWITCH reduce 129 - LOCATION reduce 129 - STATTXTTBL reduce 129 - VARRAY reduce 129 - STATIC reduce 129 - CONST reduce 129 - INC reduce 129 - DEC reduce 129 - ONCE reduce 129 - IF reduce 129 - SWITCHCASE reduce 129 - WHILE reduce 129 - FOR reduce 129 - FOREACH reduce 129 - CONTINUE reduce 129 - BREAK reduce 129 - RETURN reduce 129 - ACTIONNAME reduce 129 - -State 283: +State 228: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -26996,138 +19139,12 @@ State 283: nonConstExpr ::= nonConstExpr * BITXOR expr (157) nonConstExpr ::= MINUS nonConstExpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 157 - COMMA reduce 157 - LOR reduce 157 - LAND reduce 157 - EQ reduce 157 - LE reduce 157 - LT reduce 157 - GE reduce 157 - GT reduce 157 - NE reduce 157 - BITOR shift 66 -- dropped by precedence - BITOR reduce 157 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 157 - BITAND shift 67 -- dropped by precedence - BITAND reduce 157 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 157 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 157 - PLUS shift 74 -- dropped by precedence - PLUS reduce 157 - MINUS shift 73 -- dropped by precedence - MINUS reduce 157 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 157 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 157 - MOD shift 70 -- dropped by precedence - MOD reduce 157 - BITNOT reduce 157 - LPAREN shift 23 - LPAREN reduce 157 -- dropped by precedence + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 157 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 157 -- dropped by precedence - SEMICOLON reduce 157 - NAME reduce 157 - COLON reduce 157 - FUNCTION reduce 157 - RPAREN reduce 157 - LBRACKET reduce 157 - VAR reduce 157 - NUMBER reduce 157 - RSQBRACKET reduce 157 - KILLS reduce 157 - TRGCONST reduce 157 - L2V reduce 157 - MAPSTRING reduce 157 - UNIT reduce 157 - SWITCH reduce 157 - LOCATION reduce 157 - STATTXTTBL reduce 157 - VARRAY reduce 157 - STATIC reduce 157 - CONST reduce 157 - INC reduce 157 - DEC reduce 157 - ONCE reduce 157 - IF reduce 157 - SWITCHCASE reduce 157 - WHILE reduce 157 - FOR reduce 157 - FOREACH reduce 157 - CONTINUE reduce 157 - BREAK reduce 157 - RETURN reduce 157 - ACTIONNAME reduce 157 - -State 284: - (126) nonConstExpr ::= nonConstExpr PLUS expr * + PERIOD shift 247 + {default} reduce 157 - QMARK reduce 126 - COMMA reduce 126 - LOR reduce 126 - LAND reduce 126 - EQ reduce 126 - LE reduce 126 - LT reduce 126 - GE reduce 126 - GT reduce 126 - NE reduce 126 - BITOR reduce 126 - BITXOR reduce 126 - BITAND reduce 126 - LSHIFT reduce 126 - RSHIFT reduce 126 - PLUS reduce 126 - MINUS reduce 126 - DIVIDE reduce 126 - MULTIPLY reduce 126 - MOD reduce 126 - BITNOT reduce 126 - LPAREN reduce 126 - LSQBRACKET reduce 126 - PERIOD reduce 126 - SEMICOLON reduce 126 - NAME reduce 126 - COLON reduce 126 - FUNCTION reduce 126 - RPAREN reduce 126 - LBRACKET reduce 126 - VAR reduce 126 - NUMBER reduce 126 - RSQBRACKET reduce 126 - KILLS reduce 126 - TRGCONST reduce 126 - L2V reduce 126 - MAPSTRING reduce 126 - UNIT reduce 126 - SWITCH reduce 126 - LOCATION reduce 126 - STATTXTTBL reduce 126 - VARRAY reduce 126 - STATIC reduce 126 - CONST reduce 126 - INC reduce 126 - DEC reduce 126 - ONCE reduce 126 - IF reduce 126 - SWITCHCASE reduce 126 - WHILE reduce 126 - FOR reduce 126 - FOREACH reduce 126 - CONTINUE reduce 126 - BREAK reduce 126 - RETURN reduce 126 - ACTIONNAME reduce 126 - -State 285: +State 229: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -27145,4366 +19162,2044 @@ State 285: nonConstExpr ::= nonConstExpr * BITXOR expr (155) nonConstExpr ::= PLUS nonConstExpr * - QMARK shift 76 -- dropped by precedence - QMARK reduce 155 - COMMA reduce 155 - LOR reduce 155 - LAND reduce 155 - EQ reduce 155 - LE reduce 155 - LT reduce 155 - GE reduce 155 - GT reduce 155 - NE reduce 155 - BITOR shift 66 -- dropped by precedence - BITOR reduce 155 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 155 - BITAND shift 67 -- dropped by precedence - BITAND reduce 155 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 155 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 155 - PLUS shift 74 -- dropped by precedence - PLUS reduce 155 - MINUS shift 73 -- dropped by precedence - MINUS reduce 155 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 155 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 155 - MOD shift 70 -- dropped by precedence - MOD reduce 155 - BITNOT reduce 155 - LPAREN shift 23 - LPAREN reduce 155 -- dropped by precedence + LPAREN shift 24 LSQBRACKET shift 79 - LSQBRACKET reduce 155 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 155 -- dropped by precedence - SEMICOLON reduce 155 - NAME reduce 155 - COLON reduce 155 - FUNCTION reduce 155 - RPAREN reduce 155 - LBRACKET reduce 155 - VAR reduce 155 - NUMBER reduce 155 - RSQBRACKET reduce 155 - KILLS reduce 155 - TRGCONST reduce 155 - L2V reduce 155 - MAPSTRING reduce 155 - UNIT reduce 155 - SWITCH reduce 155 - LOCATION reduce 155 - STATTXTTBL reduce 155 - VARRAY reduce 155 - STATIC reduce 155 - CONST reduce 155 - INC reduce 155 - DEC reduce 155 - ONCE reduce 155 - IF reduce 155 - SWITCHCASE reduce 155 - WHILE reduce 155 - FOR reduce 155 - FOREACH reduce 155 - CONTINUE reduce 155 - BREAK reduce 155 - RETURN reduce 155 - ACTIONNAME reduce 155 + PERIOD shift 247 + {default} reduce 155 -State 286: - (122) logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * +State 230: + relimp_path ::= relimp_path * PERIOD NAME + relimp_chunk ::= relimp_path * SEMICOLON + relimp_chunk ::= relimp_path * AS NAME SEMICOLON - QMARK reduce 122 - COMMA reduce 122 - LOR reduce 122 - LAND reduce 122 - EQ reduce 122 - LE reduce 122 - LT reduce 122 - GE reduce 122 - GT reduce 122 - NE reduce 122 - BITOR reduce 122 - BITXOR reduce 122 - BITAND reduce 122 - LSHIFT reduce 122 - RSHIFT reduce 122 - PLUS reduce 122 - MINUS reduce 122 - DIVIDE reduce 122 - MULTIPLY reduce 122 - MOD reduce 122 - BITNOT reduce 122 - LPAREN reduce 122 - LSQBRACKET reduce 122 - PERIOD reduce 122 - SEMICOLON reduce 122 - NAME reduce 122 - COLON reduce 122 - FUNCTION reduce 122 - RPAREN reduce 122 - LBRACKET reduce 122 - VAR reduce 122 - NUMBER reduce 122 - RSQBRACKET reduce 122 - KILLS reduce 122 - TRGCONST reduce 122 - L2V reduce 122 - MAPSTRING reduce 122 - UNIT reduce 122 - SWITCH reduce 122 - LOCATION reduce 122 - STATTXTTBL reduce 122 - VARRAY reduce 122 - STATIC reduce 122 - CONST reduce 122 - INC reduce 122 - DEC reduce 122 - ONCE reduce 122 - IF reduce 122 - SWITCHCASE reduce 122 - WHILE reduce 122 - FOR reduce 122 - FOREACH reduce 122 - CONTINUE reduce 122 - BREAK reduce 122 - RETURN reduce 122 - ACTIONNAME reduce 122 + PERIOD shift 364 + SEMICOLON shift 541 + AS shift 363 -State 287: - (121) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * +State 231: + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + cdef_global_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - QMARK reduce 121 - COMMA reduce 121 - LOR reduce 121 - LAND reduce 121 - EQ reduce 121 - LE reduce 121 - LT reduce 121 - GE reduce 121 - GT reduce 121 - NE reduce 121 - BITOR reduce 121 - BITXOR reduce 121 - BITAND reduce 121 - LSHIFT reduce 121 - RSHIFT reduce 121 - PLUS reduce 121 - MINUS reduce 121 - DIVIDE reduce 121 - MULTIPLY reduce 121 - MOD reduce 121 - BITNOT reduce 121 - LPAREN reduce 121 - LSQBRACKET reduce 121 - PERIOD reduce 121 - SEMICOLON reduce 121 - NAME reduce 121 - COLON reduce 121 - FUNCTION reduce 121 - RPAREN reduce 121 - LBRACKET reduce 121 - VAR reduce 121 - NUMBER reduce 121 - RSQBRACKET reduce 121 - KILLS reduce 121 - TRGCONST reduce 121 - L2V reduce 121 - MAPSTRING reduce 121 - UNIT reduce 121 - SWITCH reduce 121 - LOCATION reduce 121 - STATTXTTBL reduce 121 - VARRAY reduce 121 - STATIC reduce 121 - CONST reduce 121 - INC reduce 121 - DEC reduce 121 - ONCE reduce 121 - IF reduce 121 - SWITCHCASE reduce 121 - WHILE reduce 121 - FOR reduce 121 - FOREACH reduce 121 - CONTINUE reduce 121 - BREAK reduce 121 - RETURN reduce 121 - ACTIONNAME reduce 121 + ASSIGN shift 33 + COMMA shift 299 -State 288: - (120) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * +State 232: + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + (188) vdef_stmt ::= VAR nameList_nonEmpty * + vdefAssign_global_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - QMARK reduce 120 - COMMA reduce 120 - LOR reduce 120 - LAND reduce 120 - EQ reduce 120 - LE reduce 120 - LT reduce 120 - GE reduce 120 - GT reduce 120 - NE reduce 120 - BITOR reduce 120 - BITXOR reduce 120 - BITAND reduce 120 - LSHIFT reduce 120 - RSHIFT reduce 120 - PLUS reduce 120 - MINUS reduce 120 - DIVIDE reduce 120 - MULTIPLY reduce 120 - MOD reduce 120 - BITNOT reduce 120 - LPAREN reduce 120 - LSQBRACKET reduce 120 - PERIOD reduce 120 - SEMICOLON reduce 120 - NAME reduce 120 - COLON reduce 120 - FUNCTION reduce 120 - RPAREN reduce 120 - LBRACKET reduce 120 - VAR reduce 120 - NUMBER reduce 120 - RSQBRACKET reduce 120 - KILLS reduce 120 - TRGCONST reduce 120 - L2V reduce 120 - MAPSTRING reduce 120 - UNIT reduce 120 - SWITCH reduce 120 - LOCATION reduce 120 - STATTXTTBL reduce 120 - VARRAY reduce 120 - STATIC reduce 120 - CONST reduce 120 - INC reduce 120 - DEC reduce 120 - ONCE reduce 120 - IF reduce 120 - SWITCHCASE reduce 120 - WHILE reduce 120 - FOR reduce 120 - FOREACH reduce 120 - CONTINUE reduce 120 - BREAK reduce 120 - RETURN reduce 120 - ACTIONNAME reduce 120 + ASSIGN shift 34 + COMMA shift 299 + {default} reduce 188 -State 289: - (119) constExpr ::= LOCATION LPAREN STRING RPAREN * +State 233: + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON - QMARK reduce 119 - COMMA reduce 119 - LOR reduce 119 - LAND reduce 119 - EQ reduce 119 - LE reduce 119 - LT reduce 119 - GE reduce 119 - GT reduce 119 - NE reduce 119 - BITOR reduce 119 - BITXOR reduce 119 - BITAND reduce 119 - LSHIFT reduce 119 - RSHIFT reduce 119 - PLUS reduce 119 - MINUS reduce 119 - DIVIDE reduce 119 - MULTIPLY reduce 119 - MOD reduce 119 - BITNOT reduce 119 - LPAREN reduce 119 - LSQBRACKET reduce 119 - PERIOD reduce 119 - SEMICOLON reduce 119 - NAME reduce 119 - COLON reduce 119 - FUNCTION reduce 119 - RPAREN reduce 119 - LBRACKET reduce 119 - VAR reduce 119 - NUMBER reduce 119 - RSQBRACKET reduce 119 - KILLS reduce 119 - TRGCONST reduce 119 - L2V reduce 119 - MAPSTRING reduce 119 - UNIT reduce 119 - SWITCH reduce 119 - LOCATION reduce 119 - STATTXTTBL reduce 119 - VARRAY reduce 119 - STATIC reduce 119 - CONST reduce 119 - INC reduce 119 - DEC reduce 119 - ONCE reduce 119 - IF reduce 119 - SWITCHCASE reduce 119 - WHILE reduce 119 - FOR reduce 119 - FOREACH reduce 119 - CONTINUE reduce 119 - BREAK reduce 119 - RETURN reduce 119 - ACTIONNAME reduce 119 + COMMA shift 30 + RPAREN shift 265 -State 290: - (118) constExpr ::= SWITCH LPAREN STRING RPAREN * +State 234: + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - QMARK reduce 118 - COMMA reduce 118 - LOR reduce 118 - LAND reduce 118 - EQ reduce 118 - LE reduce 118 - LT reduce 118 - GE reduce 118 - GT reduce 118 - NE reduce 118 - BITOR reduce 118 - BITXOR reduce 118 - BITAND reduce 118 - LSHIFT reduce 118 - RSHIFT reduce 118 - PLUS reduce 118 - MINUS reduce 118 - DIVIDE reduce 118 - MULTIPLY reduce 118 - MOD reduce 118 - BITNOT reduce 118 - LPAREN reduce 118 - LSQBRACKET reduce 118 - PERIOD reduce 118 - SEMICOLON reduce 118 - NAME reduce 118 - COLON reduce 118 - FUNCTION reduce 118 - RPAREN reduce 118 - LBRACKET reduce 118 - VAR reduce 118 - NUMBER reduce 118 - RSQBRACKET reduce 118 - KILLS reduce 118 - TRGCONST reduce 118 - L2V reduce 118 - MAPSTRING reduce 118 - UNIT reduce 118 - SWITCH reduce 118 - LOCATION reduce 118 - STATTXTTBL reduce 118 - VARRAY reduce 118 - STATIC reduce 118 - CONST reduce 118 - INC reduce 118 - DEC reduce 118 - ONCE reduce 118 - IF reduce 118 - SWITCHCASE reduce 118 - WHILE reduce 118 - FOR reduce 118 - FOREACH reduce 118 - CONTINUE reduce 118 - BREAK reduce 118 - RETURN reduce 118 - ACTIONNAME reduce 118 + COMMA shift 32 + RPAREN shift 269 -State 291: - (117) constExpr ::= UNIT LPAREN STRING RPAREN * +State 235: + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + (103) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * + actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON - QMARK reduce 117 - COMMA reduce 117 - LOR reduce 117 - LAND reduce 117 - EQ reduce 117 - LE reduce 117 - LT reduce 117 - GE reduce 117 - GT reduce 117 - NE reduce 117 - BITOR reduce 117 - BITXOR reduce 117 - BITAND reduce 117 - LSHIFT reduce 117 - RSHIFT reduce 117 - PLUS reduce 117 - MINUS reduce 117 - DIVIDE reduce 117 - MULTIPLY reduce 117 - MOD reduce 117 - BITNOT reduce 117 - LPAREN reduce 117 - LSQBRACKET reduce 117 - PERIOD reduce 117 - SEMICOLON reduce 117 - NAME reduce 117 - COLON reduce 117 - FUNCTION reduce 117 - RPAREN reduce 117 - LBRACKET reduce 117 - VAR reduce 117 - NUMBER reduce 117 - RSQBRACKET reduce 117 - KILLS reduce 117 - TRGCONST reduce 117 - L2V reduce 117 - MAPSTRING reduce 117 - UNIT reduce 117 - SWITCH reduce 117 - LOCATION reduce 117 - STATTXTTBL reduce 117 - VARRAY reduce 117 - STATIC reduce 117 - CONST reduce 117 - INC reduce 117 - DEC reduce 117 - ONCE reduce 117 - IF reduce 117 - SWITCHCASE reduce 117 - WHILE reduce 117 - FOR reduce 117 - FOREACH reduce 117 - CONTINUE reduce 117 - BREAK reduce 117 - RETURN reduce 117 - ACTIONNAME reduce 117 + COMMA shift 30 + RPAREN shift 268 -State 292: - (116) constExpr ::= MAPSTRING LPAREN STRING RPAREN * +State 236: + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + (102) fArgs_nonEmpty ::= fConstArgs_nonEmpty * + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - QMARK reduce 116 - COMMA reduce 116 - LOR reduce 116 - LAND reduce 116 - EQ reduce 116 - LE reduce 116 - LT reduce 116 - GE reduce 116 - GT reduce 116 - NE reduce 116 - BITOR reduce 116 - BITXOR reduce 116 - BITAND reduce 116 - LSHIFT reduce 116 - RSHIFT reduce 116 - PLUS reduce 116 - MINUS reduce 116 - DIVIDE reduce 116 - MULTIPLY reduce 116 - MOD reduce 116 - BITNOT reduce 116 - LPAREN reduce 116 - LSQBRACKET reduce 116 - PERIOD reduce 116 - SEMICOLON reduce 116 - NAME reduce 116 - COLON reduce 116 - FUNCTION reduce 116 - RPAREN reduce 116 - LBRACKET reduce 116 - VAR reduce 116 - NUMBER reduce 116 - RSQBRACKET reduce 116 - KILLS reduce 116 - TRGCONST reduce 116 - L2V reduce 116 - MAPSTRING reduce 116 - UNIT reduce 116 - SWITCH reduce 116 - LOCATION reduce 116 - STATTXTTBL reduce 116 - VARRAY reduce 116 - STATIC reduce 116 - CONST reduce 116 - INC reduce 116 - DEC reduce 116 - ONCE reduce 116 - IF reduce 116 - SWITCHCASE reduce 116 - WHILE reduce 116 - FOR reduce 116 - FOREACH reduce 116 - CONTINUE reduce 116 - BREAK reduce 116 - RETURN reduce 116 - ACTIONNAME reduce 116 + COMMA shift 32 + RPAREN shift 269 -State 293: - (115) nonConstExpr ::= L2V LPAREN expr RPAREN * +State 237: + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + foreach_header ::= foreach_opener nameList_nonEmpty * COLON exprList_nonEmpty - QMARK reduce 115 - COMMA reduce 115 - LOR reduce 115 - LAND reduce 115 - EQ reduce 115 - LE reduce 115 - LT reduce 115 - GE reduce 115 - GT reduce 115 - NE reduce 115 - BITOR reduce 115 - BITXOR reduce 115 - BITAND reduce 115 - LSHIFT reduce 115 - RSHIFT reduce 115 - PLUS reduce 115 - MINUS reduce 115 - DIVIDE reduce 115 - MULTIPLY reduce 115 - MOD reduce 115 - BITNOT reduce 115 - LPAREN reduce 115 - LSQBRACKET reduce 115 - PERIOD reduce 115 - SEMICOLON reduce 115 - NAME reduce 115 - COLON reduce 115 - FUNCTION reduce 115 - RPAREN reduce 115 - LBRACKET reduce 115 - VAR reduce 115 - NUMBER reduce 115 - RSQBRACKET reduce 115 - KILLS reduce 115 - TRGCONST reduce 115 - L2V reduce 115 - MAPSTRING reduce 115 - UNIT reduce 115 - SWITCH reduce 115 - LOCATION reduce 115 - STATTXTTBL reduce 115 - VARRAY reduce 115 - STATIC reduce 115 - CONST reduce 115 - INC reduce 115 - DEC reduce 115 - ONCE reduce 115 - IF reduce 115 - SWITCHCASE reduce 115 - WHILE reduce 115 - FOR reduce 115 - FOREACH reduce 115 - CONTINUE reduce 115 - BREAK reduce 115 - RETURN reduce 115 - ACTIONNAME reduce 115 + COMMA shift 299 + COLON shift 35 -State 294: - exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (109) nonConstExpr ::= funcexpr * +State 238: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + case_clause ::= case_start exprList_nonEmpty * COLON - QMARK reduce 109 - COMMA reduce 109 - LOR reduce 109 - LAND reduce 109 - EQ reduce 109 - LE reduce 109 - LT reduce 109 - GE reduce 109 - GT reduce 109 - NE reduce 109 - BITOR reduce 109 - BITXOR reduce 109 - BITAND reduce 109 - LSHIFT reduce 109 - RSHIFT reduce 109 - PLUS reduce 109 - MINUS reduce 109 - DIVIDE reduce 109 - MULTIPLY reduce 109 - MOD reduce 109 - BITNOT reduce 109 - LPAREN reduce 109 - LSQBRACKET shift 528 - LSQBRACKET reduce 109 -- dropped by precedence - PERIOD reduce 109 - SEMICOLON reduce 109 - NAME reduce 109 - COLON reduce 109 - FUNCTION reduce 109 - RPAREN reduce 109 - LBRACKET reduce 109 - VAR reduce 109 - NUMBER reduce 109 - RSQBRACKET reduce 109 - KILLS reduce 109 - TRGCONST reduce 109 - L2V reduce 109 - MAPSTRING reduce 109 - UNIT reduce 109 - SWITCH reduce 109 - LOCATION reduce 109 - STATTXTTBL reduce 109 - VARRAY reduce 109 - STATIC reduce 109 - CONST reduce 109 - INC reduce 109 - DEC reduce 109 - ONCE reduce 109 - IF reduce 109 - SWITCHCASE reduce 109 - WHILE reduce 109 - FOR reduce 109 - FOREACH reduce 109 - CONTINUE reduce 109 - BREAK reduce 109 - RETURN reduce 109 - ACTIONNAME reduce 109 + COMMA shift 80 + COLON shift 422 -State 295: +State 239: + lvalueList_nonEmpty ::= lvalueList_nonEmpty * COMMA lvalue + assign_stmt ::= lvalueList_nonEmpty * ASSIGN exprList_nonEmpty + + ASSIGN shift 37 + COMMA shift 87 + +State 240: + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + cdef_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty + + ASSIGN shift 38 + COMMA shift 299 + +State 241: + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty + + ASSIGN shift 39 + COMMA shift 299 + +State 242: + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + (188) vdef_stmt ::= VAR nameList_nonEmpty * + vdefAssign_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty + + ASSIGN shift 40 + COMMA shift 299 + {default} reduce 188 + +State 243: + numList_nonEmpty ::= numList_nonEmpty * COMMA NUMBER + exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty * RSQBRACKET RSQBRACKET + + COMMA shift 332 + RSQBRACKET shift 331 + +State 244: (89) expr ::= logicExpr * logicExpr ::= logicExpr * LAND logicExpr logicExpr ::= logicExpr * LOR logicExpr - QMARK reduce 89 - COMMA reduce 89 LOR shift 82 - LOR reduce 89 -- dropped by precedence LAND shift 84 - LAND reduce 89 -- dropped by precedence - EQ reduce 89 - LE reduce 89 - LT reduce 89 - GE reduce 89 - GT reduce 89 - NE reduce 89 - BITOR reduce 89 - BITXOR reduce 89 - BITAND reduce 89 - LSHIFT reduce 89 - RSHIFT reduce 89 - PLUS reduce 89 - MINUS reduce 89 - DIVIDE reduce 89 - MULTIPLY reduce 89 - MOD reduce 89 - BITNOT reduce 89 - LPAREN reduce 89 - LSQBRACKET reduce 89 - PERIOD reduce 89 - SEMICOLON reduce 89 - NAME reduce 89 - COLON reduce 89 - FUNCTION reduce 89 - RPAREN reduce 89 - LBRACKET reduce 89 - VAR reduce 89 - NUMBER reduce 89 - RSQBRACKET reduce 89 - KILLS reduce 89 - TRGCONST reduce 89 - L2V reduce 89 - MAPSTRING reduce 89 - UNIT reduce 89 - SWITCH reduce 89 - LOCATION reduce 89 - STATTXTTBL reduce 89 - VARRAY reduce 89 - STATIC reduce 89 - CONST reduce 89 - INC reduce 89 - DEC reduce 89 - ONCE reduce 89 - IF reduce 89 - SWITCHCASE reduce 89 - WHILE reduce 89 - FOR reduce 89 - FOREACH reduce 89 - CONTINUE reduce 89 - BREAK reduce 89 - RETURN reduce 89 - ACTIONNAME reduce 89 + {default} reduce 89 -State 296: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - (128) nonConstExpr ::= constExpr MINUS nonConstExpr * - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr +State 245: + (90) fNonConstArg ::= logicExpr * + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr - QMARK shift 76 -- dropped by precedence - QMARK reduce 128 - COMMA reduce 128 - LOR reduce 128 - LAND reduce 128 - EQ reduce 128 - LE reduce 128 - LT reduce 128 - GE reduce 128 - GT reduce 128 - NE reduce 128 - BITOR shift 66 -- dropped by precedence - BITOR reduce 128 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 128 - BITAND shift 67 -- dropped by precedence - BITAND reduce 128 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 128 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 128 - PLUS shift 74 -- dropped by precedence - PLUS reduce 128 - MINUS shift 73 -- dropped by precedence - MINUS reduce 128 - DIVIDE shift 71 - DIVIDE reduce 128 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 128 -- dropped by precedence - MOD shift 70 - MOD reduce 128 -- dropped by precedence - BITNOT reduce 128 - LPAREN shift 23 - LPAREN reduce 128 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 128 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 128 -- dropped by precedence - SEMICOLON reduce 128 - NAME reduce 128 - COLON reduce 128 - FUNCTION reduce 128 - RPAREN reduce 128 - LBRACKET reduce 128 - VAR reduce 128 - NUMBER reduce 128 - RSQBRACKET reduce 128 - KILLS reduce 128 - TRGCONST reduce 128 - L2V reduce 128 - MAPSTRING reduce 128 - UNIT reduce 128 - SWITCH reduce 128 - LOCATION reduce 128 - STATTXTTBL reduce 128 - VARRAY reduce 128 - STATIC reduce 128 - CONST reduce 128 - INC reduce 128 - DEC reduce 128 - ONCE reduce 128 - IF reduce 128 - SWITCHCASE reduce 128 - WHILE reduce 128 - FOR reduce 128 - FOREACH reduce 128 - CONTINUE reduce 128 - BREAK reduce 128 - RETURN reduce 128 - ACTIONNAME reduce 128 + LOR shift 82 + LAND shift 84 + {default} reduce 90 -State 297: - (110) constExpr ::= LPAREN constExpr RPAREN * +State 246: + nonConstExpr ::= nonConstExpr PERIOD * NAME + nonConstExpr ::= nonConstExpr PERIOD * TRGCONST + lvalue ::= nonConstExpr PERIOD * NAME + lvalue ::= nonConstExpr PERIOD * TRGCONST - QMARK reduce 110 - COMMA reduce 110 - LOR reduce 110 - LAND reduce 110 - EQ reduce 110 - LE reduce 110 - LT reduce 110 - GE reduce 110 - GT reduce 110 - NE reduce 110 - BITOR reduce 110 - BITXOR reduce 110 - BITAND reduce 110 - LSHIFT reduce 110 - RSHIFT reduce 110 - PLUS reduce 110 - MINUS reduce 110 - DIVIDE reduce 110 - MULTIPLY reduce 110 - MOD reduce 110 - BITNOT reduce 110 - LPAREN reduce 110 - LSQBRACKET reduce 110 - PERIOD reduce 110 - SEMICOLON reduce 110 - NAME reduce 110 - COLON reduce 110 - FUNCTION reduce 110 - RPAREN reduce 110 - LBRACKET reduce 110 - VAR reduce 110 - NUMBER reduce 110 - RSQBRACKET reduce 110 - KILLS reduce 110 - TRGCONST reduce 110 - L2V reduce 110 - MAPSTRING reduce 110 - UNIT reduce 110 - SWITCH reduce 110 - LOCATION reduce 110 - STATTXTTBL reduce 110 - VARRAY reduce 110 - STATIC reduce 110 - CONST reduce 110 - INC reduce 110 - DEC reduce 110 - ONCE reduce 110 - IF reduce 110 - SWITCHCASE reduce 110 - WHILE reduce 110 - FOR reduce 110 - FOREACH reduce 110 - CONTINUE reduce 110 - BREAK reduce 110 - RETURN reduce 110 - ACTIONNAME reduce 110 + NAME shift 185 + TRGCONST shift 184 -State 298: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - (125) nonConstExpr ::= constExpr PLUS nonConstExpr * - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr +State 247: + nonConstExpr ::= nonConstExpr PERIOD * NAME + nonConstExpr ::= nonConstExpr PERIOD * TRGCONST - QMARK shift 76 -- dropped by precedence - QMARK reduce 125 - COMMA reduce 125 - LOR reduce 125 - LAND reduce 125 - EQ reduce 125 - LE reduce 125 - LT reduce 125 - GE reduce 125 - GT reduce 125 - NE reduce 125 - BITOR shift 66 -- dropped by precedence - BITOR reduce 125 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 125 - BITAND shift 67 -- dropped by precedence - BITAND reduce 125 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 125 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 125 - PLUS shift 74 -- dropped by precedence - PLUS reduce 125 - MINUS shift 73 -- dropped by precedence - MINUS reduce 125 - DIVIDE shift 71 - DIVIDE reduce 125 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 125 -- dropped by precedence - MOD shift 70 - MOD reduce 125 -- dropped by precedence - BITNOT reduce 125 - LPAREN shift 23 - LPAREN reduce 125 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 125 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 125 -- dropped by precedence - SEMICOLON reduce 125 - NAME reduce 125 - COLON reduce 125 - FUNCTION reduce 125 - RPAREN reduce 125 - LBRACKET reduce 125 - VAR reduce 125 - NUMBER reduce 125 - RSQBRACKET reduce 125 - KILLS reduce 125 - TRGCONST reduce 125 - L2V reduce 125 - MAPSTRING reduce 125 - UNIT reduce 125 - SWITCH reduce 125 - LOCATION reduce 125 - STATTXTTBL reduce 125 - VARRAY reduce 125 - STATIC reduce 125 - CONST reduce 125 - INC reduce 125 - DEC reduce 125 - ONCE reduce 125 - IF reduce 125 - SWITCHCASE reduce 125 - WHILE reduce 125 - FOR reduce 125 - FOREACH reduce 125 - CONTINUE reduce 125 - BREAK reduce 125 - RETURN reduce 125 - ACTIONNAME reduce 125 + NAME shift 535 + TRGCONST shift 534 -State 299: - (88) expr ::= constExpr * - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr +State 248: + (82) nonConstExpr ::= NAME * + fConstArg ::= NAME * ASSIGN expr + fConstArg ::= NAME * ASSIGN STRING + funcexpr ::= NAME * LPAREN fArgs RPAREN - QMARK reduce 88 - COMMA reduce 88 - LOR reduce 88 - LAND reduce 88 - EQ shift 100 - EQ reduce 88 -- dropped by precedence - LE shift 98 - LE reduce 88 -- dropped by precedence - LT shift 96 - LT reduce 88 -- dropped by precedence - GE shift 97 - GE reduce 88 -- dropped by precedence - GT shift 95 - GT reduce 88 -- dropped by precedence - NE shift 99 - NE reduce 88 -- dropped by precedence - BITOR shift 102 - BITOR reduce 88 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 88 -- dropped by precedence - BITAND shift 103 - BITAND reduce 88 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 88 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 88 -- dropped by precedence - PLUS shift 113 - PLUS reduce 88 -- dropped by precedence - MINUS shift 112 - MINUS reduce 88 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 88 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 88 -- dropped by precedence - MOD shift 106 - MOD reduce 88 -- dropped by precedence - BITNOT reduce 88 - LPAREN reduce 88 - LSQBRACKET reduce 88 - PERIOD reduce 88 - SEMICOLON reduce 88 - NAME reduce 88 - COLON reduce 88 - FUNCTION reduce 88 - RPAREN reduce 88 - LBRACKET reduce 88 - VAR reduce 88 - NUMBER reduce 88 - RSQBRACKET reduce 88 - KILLS reduce 88 - TRGCONST reduce 88 - L2V reduce 88 - MAPSTRING reduce 88 - UNIT reduce 88 - SWITCH reduce 88 - LOCATION reduce 88 - STATTXTTBL reduce 88 - VARRAY reduce 88 - STATIC reduce 88 - CONST reduce 88 - INC reduce 88 - DEC reduce 88 - ONCE reduce 88 - IF reduce 88 - SWITCHCASE reduce 88 - WHILE reduce 88 - FOR reduce 88 - FOREACH reduce 88 - CONTINUE reduce 88 - BREAK reduce 88 - RETURN reduce 88 - ACTIONNAME reduce 88 + ASSIGN shift 45 + LPAREN shift 25 + {default} reduce 82 + +State 249: + relimp_start ::= relimp_start * PERIOD + relimp_path ::= relimp_start * NAME + + PERIOD shift 544 + NAME shift 543 + +State 250: + dottedName ::= dottedName * PERIOD NAME + import_chunk ::= IMPORT dottedName * AS NAME + (22) import_chunk ::= IMPORT dottedName * + + PERIOD shift 366 + AS shift 365 + {default} reduce 22 + +State 251: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (193) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + + COMMA shift 80 + {default} reduce 193 + +State 252: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (191) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + + COMMA shift 80 + {default} reduce 191 + +State 253: + object_chunk ::= object_body RBRACKET * SEMICOLON + + SEMICOLON shift 371 + +State 254: + method_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes + + RPAREN shift 146 + +State 255: + method_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes + + LPAREN shift 115 + +State 256: + method_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes + + NAME shift 255 + +State 257: + object_body ::= object_body VAR typedNameList_nonEmpty * SEMICOLON + + SEMICOLON shift 375 + +State 258: + object_body ::= OBJECT NAME * LBRACKET + + LBRACKET shift 376 + +State 259: + object_body ::= OBJECT * NAME LBRACKET + + NAME shift 258 + +State 260: + logicExpr ::= KILLS LPAREN fArgs * RPAREN + + RPAREN shift 380 + +State 261: + funcexpr ::= NAME LPAREN fArgs * RPAREN + + RPAREN shift 383 + +State 262: + lambdaExprStart ::= FUNCTION LPAREN typedNameList * RPAREN fdef_rettypes + + RPAREN shift 147 + +State 263: + (67) typedNameList_nonEmpty ::= typedName * + typedNameList_nonEmpty ::= typedName * COMMA typedNameList_nonEmpty + + COMMA shift 141 + {default} reduce 67 + +State 264: + default_clause ::= DEFAULT * COLON + + COLON shift 391 + +State 265: + actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON + + SEMICOLON shift 394 + +State 266: + constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON + actionStmt ::= constActionList ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + + LPAREN shift 28 + +State 267: + constAction ::= ACTIONNAME LPAREN RPAREN * SEMICOLON + + SEMICOLON shift 396 + +State 268: + actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON + + SEMICOLON shift 397 + +State 269: + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN * SEMICOLON + + SEMICOLON shift 398 + +State 270: + actionStmt ::= ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN + + LPAREN shift 20 + +State 271: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (78) exprList ::= exprList_nonEmpty * + + COMMA shift 80 + {default} reduce 78 + +State 272: + foreach_stmt ::= foreach_header * RPAREN stmt + + RPAREN shift 4 + +State 273: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (266) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * + + COMMA shift 80 + {default} reduce 266 + +State 274: + foreach_opener ::= FOREACH * LPAREN + + LPAREN shift 403 + +State 275: + for_stmt ::= for_header * RPAREN stmt + + RPAREN shift 5 + +State 276: + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty + (260) for_action_stmt ::= for_action_stmt_nonEmpty * + + COMMA shift 29 + {default} reduce 260 + +State 277: + for_header2 ::= for_header1 expr * SEMICOLON + + SEMICOLON shift 409 + +State 278: + for_header1 ::= for_opener for_init_stmt * SEMICOLON + + SEMICOLON shift 410 + +State 279: + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty + (254) for_init_stmt ::= for_init_stmt_nonEmpty * + + COMMA shift 21 + {default} reduce 254 + +State 280: + for_opener ::= FOR * LPAREN + + LPAREN shift 416 + +State 281: + while_stmt ::= while_header * RPAREN stmt + + RPAREN shift 6 + +State 282: + while_header ::= while_start * LPAREN expr + + LPAREN shift 47 + +State 283: + switchcase_stmt ::= switchcase_block * RBRACKET + + RBRACKET shift 420 + +State 284: + switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks default_chunk + switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks + switchcase_block ::= switchcase_header RPAREN * LBRACKET + + LBRACKET shift 114 + +State 285: + switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks default_chunk + switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks + switchcase_block ::= switchcase_header * RPAREN LBRACKET + + RPAREN shift 284 + +State 286: + switchcase_header ::= SWITCHCASE * LPAREN expr + + LPAREN shift 48 + +State 287: + if_block ::= if_block elif_header * RPAREN stmt + + RPAREN shift 7 + +State 288: + elif_header ::= elif_start * LPAREN expr + + LPAREN shift 49 + +State 289: + elif_start ::= ELSE * IF + (228) else_header ::= ELSE * + + IF shift 427 + {default} reduce 228 + +State 290: + if_block ::= if_header * RPAREN stmt + + RPAREN shift 8 + +State 291: + if_header ::= if_start * LPAREN expr + + LPAREN shift 50 + +State 292: + once_block ::= once_header * RPAREN stmt + + RPAREN shift 10 + +State 293: + once_header ::= once_start * LPAREN expr + (219) once_nocond ::= once_start * + + LPAREN shift 51 + {default} reduce 219 + +State 294: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (201) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * + + COMMA shift 80 + {default} reduce 201 + +State 295: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (192) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + + COMMA shift 80 + {default} reduce 192 + +State 296: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (190) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + + COMMA shift 80 + {default} reduce 190 + +State 297: + vdefAssignStatic_stmt ::= STATIC * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + + VAR shift 151 + +State 298: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (189) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + + COMMA shift 80 + {default} reduce 189 + +State 299: + nameList_nonEmpty ::= nameList_nonEmpty COMMA * NAME + + NAME shift 452 State 300: - (80) constExpr ::= KILLS * + funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN - QMARK reduce 80 - COMMA reduce 80 - LOR reduce 80 - LAND reduce 80 - EQ reduce 80 - LE reduce 80 - LT reduce 80 - GE reduce 80 - GT reduce 80 - NE reduce 80 - BITOR reduce 80 - BITXOR reduce 80 - BITAND reduce 80 - LSHIFT reduce 80 - RSHIFT reduce 80 - PLUS reduce 80 - MINUS reduce 80 - DIVIDE reduce 80 - MULTIPLY reduce 80 - MOD reduce 80 - BITNOT reduce 80 - LPAREN reduce 80 - LSQBRACKET reduce 80 - PERIOD reduce 80 - SEMICOLON reduce 80 - NAME reduce 80 - COLON reduce 80 - FUNCTION reduce 80 - RPAREN reduce 80 - LBRACKET reduce 80 - VAR reduce 80 - NUMBER reduce 80 - RSQBRACKET reduce 80 - KILLS reduce 80 - TRGCONST reduce 80 - L2V reduce 80 - MAPSTRING reduce 80 - UNIT reduce 80 - SWITCH reduce 80 - LOCATION reduce 80 - STATTXTTBL reduce 80 - VARRAY reduce 80 - STATIC reduce 80 - CONST reduce 80 - INC reduce 80 - DEC reduce 80 - ONCE reduce 80 - IF reduce 80 - SWITCHCASE reduce 80 - WHILE reduce 80 - FOR reduce 80 - FOREACH reduce 80 - CONTINUE reduce 80 - BREAK reduce 80 - RETURN reduce 80 - ACTIONNAME reduce 80 + RPAREN shift 454 State 301: - (85) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + nonConstExpr ::= nonConstExpr QMARK expr * COLON expr - QMARK reduce 85 - COMMA reduce 85 - LOR reduce 85 - LAND reduce 85 - EQ reduce 85 - LE reduce 85 - LT reduce 85 - GE reduce 85 - GT reduce 85 - NE reduce 85 - BITOR reduce 85 - BITXOR reduce 85 - BITAND reduce 85 - LSHIFT reduce 85 - RSHIFT reduce 85 - PLUS reduce 85 - MINUS reduce 85 - DIVIDE reduce 85 - MULTIPLY reduce 85 - MOD reduce 85 - BITNOT reduce 85 - LPAREN reduce 85 - LSQBRACKET reduce 85 - PERIOD reduce 85 - SEMICOLON reduce 85 - NAME reduce 85 - COLON reduce 85 - FUNCTION reduce 85 - RPAREN reduce 85 - LBRACKET reduce 85 - VAR reduce 85 - NUMBER reduce 85 - RSQBRACKET reduce 85 - KILLS reduce 85 - TRGCONST reduce 85 - L2V reduce 85 - MAPSTRING reduce 85 - UNIT reduce 85 - SWITCH reduce 85 - LOCATION reduce 85 - STATTXTTBL reduce 85 - VARRAY reduce 85 - STATIC reduce 85 - CONST reduce 85 - INC reduce 85 - DEC reduce 85 - ONCE reduce 85 - IF reduce 85 - SWITCHCASE reduce 85 - WHILE reduce 85 - FOR reduce 85 - FOREACH reduce 85 - CONTINUE reduce 85 - BREAK reduce 85 - RETURN reduce 85 - ACTIONNAME reduce 85 + COLON shift 63 State 302: - (84) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr + (186) logicExpr ::= logicExpr LOR logicExpr * - QMARK reduce 84 - COMMA reduce 84 - LOR reduce 84 - LAND reduce 84 - EQ reduce 84 - LE reduce 84 - LT reduce 84 - GE reduce 84 - GT reduce 84 - NE reduce 84 - BITOR reduce 84 - BITXOR reduce 84 - BITAND reduce 84 - LSHIFT reduce 84 - RSHIFT reduce 84 - PLUS reduce 84 - MINUS reduce 84 - DIVIDE reduce 84 - MULTIPLY reduce 84 - MOD reduce 84 - BITNOT reduce 84 - LPAREN reduce 84 - LSQBRACKET reduce 84 - PERIOD reduce 84 - SEMICOLON reduce 84 - NAME reduce 84 - COLON reduce 84 - FUNCTION reduce 84 - RPAREN reduce 84 - LBRACKET reduce 84 - VAR reduce 84 - NUMBER reduce 84 - RSQBRACKET reduce 84 - KILLS reduce 84 - TRGCONST reduce 84 - L2V reduce 84 - MAPSTRING reduce 84 - UNIT reduce 84 - SWITCH reduce 84 - LOCATION reduce 84 - STATTXTTBL reduce 84 - VARRAY reduce 84 - STATIC reduce 84 - CONST reduce 84 - INC reduce 84 - DEC reduce 84 - ONCE reduce 84 - IF reduce 84 - SWITCHCASE reduce 84 - WHILE reduce 84 - FOR reduce 84 - FOREACH reduce 84 - CONTINUE reduce 84 - BREAK reduce 84 - RETURN reduce 84 - ACTIONNAME reduce 84 + LAND shift 84 + {default} reduce 186 State 303: - (83) nonConstExpr ::= nonConstExpr PERIOD NAME * + constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET - QMARK reduce 83 - COMMA reduce 83 - LOR reduce 83 - LAND reduce 83 - EQ reduce 83 - LE reduce 83 - LT reduce 83 - GE reduce 83 - GT reduce 83 - NE reduce 83 - BITOR reduce 83 - BITXOR reduce 83 - BITAND reduce 83 - LSHIFT reduce 83 - RSHIFT reduce 83 - PLUS reduce 83 - MINUS reduce 83 - DIVIDE reduce 83 - MULTIPLY reduce 83 - MOD reduce 83 - BITNOT reduce 83 - LPAREN reduce 83 - LSQBRACKET reduce 83 - PERIOD reduce 83 - SEMICOLON reduce 83 - NAME reduce 83 - COLON reduce 83 - FUNCTION reduce 83 - RPAREN reduce 83 - LBRACKET reduce 83 - VAR reduce 83 - NUMBER reduce 83 - RSQBRACKET reduce 83 - KILLS reduce 83 - TRGCONST reduce 83 - L2V reduce 83 - MAPSTRING reduce 83 - UNIT reduce 83 - SWITCH reduce 83 - LOCATION reduce 83 - STATTXTTBL reduce 83 - VARRAY reduce 83 - STATIC reduce 83 - CONST reduce 83 - INC reduce 83 - DEC reduce 83 - ONCE reduce 83 - IF reduce 83 - SWITCHCASE reduce 83 - WHILE reduce 83 - FOR reduce 83 - FOREACH reduce 83 - CONTINUE reduce 83 - BREAK reduce 83 - RETURN reduce 83 - ACTIONNAME reduce 83 + RSQBRACKET shift 458 State 304: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - logicExpr ::= nonConstExpr * EQ constExpr - logicExpr ::= nonConstExpr * EQ nonConstExpr - logicExpr ::= nonConstExpr * NE constExpr - logicExpr ::= nonConstExpr * NE nonConstExpr - logicExpr ::= nonConstExpr * LE constExpr - logicExpr ::= nonConstExpr * LE nonConstExpr - logicExpr ::= nonConstExpr * GE constExpr - logicExpr ::= nonConstExpr * GE nonConstExpr - logicExpr ::= nonConstExpr * LT constExpr - logicExpr ::= nonConstExpr * LT nonConstExpr - logicExpr ::= nonConstExpr * GT constExpr - logicExpr ::= nonConstExpr * GT nonConstExpr - (184) logicExpr ::= nonConstExpr * + logicExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN - QMARK shift 76 - QMARK reduce 184 -- dropped by precedence - COMMA reduce 184 - LOR reduce 184 - LAND reduce 184 - EQ shift 94 - EQ reduce 184 -- dropped by precedence - LE shift 92 - LE reduce 184 -- dropped by precedence - LT shift 90 - LT reduce 184 -- dropped by precedence - GE shift 91 - GE reduce 184 -- dropped by precedence - GT shift 89 - GT reduce 184 -- dropped by precedence - NE shift 93 - NE reduce 184 -- dropped by precedence - BITOR shift 66 - BITOR reduce 184 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 184 -- dropped by precedence - BITAND shift 67 - BITAND reduce 184 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 184 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 184 -- dropped by precedence - PLUS shift 74 - PLUS reduce 184 -- dropped by precedence - MINUS shift 73 - MINUS reduce 184 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 184 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 184 -- dropped by precedence - MOD shift 70 - MOD reduce 184 -- dropped by precedence - BITNOT reduce 184 - LPAREN shift 23 - LPAREN reduce 184 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 184 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 184 -- dropped by precedence - SEMICOLON reduce 184 - NAME reduce 184 - COLON reduce 184 - FUNCTION reduce 184 - RPAREN reduce 184 - LBRACKET reduce 184 - VAR reduce 184 - NUMBER reduce 184 - RSQBRACKET reduce 184 - KILLS reduce 184 - TRGCONST reduce 184 - L2V reduce 184 - MAPSTRING reduce 184 - UNIT reduce 184 - SWITCH reduce 184 - LOCATION reduce 184 - STATTXTTBL reduce 184 - VARRAY reduce 184 - STATIC reduce 184 - CONST reduce 184 - INC reduce 184 - DEC reduce 184 - ONCE reduce 184 - IF reduce 184 - SWITCHCASE reduce 184 - WHILE reduce 184 - FOR reduce 184 - FOREACH reduce 184 - CONTINUE reduce 184 - BREAK reduce 184 - RETURN reduce 184 - ACTIONNAME reduce 184 + RPAREN shift 464 State 305: - (82) nonConstExpr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN + constExpr ::= ACTIONNAME LPAREN fArgs * RPAREN - QMARK reduce 82 - COMMA reduce 82 - LOR reduce 82 - LAND reduce 82 - EQ reduce 82 - LE reduce 82 - LT reduce 82 - GE reduce 82 - GT reduce 82 - NE reduce 82 - BITOR reduce 82 - BITXOR reduce 82 - BITAND reduce 82 - LSHIFT reduce 82 - RSHIFT reduce 82 - PLUS reduce 82 - MINUS reduce 82 - DIVIDE reduce 82 - MULTIPLY reduce 82 - MOD reduce 82 - BITNOT reduce 82 - LPAREN shift 24 - LPAREN reduce 82 -- dropped by precedence - LSQBRACKET reduce 82 - PERIOD reduce 82 - SEMICOLON reduce 82 - NAME reduce 82 - COLON reduce 82 - FUNCTION reduce 82 - RPAREN reduce 82 - LBRACKET reduce 82 - VAR reduce 82 - NUMBER reduce 82 - RSQBRACKET reduce 82 - KILLS reduce 82 - TRGCONST reduce 82 - L2V reduce 82 - MAPSTRING reduce 82 - UNIT reduce 82 - SWITCH reduce 82 - LOCATION reduce 82 - STATTXTTBL reduce 82 - VARRAY reduce 82 - STATIC reduce 82 - CONST reduce 82 - INC reduce 82 - DEC reduce 82 - ONCE reduce 82 - IF reduce 82 - SWITCHCASE reduce 82 - WHILE reduce 82 - FOR reduce 82 - FOREACH reduce 82 - CONTINUE reduce 82 - BREAK reduce 82 - RETURN reduce 82 - ACTIONNAME reduce 82 + RPAREN shift 478 State 306: - (81) constExpr ::= TRGCONST * + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + (103) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * - QMARK reduce 81 - COMMA reduce 81 - LOR reduce 81 - LAND reduce 81 - EQ reduce 81 - LE reduce 81 - LT reduce 81 - GE reduce 81 - GT reduce 81 - NE reduce 81 - BITOR reduce 81 - BITXOR reduce 81 - BITAND reduce 81 - LSHIFT reduce 81 - RSHIFT reduce 81 - PLUS reduce 81 - MINUS reduce 81 - DIVIDE reduce 81 - MULTIPLY reduce 81 - MOD reduce 81 - BITNOT reduce 81 - LPAREN reduce 81 - LSQBRACKET reduce 81 - PERIOD reduce 81 - SEMICOLON reduce 81 - NAME reduce 81 - COLON reduce 81 - FUNCTION reduce 81 - RPAREN reduce 81 - LBRACKET reduce 81 - VAR reduce 81 - NUMBER reduce 81 - RSQBRACKET reduce 81 - KILLS reduce 81 - TRGCONST reduce 81 - L2V reduce 81 - MAPSTRING reduce 81 - UNIT reduce 81 - SWITCH reduce 81 - LOCATION reduce 81 - STATTXTTBL reduce 81 - VARRAY reduce 81 - STATIC reduce 81 - CONST reduce 81 - INC reduce 81 - DEC reduce 81 - ONCE reduce 81 - IF reduce 81 - SWITCHCASE reduce 81 - WHILE reduce 81 - FOR reduce 81 - FOREACH reduce 81 - CONTINUE reduce 81 - BREAK reduce 81 - RETURN reduce 81 - ACTIONNAME reduce 81 + COMMA shift 30 + {default} reduce 103 State 307: - (80) constExpr ::= KILLS * - logicExpr ::= KILLS * LPAREN fArgs RPAREN + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + (102) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - QMARK reduce 80 - COMMA reduce 80 - LOR reduce 80 - LAND reduce 80 - EQ reduce 80 - LE reduce 80 - LT reduce 80 - GE reduce 80 - GT reduce 80 - NE reduce 80 - BITOR reduce 80 - BITXOR reduce 80 - BITAND reduce 80 - LSHIFT reduce 80 - RSHIFT reduce 80 - PLUS reduce 80 - MINUS reduce 80 - DIVIDE reduce 80 - MULTIPLY reduce 80 - MOD reduce 80 - BITNOT reduce 80 - LPAREN shift 25 - LPAREN reduce 80 -- dropped by precedence - LSQBRACKET reduce 80 - PERIOD reduce 80 - SEMICOLON reduce 80 - NAME reduce 80 - COLON reduce 80 - FUNCTION reduce 80 - RPAREN reduce 80 - LBRACKET reduce 80 - VAR reduce 80 - NUMBER reduce 80 - RSQBRACKET reduce 80 - KILLS reduce 80 - TRGCONST reduce 80 - L2V reduce 80 - MAPSTRING reduce 80 - UNIT reduce 80 - SWITCH reduce 80 - LOCATION reduce 80 - STATTXTTBL reduce 80 - VARRAY reduce 80 - STATIC reduce 80 - CONST reduce 80 - INC reduce 80 - DEC reduce 80 - ONCE reduce 80 - IF reduce 80 - SWITCHCASE reduce 80 - WHILE reduce 80 - FOR reduce 80 - FOREACH reduce 80 - CONTINUE reduce 80 - BREAK reduce 80 - RETURN reduce 80 - ACTIONNAME reduce 80 + COMMA shift 32 + {default} reduce 102 State 308: - (79) constExpr ::= NUMBER * + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - QMARK reduce 79 - COMMA reduce 79 - LOR reduce 79 - LAND reduce 79 - EQ reduce 79 - LE reduce 79 - LT reduce 79 - GE reduce 79 - GT reduce 79 - NE reduce 79 - BITOR reduce 79 - BITXOR reduce 79 - BITAND reduce 79 - LSHIFT reduce 79 - RSHIFT reduce 79 - PLUS reduce 79 - MINUS reduce 79 - DIVIDE reduce 79 - MULTIPLY reduce 79 - MOD reduce 79 - BITNOT reduce 79 - LPAREN reduce 79 - LSQBRACKET reduce 79 - PERIOD reduce 79 - SEMICOLON reduce 79 - NAME reduce 79 - COLON reduce 79 - FUNCTION reduce 79 - RPAREN reduce 79 - LBRACKET reduce 79 - VAR reduce 79 - NUMBER reduce 79 - RSQBRACKET reduce 79 - KILLS reduce 79 - TRGCONST reduce 79 - L2V reduce 79 - MAPSTRING reduce 79 - UNIT reduce 79 - SWITCH reduce 79 - LOCATION reduce 79 - STATTXTTBL reduce 79 - VARRAY reduce 79 - STATIC reduce 79 - CONST reduce 79 - INC reduce 79 - DEC reduce 79 - ONCE reduce 79 - IF reduce 79 - SWITCHCASE reduce 79 - WHILE reduce 79 - FOR reduce 79 - FOREACH reduce 79 - CONTINUE reduce 79 - BREAK reduce 79 - RETURN reduce 79 - ACTIONNAME reduce 79 + LPAREN shift 22 State 309: - (74) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * + logicExpr ::= CONDITIONNAME * LPAREN fArgs RPAREN - QMARK reduce 74 - COMMA reduce 74 - LOR reduce 74 - LAND reduce 74 - EQ reduce 74 - LE reduce 74 - LT reduce 74 - GE reduce 74 - GT reduce 74 - NE reduce 74 - BITOR reduce 74 - BITXOR reduce 74 - BITAND reduce 74 - LSHIFT reduce 74 - RSHIFT reduce 74 - PLUS reduce 74 - MINUS reduce 74 - DIVIDE reduce 74 - MULTIPLY reduce 74 - MOD reduce 74 - BITNOT reduce 74 - LPAREN reduce 74 - LSQBRACKET reduce 74 - PERIOD reduce 74 - SEMICOLON reduce 74 - NAME reduce 74 - COLON reduce 74 - FUNCTION reduce 74 - RPAREN reduce 74 - LBRACKET reduce 74 - VAR reduce 74 - NUMBER reduce 74 - RSQBRACKET reduce 74 - KILLS reduce 74 - TRGCONST reduce 74 - L2V reduce 74 - MAPSTRING reduce 74 - UNIT reduce 74 - SWITCH reduce 74 - LOCATION reduce 74 - STATTXTTBL reduce 74 - VARRAY reduce 74 - STATIC reduce 74 - CONST reduce 74 - INC reduce 74 - DEC reduce 74 - ONCE reduce 74 - IF reduce 74 - SWITCHCASE reduce 74 - WHILE reduce 74 - FOR reduce 74 - FOREACH reduce 74 - CONTINUE reduce 74 - BREAK reduce 74 - RETURN reduce 74 - ACTIONNAME reduce 74 + LPAREN shift 23 State 310: - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (109) nonConstExpr ::= funcexpr * + logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN - QMARK reduce 109 - COMMA reduce 109 - LOR reduce 109 - LAND reduce 109 - EQ reduce 109 - LE reduce 109 - LT reduce 109 - GE reduce 109 - GT reduce 109 - NE reduce 109 - BITOR reduce 109 - BITXOR reduce 109 - BITAND reduce 109 - LSHIFT reduce 109 - RSHIFT reduce 109 - PLUS reduce 109 - MINUS reduce 109 - DIVIDE reduce 109 - MULTIPLY reduce 109 - MOD reduce 109 - BITNOT reduce 109 - LPAREN reduce 109 - LSQBRACKET shift 546 - LSQBRACKET reduce 109 -- dropped by precedence - PERIOD reduce 109 - SEMICOLON reduce 109 - NAME reduce 109 - COLON reduce 109 - FUNCTION reduce 109 - RPAREN reduce 109 - LBRACKET reduce 109 - VAR reduce 109 - NUMBER reduce 109 - RSQBRACKET reduce 109 - KILLS reduce 109 - TRGCONST reduce 109 - L2V reduce 109 - MAPSTRING reduce 109 - UNIT reduce 109 - SWITCH reduce 109 - LOCATION reduce 109 - STATTXTTBL reduce 109 - VARRAY reduce 109 - STATIC reduce 109 - CONST reduce 109 - INC reduce 109 - DEC reduce 109 - ONCE reduce 109 - IF reduce 109 - SWITCHCASE reduce 109 - WHILE reduce 109 - FOR reduce 109 - FOREACH reduce 109 - CONTINUE reduce 109 - BREAK reduce 109 - RETURN reduce 109 - ACTIONNAME reduce 109 + RPAREN shift 493 State 311: - (75) exprList_nonEmpty ::= expr * + logicExpr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN - COMMA reduce 75 - PLUS reduce 75 - MINUS reduce 75 - BITNOT reduce 75 - LPAREN reduce 75 - LSQBRACKET reduce 75 - SEMICOLON reduce 75 - NAME reduce 75 - COLON reduce 75 - FUNCTION reduce 75 - RPAREN reduce 75 - LBRACKET reduce 75 - VAR reduce 75 - NUMBER reduce 75 - RSQBRACKET reduce 75 - KILLS reduce 75 - TRGCONST reduce 75 - L2V reduce 75 - MAPSTRING reduce 75 - UNIT reduce 75 - SWITCH reduce 75 - LOCATION reduce 75 - STATTXTTBL reduce 75 - VARRAY reduce 75 - STATIC reduce 75 - CONST reduce 75 - INC reduce 75 - DEC reduce 75 - ONCE reduce 75 - IF reduce 75 - SWITCHCASE reduce 75 - WHILE reduce 75 - FOR reduce 75 - FOREACH reduce 75 - CONTINUE reduce 75 - BREAK reduce 75 - RETURN reduce 75 - ACTIONNAME reduce 75 + LPAREN shift 41 State 312: - (73) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * + constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN - COMMA reduce 73 - PLUS reduce 73 - MINUS reduce 73 - BITNOT reduce 73 - LPAREN reduce 73 - LSQBRACKET reduce 73 - SEMICOLON reduce 73 - NAME reduce 73 - COLON reduce 73 - FUNCTION reduce 73 - RPAREN reduce 73 - LBRACKET reduce 73 - VAR reduce 73 - NUMBER reduce 73 - RSQBRACKET reduce 73 - KILLS reduce 73 - TRGCONST reduce 73 - L2V reduce 73 - MAPSTRING reduce 73 - UNIT reduce 73 - SWITCH reduce 73 - LOCATION reduce 73 - STATTXTTBL reduce 73 - VARRAY reduce 73 - STATIC reduce 73 - CONST reduce 73 - INC reduce 73 - DEC reduce 73 - ONCE reduce 73 - IF reduce 73 - SWITCHCASE reduce 73 - WHILE reduce 73 - FOR reduce 73 - FOREACH reduce 73 - CONTINUE reduce 73 - BREAK reduce 73 - RETURN reduce 73 - ACTIONNAME reduce 73 + RPAREN shift 494 State 313: - (76) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * + constExpr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN - COMMA reduce 76 - PLUS reduce 76 - MINUS reduce 76 - BITNOT reduce 76 - LPAREN reduce 76 - LSQBRACKET reduce 76 - SEMICOLON reduce 76 - NAME reduce 76 - COLON reduce 76 - FUNCTION reduce 76 - RPAREN reduce 76 - LBRACKET reduce 76 - VAR reduce 76 - NUMBER reduce 76 - RSQBRACKET reduce 76 - KILLS reduce 76 - TRGCONST reduce 76 - L2V reduce 76 - MAPSTRING reduce 76 - UNIT reduce 76 - SWITCH reduce 76 - LOCATION reduce 76 - STATTXTTBL reduce 76 - VARRAY reduce 76 - STATIC reduce 76 - CONST reduce 76 - INC reduce 76 - DEC reduce 76 - ONCE reduce 76 - IF reduce 76 - SWITCHCASE reduce 76 - WHILE reduce 76 - FOR reduce 76 - FOREACH reduce 76 - CONTINUE reduce 76 - BREAK reduce 76 - RETURN reduce 76 - ACTIONNAME reduce 76 + LPAREN shift 42 State 314: - (60) bodyStmtList ::= bodyStmt * + constExpr ::= STATTXTTBL LPAREN STRING * RPAREN - PLUS reduce 60 - MINUS reduce 60 - BITNOT reduce 60 - LPAREN reduce 60 - LSQBRACKET reduce 60 - SEMICOLON reduce 60 - NAME reduce 60 - FUNCTION reduce 60 - LBRACKET reduce 60 - VAR reduce 60 - RBRACKET reduce 60 - NUMBER reduce 60 - KILLS reduce 60 - TRGCONST reduce 60 - L2V reduce 60 - MAPSTRING reduce 60 - UNIT reduce 60 - SWITCH reduce 60 - LOCATION reduce 60 - STATTXTTBL reduce 60 - VARRAY reduce 60 - STATIC reduce 60 - CONST reduce 60 - INC reduce 60 - DEC reduce 60 - ONCE reduce 60 - IF reduce 60 - SWITCHCASE reduce 60 - CASE reduce 60 - DEFAULT reduce 60 - WHILE reduce 60 - FOR reduce 60 - FOREACH reduce 60 - CONTINUE reduce 60 - BREAK reduce 60 - RETURN reduce 60 - ACTIONNAME reduce 60 + RPAREN shift 495 State 315: - (233) case_clause ::= case_start exprList_nonEmpty COLON * + constExpr ::= STATTXTTBL LPAREN * STRING RPAREN - PLUS reduce 233 - MINUS reduce 233 - BITNOT reduce 233 - LPAREN reduce 233 - LSQBRACKET reduce 233 - SEMICOLON reduce 233 - NAME reduce 233 - FUNCTION reduce 233 - LBRACKET reduce 233 - VAR reduce 233 - RBRACKET reduce 233 - NUMBER reduce 233 - KILLS reduce 233 - TRGCONST reduce 233 - L2V reduce 233 - MAPSTRING reduce 233 - UNIT reduce 233 - SWITCH reduce 233 - LOCATION reduce 233 - STATTXTTBL reduce 233 - VARRAY reduce 233 - STATIC reduce 233 - CONST reduce 233 - INC reduce 233 - DEC reduce 233 - ONCE reduce 233 - IF reduce 233 - SWITCHCASE reduce 233 - CASE reduce 233 - DEFAULT reduce 233 - WHILE reduce 233 - FOR reduce 233 - FOREACH reduce 233 - CONTINUE reduce 233 - BREAK reduce 233 - RETURN reduce 233 - ACTIONNAME reduce 233 + STRING shift 314 State 316: - (62) bodyStmtList ::= bodyStmtList error * + constExpr ::= STATTXTTBL * LPAREN STRING RPAREN - PLUS reduce 62 - MINUS reduce 62 - BITNOT reduce 62 - LPAREN reduce 62 - LSQBRACKET reduce 62 - SEMICOLON reduce 62 - NAME reduce 62 - FUNCTION reduce 62 - LBRACKET reduce 62 - VAR reduce 62 - RBRACKET reduce 62 - NUMBER reduce 62 - KILLS reduce 62 - TRGCONST reduce 62 - L2V reduce 62 - MAPSTRING reduce 62 - UNIT reduce 62 - SWITCH reduce 62 - LOCATION reduce 62 - STATTXTTBL reduce 62 - VARRAY reduce 62 - STATIC reduce 62 - CONST reduce 62 - INC reduce 62 - DEC reduce 62 - ONCE reduce 62 - IF reduce 62 - SWITCHCASE reduce 62 - CASE reduce 62 - DEFAULT reduce 62 - WHILE reduce 62 - FOR reduce 62 - FOREACH reduce 62 - CONTINUE reduce 62 - BREAK reduce 62 - RETURN reduce 62 - ACTIONNAME reduce 62 + LPAREN shift 315 State 317: - (61) bodyStmtList ::= bodyStmtList bodyStmt * + constExpr ::= LOCATION LPAREN STRING * RPAREN - PLUS reduce 61 - MINUS reduce 61 - BITNOT reduce 61 - LPAREN reduce 61 - LSQBRACKET reduce 61 - SEMICOLON reduce 61 - NAME reduce 61 - FUNCTION reduce 61 - LBRACKET reduce 61 - VAR reduce 61 - RBRACKET reduce 61 - NUMBER reduce 61 - KILLS reduce 61 - TRGCONST reduce 61 - L2V reduce 61 - MAPSTRING reduce 61 - UNIT reduce 61 - SWITCH reduce 61 - LOCATION reduce 61 - STATTXTTBL reduce 61 - VARRAY reduce 61 - STATIC reduce 61 - CONST reduce 61 - INC reduce 61 - DEC reduce 61 - ONCE reduce 61 - IF reduce 61 - SWITCHCASE reduce 61 - CASE reduce 61 - DEFAULT reduce 61 - WHILE reduce 61 - FOR reduce 61 - FOREACH reduce 61 - CONTINUE reduce 61 - BREAK reduce 61 - RETURN reduce 61 - ACTIONNAME reduce 61 + RPAREN shift 496 State 318: - (238) default_clause ::= DEFAULT COLON * + constExpr ::= LOCATION LPAREN * STRING RPAREN - PLUS reduce 238 - MINUS reduce 238 - BITNOT reduce 238 - LPAREN reduce 238 - LSQBRACKET reduce 238 - SEMICOLON reduce 238 - NAME reduce 238 - FUNCTION reduce 238 - LBRACKET reduce 238 - VAR reduce 238 - RBRACKET reduce 238 - NUMBER reduce 238 - KILLS reduce 238 - TRGCONST reduce 238 - L2V reduce 238 - MAPSTRING reduce 238 - UNIT reduce 238 - SWITCH reduce 238 - LOCATION reduce 238 - STATTXTTBL reduce 238 - VARRAY reduce 238 - STATIC reduce 238 - CONST reduce 238 - INC reduce 238 - DEC reduce 238 - ONCE reduce 238 - IF reduce 238 - SWITCHCASE reduce 238 - WHILE reduce 238 - FOR reduce 238 - FOREACH reduce 238 - CONTINUE reduce 238 - BREAK reduce 238 - RETURN reduce 238 - ACTIONNAME reduce 238 + STRING shift 317 State 319: - (36) lbracket ::= LBRACKET * + constExpr ::= LOCATION * LPAREN STRING RPAREN - PLUS reduce 36 - MINUS reduce 36 - BITNOT reduce 36 - LPAREN reduce 36 - LSQBRACKET reduce 36 - SEMICOLON reduce 36 - NAME reduce 36 - FUNCTION reduce 36 - LBRACKET reduce 36 - VAR reduce 36 - RBRACKET reduce 36 - NUMBER reduce 36 - KILLS reduce 36 - TRGCONST reduce 36 - L2V reduce 36 - MAPSTRING reduce 36 - UNIT reduce 36 - SWITCH reduce 36 - LOCATION reduce 36 - STATTXTTBL reduce 36 - VARRAY reduce 36 - STATIC reduce 36 - CONST reduce 36 - INC reduce 36 - DEC reduce 36 - ONCE reduce 36 - IF reduce 36 - SWITCHCASE reduce 36 - WHILE reduce 36 - FOR reduce 36 - FOREACH reduce 36 - CONTINUE reduce 36 - BREAK reduce 36 - RETURN reduce 36 - ACTIONNAME reduce 36 + LPAREN shift 318 State 320: - (24) fdef_rettypes ::= COLON exprList_nonEmpty * - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + constExpr ::= SWITCH LPAREN STRING * RPAREN - COMMA shift 80 - PLUS reduce 24 - MINUS reduce 24 - BITNOT reduce 24 - LPAREN reduce 24 - LSQBRACKET reduce 24 - SEMICOLON reduce 24 - NAME reduce 24 - FUNCTION reduce 24 - LBRACKET reduce 24 - VAR reduce 24 - NUMBER reduce 24 - KILLS reduce 24 - TRGCONST reduce 24 - L2V reduce 24 - MAPSTRING reduce 24 - UNIT reduce 24 - SWITCH reduce 24 - LOCATION reduce 24 - STATTXTTBL reduce 24 - VARRAY reduce 24 - STATIC reduce 24 - CONST reduce 24 - INC reduce 24 - DEC reduce 24 - ONCE reduce 24 - IF reduce 24 - SWITCHCASE reduce 24 - WHILE reduce 24 - FOR reduce 24 - FOREACH reduce 24 - CONTINUE reduce 24 - BREAK reduce 24 - RETURN reduce 24 - ACTIONNAME reduce 24 + RPAREN shift 497 State 321: - (30) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + constExpr ::= SWITCH LPAREN * STRING RPAREN - PLUS reduce 30 - MINUS reduce 30 - BITNOT reduce 30 - LPAREN reduce 30 - LSQBRACKET reduce 30 - SEMICOLON reduce 30 - NAME reduce 30 - FUNCTION reduce 30 - LBRACKET reduce 30 - VAR reduce 30 - NUMBER reduce 30 - KILLS reduce 30 - TRGCONST reduce 30 - L2V reduce 30 - MAPSTRING reduce 30 - UNIT reduce 30 - SWITCH reduce 30 - LOCATION reduce 30 - STATTXTTBL reduce 30 - VARRAY reduce 30 - STATIC reduce 30 - CONST reduce 30 - INC reduce 30 - DEC reduce 30 - ONCE reduce 30 - IF reduce 30 - SWITCHCASE reduce 30 - WHILE reduce 30 - FOR reduce 30 - FOREACH reduce 30 - CONTINUE reduce 30 - BREAK reduce 30 - RETURN reduce 30 - ACTIONNAME reduce 30 + STRING shift 320 State 322: - (25) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + constExpr ::= SWITCH * LPAREN STRING RPAREN - PLUS reduce 25 - MINUS reduce 25 - BITNOT reduce 25 - LPAREN reduce 25 - LSQBRACKET reduce 25 - SEMICOLON reduce 25 - NAME reduce 25 - FUNCTION reduce 25 - LBRACKET reduce 25 - VAR reduce 25 - NUMBER reduce 25 - KILLS reduce 25 - TRGCONST reduce 25 - L2V reduce 25 - MAPSTRING reduce 25 - UNIT reduce 25 - SWITCH reduce 25 - LOCATION reduce 25 - STATTXTTBL reduce 25 - VARRAY reduce 25 - STATIC reduce 25 - CONST reduce 25 - INC reduce 25 - DEC reduce 25 - ONCE reduce 25 - IF reduce 25 - SWITCHCASE reduce 25 - WHILE reduce 25 - FOR reduce 25 - FOREACH reduce 25 - CONTINUE reduce 25 - BREAK reduce 25 - RETURN reduce 25 - ACTIONNAME reduce 25 + LPAREN shift 321 State 323: - (86) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * + constExpr ::= UNIT LPAREN STRING * RPAREN - PLUS reduce 86 - MINUS reduce 86 - BITNOT reduce 86 - LPAREN reduce 86 - LSQBRACKET reduce 86 - SEMICOLON reduce 86 - NAME reduce 86 - FUNCTION reduce 86 - LBRACKET reduce 86 - VAR reduce 86 - NUMBER reduce 86 - KILLS reduce 86 - TRGCONST reduce 86 - L2V reduce 86 - MAPSTRING reduce 86 - UNIT reduce 86 - SWITCH reduce 86 - LOCATION reduce 86 - STATTXTTBL reduce 86 - VARRAY reduce 86 - STATIC reduce 86 - CONST reduce 86 - INC reduce 86 - DEC reduce 86 - ONCE reduce 86 - IF reduce 86 - SWITCHCASE reduce 86 - WHILE reduce 86 - FOR reduce 86 - FOREACH reduce 86 - CONTINUE reduce 86 - BREAK reduce 86 - RETURN reduce 86 - ACTIONNAME reduce 86 + RPAREN shift 498 State 324: - elif_start ::= ELSE * IF - (228) else_header ::= ELSE * + constExpr ::= UNIT LPAREN * STRING RPAREN - PLUS reduce 228 - MINUS reduce 228 - BITNOT reduce 228 - LPAREN reduce 228 - LSQBRACKET reduce 228 - SEMICOLON reduce 228 - NAME reduce 228 - FUNCTION reduce 228 - LBRACKET reduce 228 - VAR reduce 228 - NUMBER reduce 228 - KILLS reduce 228 - TRGCONST reduce 228 - L2V reduce 228 - MAPSTRING reduce 228 - UNIT reduce 228 - SWITCH reduce 228 - LOCATION reduce 228 - STATTXTTBL reduce 228 - VARRAY reduce 228 - STATIC reduce 228 - CONST reduce 228 - INC reduce 228 - DEC reduce 228 - ONCE reduce 228 - IF shift 488 - IF reduce 228 -- dropped by precedence - SWITCHCASE reduce 228 - WHILE reduce 228 - FOR reduce 228 - FOREACH reduce 228 - CONTINUE reduce 228 - BREAK reduce 228 - RETURN reduce 228 - ACTIONNAME reduce 228 + STRING shift 323 State 325: - once_header ::= once_start * LPAREN expr - (219) once_nocond ::= once_start * + constExpr ::= UNIT * LPAREN STRING RPAREN - PLUS reduce 219 - MINUS reduce 219 - BITNOT reduce 219 - LPAREN shift 52 - LPAREN reduce 219 -- dropped by precedence - LSQBRACKET reduce 219 - SEMICOLON reduce 219 - NAME reduce 219 - FUNCTION reduce 219 - LBRACKET reduce 219 - VAR reduce 219 - NUMBER reduce 219 - KILLS reduce 219 - TRGCONST reduce 219 - L2V reduce 219 - MAPSTRING reduce 219 - UNIT reduce 219 - SWITCH reduce 219 - LOCATION reduce 219 - STATTXTTBL reduce 219 - VARRAY reduce 219 - STATIC reduce 219 - CONST reduce 219 - INC reduce 219 - DEC reduce 219 - ONCE reduce 219 - IF reduce 219 - SWITCHCASE reduce 219 - WHILE reduce 219 - FOR reduce 219 - FOREACH reduce 219 - CONTINUE reduce 219 - BREAK reduce 219 - RETURN reduce 219 - ACTIONNAME reduce 219 + LPAREN shift 324 State 326: - (216) once_start ::= ONCE * + constExpr ::= MAPSTRING LPAREN STRING * RPAREN - PLUS reduce 216 - MINUS reduce 216 - BITNOT reduce 216 - LPAREN reduce 216 - LSQBRACKET reduce 216 - SEMICOLON reduce 216 - NAME reduce 216 - FUNCTION reduce 216 - LBRACKET reduce 216 - VAR reduce 216 - NUMBER reduce 216 - KILLS reduce 216 - TRGCONST reduce 216 - L2V reduce 216 - MAPSTRING reduce 216 - UNIT reduce 216 - SWITCH reduce 216 - LOCATION reduce 216 - STATTXTTBL reduce 216 - VARRAY reduce 216 - STATIC reduce 216 - CONST reduce 216 - INC reduce 216 - DEC reduce 216 - ONCE reduce 216 - IF reduce 216 - SWITCHCASE reduce 216 - WHILE reduce 216 - FOR reduce 216 - FOREACH reduce 216 - CONTINUE reduce 216 - BREAK reduce 216 - RETURN reduce 216 - ACTIONNAME reduce 216 + RPAREN shift 499 State 327: - (85) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * - (195) lvalue ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + constExpr ::= MAPSTRING LPAREN * STRING RPAREN - ASSIGN reduce 195 - QMARK reduce 85 - COMMA reduce 195 - BITOR reduce 85 - BITXOR reduce 85 - BITAND reduce 85 - LSHIFT reduce 85 - RSHIFT reduce 85 - PLUS reduce 85 - MINUS reduce 85 - DIVIDE reduce 85 - MULTIPLY reduce 85 - MOD reduce 85 - LPAREN reduce 85 - LSQBRACKET reduce 85 - PERIOD reduce 85 - SEMICOLON reduce 195 - RPAREN reduce 195 - INC reduce 195 - DEC reduce 195 - IADD reduce 195 - ISUB reduce 195 - IMUL reduce 195 - IDIV reduce 195 - IMOD reduce 195 - ILSH reduce 195 - IRSH reduce 195 - IBND reduce 195 - IBOR reduce 195 - IBXR reduce 195 + STRING shift 326 State 328: - (84) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * - (197) lvalue ::= nonConstExpr PERIOD TRGCONST * + constExpr ::= MAPSTRING * LPAREN STRING RPAREN - ASSIGN reduce 197 - QMARK reduce 84 - COMMA reduce 197 - BITOR reduce 84 - BITXOR reduce 84 - BITAND reduce 84 - LSHIFT reduce 84 - RSHIFT reduce 84 - PLUS reduce 84 - MINUS reduce 84 - DIVIDE reduce 84 - MULTIPLY reduce 84 - MOD reduce 84 - LPAREN reduce 84 - LSQBRACKET reduce 84 - PERIOD reduce 84 - SEMICOLON reduce 197 - RPAREN reduce 197 - INC reduce 197 - DEC reduce 197 - IADD reduce 197 - ISUB reduce 197 - IMUL reduce 197 - IDIV reduce 197 - IMOD reduce 197 - ILSH reduce 197 - IRSH reduce 197 - IBND reduce 197 - IBOR reduce 197 - IBXR reduce 197 + LPAREN shift 327 State 329: - (83) nonConstExpr ::= nonConstExpr PERIOD NAME * - (196) lvalue ::= nonConstExpr PERIOD NAME * + nonConstExpr ::= L2V LPAREN expr * RPAREN - ASSIGN reduce 196 - QMARK reduce 83 - COMMA reduce 196 - BITOR reduce 83 - BITXOR reduce 83 - BITAND reduce 83 - LSHIFT reduce 83 - RSHIFT reduce 83 - PLUS reduce 83 - MINUS reduce 83 - DIVIDE reduce 83 - MULTIPLY reduce 83 - MOD reduce 83 - LPAREN reduce 83 - LSQBRACKET reduce 83 - PERIOD reduce 83 - SEMICOLON reduce 196 - RPAREN reduce 196 - INC reduce 196 - DEC reduce 196 - IADD reduce 196 - ISUB reduce 196 - IMUL reduce 196 - IDIV reduce 196 - IMOD reduce 196 - ILSH reduce 196 - IRSH reduce 196 - IBND reduce 196 - IBOR reduce 196 - IBXR reduce 196 + RPAREN shift 500 State 330: - (82) nonConstExpr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN - (194) lvalue ::= NAME * + nonConstExpr ::= L2V * LPAREN expr RPAREN - ASSIGN reduce 194 - QMARK reduce 82 - COMMA reduce 194 - BITOR reduce 82 - BITXOR reduce 82 - BITAND reduce 82 - LSHIFT reduce 82 - RSHIFT reduce 82 - PLUS reduce 82 - MINUS reduce 82 - DIVIDE reduce 82 - MULTIPLY reduce 82 - MOD reduce 82 - LPAREN shift 24 - LPAREN reduce 82 -- dropped by precedence - LSQBRACKET reduce 82 - PERIOD reduce 82 - SEMICOLON reduce 194 - RPAREN reduce 194 - INC reduce 194 - DEC reduce 194 - IADD reduce 194 - ISUB reduce 194 - IMUL reduce 194 - IDIV reduce 194 - IMOD reduce 194 - ILSH reduce 194 - IRSH reduce 194 - IBND reduce 194 - IBOR reduce 194 - IBXR reduce 194 + LPAREN shift 74 State 331: - (82) nonConstExpr ::= NAME * - fConstArg ::= NAME * ASSIGN expr - fConstArg ::= NAME * ASSIGN STRING - funcexpr ::= NAME * LPAREN fArgs RPAREN + exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET - ASSIGN shift 46 - QMARK reduce 82 - COMMA reduce 82 - LOR reduce 82 - LAND reduce 82 - EQ reduce 82 - LE reduce 82 - LT reduce 82 - GE reduce 82 - GT reduce 82 - NE reduce 82 - BITOR reduce 82 - BITXOR reduce 82 - BITAND reduce 82 - LSHIFT reduce 82 - RSHIFT reduce 82 - PLUS reduce 82 - MINUS reduce 82 - DIVIDE reduce 82 - MULTIPLY reduce 82 - MOD reduce 82 - LPAREN shift 24 - LPAREN reduce 82 -- dropped by precedence - LSQBRACKET reduce 82 - PERIOD reduce 82 - RPAREN reduce 82 + RSQBRACKET shift 502 State 332: - (248) for_opener ::= FOR LPAREN * + numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER - PLUS reduce 248 - MINUS reduce 248 - BITNOT reduce 248 - LPAREN reduce 248 - LSQBRACKET reduce 248 - SEMICOLON reduce 248 - NAME reduce 248 - FUNCTION reduce 248 - VAR reduce 248 - NUMBER reduce 248 - KILLS reduce 248 - TRGCONST reduce 248 - L2V reduce 248 - MAPSTRING reduce 248 - UNIT reduce 248 - SWITCH reduce 248 - LOCATION reduce 248 - STATTXTTBL reduce 248 - VARRAY reduce 248 - CONST reduce 248 - INC reduce 248 - DEC reduce 248 - ACTIONNAME reduce 248 + NUMBER shift 503 State 333: - (262) for_header2 ::= for_header1 expr SEMICOLON * + (63) numList_nonEmpty ::= NUMBER * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET - PLUS reduce 262 - MINUS reduce 262 - BITNOT reduce 262 - LPAREN reduce 262 - LSQBRACKET reduce 262 - NAME reduce 262 - FUNCTION reduce 262 - RPAREN reduce 262 - NUMBER reduce 262 - KILLS reduce 262 - TRGCONST reduce 262 - L2V reduce 262 - MAPSTRING reduce 262 - UNIT reduce 262 - SWITCH reduce 262 - LOCATION reduce 262 - STATTXTTBL reduce 262 - VARRAY reduce 262 - INC reduce 262 - DEC reduce 262 - ACTIONNAME reduce 262 + RSQBRACKET shift 353 + {default} reduce 63 State 334: - (261) for_header1 ::= for_opener for_init_stmt SEMICOLON * + exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - LNOT reduce 261 - PLUS reduce 261 - MINUS reduce 261 - BITNOT reduce 261 - LPAREN reduce 261 - LSQBRACKET reduce 261 - NAME reduce 261 - FUNCTION reduce 261 - NUMBER reduce 261 - KILLS reduce 261 - TRGCONST reduce 261 - L2V reduce 261 - MAPSTRING reduce 261 - UNIT reduce 261 - SWITCH reduce 261 - LOCATION reduce 261 - STATTXTTBL reduce 261 - VARRAY reduce 261 - LIST reduce 261 - CONDITIONNAME reduce 261 - ACTIONNAME reduce 261 + LSQBRACKET shift 156 State 335: - (232) case_start ::= CASE * - - LNOT reduce 232 - PLUS reduce 232 - MINUS reduce 232 - BITNOT reduce 232 - LPAREN reduce 232 - LSQBRACKET reduce 232 - NAME reduce 232 - FUNCTION reduce 232 - NUMBER reduce 232 - KILLS reduce 232 - TRGCONST reduce 232 - L2V reduce 232 - MAPSTRING reduce 232 - UNIT reduce 232 - SWITCH reduce 232 - LOCATION reduce 232 - STATTXTTBL reduce 232 - VARRAY reduce 232 - LIST reduce 232 - CONDITIONNAME reduce 232 - ACTIONNAME reduce 232 - -State 336: - (91) fConstArg ::= constExpr * - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr - - COMMA reduce 91 - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - RPAREN reduce 91 - -State 337: - constExpr ::= LPAREN constExpr * RPAREN - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (109) nonConstExpr ::= funcexpr * - EQ shift 138 - LE shift 125 - LT shift 123 - GE shift 124 - GT shift 122 - NE shift 126 - BITOR shift 128 - BITXOR shift 127 - BITAND shift 129 - LSHIFT shift 131 - RSHIFT shift 130 - PLUS shift 136 - MINUS shift 135 - DIVIDE shift 133 - MULTIPLY shift 134 - MOD shift 132 - RPAREN shift 297 + LSQBRACKET shift 334 + {default} reduce 109 + +State 336: + nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + lvalue ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + + RSQBRACKET shift 183 + +State 337: + bodyStmt ::= return_stmt * SEMICOLON + + SEMICOLON shift 508 State 338: - constExpr ::= LPAREN constExpr * RPAREN - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr + bodyStmt ::= break_stmt * SEMICOLON - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - RPAREN shift 297 + SEMICOLON shift 509 State 339: - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (106) funcexprStmt ::= funcexpr * - (109) nonConstExpr ::= funcexpr * + bodyStmt ::= continue_stmt * SEMICOLON - QMARK reduce 109 - COMMA reduce 106 - BITOR reduce 109 - BITXOR reduce 109 - BITAND reduce 109 - LSHIFT reduce 109 - RSHIFT reduce 109 - PLUS reduce 109 - MINUS reduce 109 - DIVIDE reduce 109 - MULTIPLY reduce 109 - MOD reduce 109 - LPAREN reduce 109 - LSQBRACKET shift 546 - LSQBRACKET reduce 109 -- dropped by precedence - PERIOD reduce 109 - SEMICOLON reduce 106 - RPAREN reduce 106 + SEMICOLON shift 510 State 340: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + bodyStmt ::= funcexprStmt * SEMICOLON - EQ shift 138 - LE shift 125 - LT shift 123 - GE shift 124 - GT shift 122 - NE shift 126 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 + SEMICOLON shift 518 State 341: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr + bodyStmt ::= assign_stmt * SEMICOLON - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 + SEMICOLON shift 519 State 342: - (198) lvalueList_nonEmpty ::= lvalue * - assign_stmt ::= lvalue * ASSIGN expr - assign_stmt ::= lvalue * INC - assign_stmt ::= lvalue * DEC - assign_stmt ::= lvalue * IADD expr - assign_stmt ::= lvalue * ISUB expr - assign_stmt ::= lvalue * IMUL expr - assign_stmt ::= lvalue * IDIV expr - assign_stmt ::= lvalue * IMOD expr - assign_stmt ::= lvalue * ILSH expr - assign_stmt ::= lvalue * IRSH expr - assign_stmt ::= lvalue * IBND expr - assign_stmt ::= lvalue * IBOR expr - assign_stmt ::= lvalue * IBXR expr + bodyStmt ::= cdef_stmt * SEMICOLON - ASSIGN shift 63 - ASSIGN reduce 198 -- dropped by precedence - COMMA reduce 198 - INC shift 386 - DEC shift 385 - IADD shift 62 - ISUB shift 61 - IMUL shift 60 - IDIV shift 59 - IMOD shift 58 - ILSH shift 57 - IRSH shift 56 - IBND shift 55 - IBOR shift 54 - IBXR shift 53 + SEMICOLON shift 520 State 343: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - lvalue ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - lvalue ::= nonConstExpr * PERIOD NAME - lvalue ::= nonConstExpr * PERIOD TRGCONST + bodyStmt ::= vdefAssign_stmt * SEMICOLON - QMARK shift 76 - BITOR shift 66 - BITXOR shift 65 - BITAND shift 67 - LSHIFT shift 69 - RSHIFT shift 68 - PLUS shift 74 - MINUS shift 73 - DIVIDE shift 71 - MULTIPLY shift 72 - MOD shift 70 - LPAREN shift 23 - LSQBRACKET shift 77 - PERIOD shift 441 + SEMICOLON shift 521 State 344: - (33) object_chunk ::= object_body RBRACKET SEMICOLON * + bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON - $ reduce 33 - IMPORT reduce 33 - FUNCTION reduce 33 - OBJECT reduce 33 - LBRACKET reduce 33 - VAR reduce 33 - CONST reduce 33 + SEMICOLON shift 522 State 345: - (26) fdef_chunk ::= fdef_header stmt * + bodyStmt ::= vdef_stmt * SEMICOLON - $ reduce 26 - IMPORT reduce 26 - FUNCTION reduce 26 - OBJECT reduce 26 - LBRACKET reduce 26 - VAR reduce 26 - CONST reduce 26 + SEMICOLON shift 523 State 346: - (27) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * + blockStmt ::= lbracket error * RBRACKET - $ reduce 27 - IMPORT reduce 27 - FUNCTION reduce 27 - OBJECT reduce 27 - LBRACKET reduce 27 - VAR reduce 27 - CONST reduce 27 + RBRACKET shift 526 State 347: - (18) relimp_chunk ::= relimp_path AS NAME SEMICOLON * + stmt ::= error * SEMICOLON - $ reduce 18 - IMPORT reduce 18 - FUNCTION reduce 18 - OBJECT reduce 18 - LBRACKET reduce 18 - VAR reduce 18 - CONST reduce 18 + SEMICOLON shift 531 State 348: - (17) relimp_chunk ::= relimp_path SEMICOLON * + (65) typedName ::= NAME * + typedName ::= NAME * COLON expr - $ reduce 17 - IMPORT reduce 17 - FUNCTION reduce 17 - OBJECT reduce 17 - LBRACKET reduce 17 - VAR reduce 17 - CONST reduce 17 + COLON shift 78 + {default} reduce 65 State 349: - (12) chunk ::= blockStmt * + lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes - $ reduce 12 - IMPORT reduce 12 - FUNCTION reduce 12 - OBJECT reduce 12 - LBRACKET reduce 12 - VAR reduce 12 - CONST reduce 12 + LPAREN shift 117 State 350: - (11) chunk ::= cdef_global_stmt SEMICOLON * + nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - $ reduce 11 - IMPORT reduce 11 - FUNCTION reduce 11 - OBJECT reduce 11 - LBRACKET reduce 11 - VAR reduce 11 - CONST reduce 11 + RSQBRACKET shift 533 State 351: - (10) chunk ::= vdefAssign_global_stmt SEMICOLON * + (82) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN - $ reduce 10 - IMPORT reduce 10 - FUNCTION reduce 10 - OBJECT reduce 10 - LBRACKET reduce 10 - VAR reduce 10 - CONST reduce 10 + LPAREN shift 25 + {default} reduce 82 State 352: - (9) chunk ::= vdef_stmt SEMICOLON * + (80) constExpr ::= KILLS * + logicExpr ::= KILLS * LPAREN fArgs RPAREN - $ reduce 9 - IMPORT reduce 9 - FUNCTION reduce 9 - OBJECT reduce 9 - LBRACKET reduce 9 - VAR reduce 9 - CONST reduce 9 + LPAREN shift 26 + {default} reduce 80 State 353: - (8) chunk ::= object_chunk * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET - $ reduce 8 - IMPORT reduce 8 - FUNCTION reduce 8 - OBJECT reduce 8 - LBRACKET reduce 8 - VAR reduce 8 - CONST reduce 8 + RSQBRACKET shift 539 State 354: - (7) chunk ::= fdecl_chunk * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET - $ reduce 7 - IMPORT reduce 7 - FUNCTION reduce 7 - OBJECT reduce 7 - LBRACKET reduce 7 - VAR reduce 7 - CONST reduce 7 + RSQBRACKET shift 353 State 355: - (6) chunk ::= fdef_chunk * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET - $ reduce 6 - IMPORT reduce 6 - FUNCTION reduce 6 - OBJECT reduce 6 - LBRACKET reduce 6 - VAR reduce 6 - CONST reduce 6 + NUMBER shift 354 State 356: - (5) chunk ::= import_chunk SEMICOLON * + nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - $ reduce 5 - IMPORT reduce 5 - FUNCTION reduce 5 - OBJECT reduce 5 - LBRACKET reduce 5 - VAR reduce 5 - CONST reduce 5 + LSQBRACKET shift 355 State 357: - (4) chunk ::= relimp_chunk * + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (109) nonConstExpr ::= funcexpr * - $ reduce 4 - IMPORT reduce 4 - FUNCTION reduce 4 - OBJECT reduce 4 - LBRACKET reduce 4 - VAR reduce 4 - CONST reduce 4 + LSQBRACKET shift 356 + {default} reduce 109 State 358: - (3) chunks ::= chunks error * + (24) fdef_rettypes ::= COLON exprList_nonEmpty * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - $ reduce 3 - IMPORT reduce 3 - FUNCTION reduce 3 - OBJECT reduce 3 - LBRACKET reduce 3 - VAR reduce 3 - CONST reduce 3 + COMMA shift 80 + {default} reduce 24 State 359: - (2) chunks ::= chunks chunk * + fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON - $ reduce 2 - IMPORT reduce 2 - FUNCTION reduce 2 - OBJECT reduce 2 - LBRACKET reduce 2 - VAR reduce 2 - CONST reduce 2 + RPAREN shift 142 State 360: - (72) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * + fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON - ASSIGN reduce 72 - COMMA reduce 72 - SEMICOLON reduce 72 - COLON reduce 72 + LPAREN shift 118 State 361: - (71) nameList_nonEmpty ::= NAME * + fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON - ASSIGN reduce 71 - COMMA reduce 71 - SEMICOLON reduce 71 - COLON reduce 71 + NAME shift 360 State 362: - (90) fNonConstArg ::= logicExpr * - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr + relimp_chunk ::= relimp_path AS NAME * SEMICOLON - COMMA reduce 90 - LOR shift 82 - LAND shift 84 - RPAREN reduce 90 + SEMICOLON shift 540 State 363: - (65) typedName ::= NAME * - typedName ::= NAME * COLON expr + relimp_chunk ::= relimp_path AS * NAME SEMICOLON - COMMA reduce 65 - SEMICOLON reduce 65 - COLON shift 78 - RPAREN reduce 65 + NAME shift 362 State 364: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (188) vdef_stmt ::= VAR nameList_nonEmpty * - vdefAssign_global_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty + relimp_path ::= relimp_path PERIOD * NAME - ASSIGN shift 34 - COMMA shift 496 - SEMICOLON reduce 188 + NAME shift 542 State 365: - (32) object_body ::= object_body method_chunk * + import_chunk ::= IMPORT dottedName AS * NAME - FUNCTION reduce 32 - VAR reduce 32 - RBRACKET reduce 32 + NAME shift 545 State 366: - (31) method_chunk ::= method_header stmt * + dottedName ::= dottedName PERIOD * NAME - FUNCTION reduce 31 - VAR reduce 31 - RBRACKET reduce 31 + NAME shift 546 State 367: - (29) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * + chunk ::= cdef_global_stmt * SEMICOLON - FUNCTION reduce 29 - VAR reduce 29 - RBRACKET reduce 29 + SEMICOLON shift 550 State 368: - (28) object_body ::= OBJECT NAME LBRACKET * + chunk ::= vdefAssign_global_stmt * SEMICOLON - FUNCTION reduce 28 - VAR reduce 28 - RBRACKET reduce 28 + SEMICOLON shift 551 State 369: - (67) typedNameList_nonEmpty ::= typedName * - typedNameList_nonEmpty ::= typedName * COMMA typedNameList_nonEmpty + chunk ::= vdef_stmt * SEMICOLON - COMMA shift 141 - SEMICOLON reduce 67 - RPAREN reduce 67 + SEMICOLON shift 552 State 370: - (237) case_chunks ::= case_chunk * + chunk ::= import_chunk * SEMICOLON - RBRACKET reduce 237 - CASE reduce 237 - DEFAULT reduce 237 + SEMICOLON shift 556 State 371: - (236) case_chunks ::= case_chunks case_chunk * + (33) object_chunk ::= object_body RBRACKET SEMICOLON * - RBRACKET reduce 236 - CASE reduce 236 - DEFAULT reduce 236 + {default} reduce 33 State 372: - (204) assign_stmt ::= DEC lvalue * + (32) object_body ::= object_body method_chunk * - COMMA reduce 204 - SEMICOLON reduce 204 - RPAREN reduce 204 + {default} reduce 32 State 373: - (202) assign_stmt ::= INC lvalue * + (31) method_chunk ::= method_header stmt * - COMMA reduce 202 - SEMICOLON reduce 202 - RPAREN reduce 202 + {default} reduce 31 State 374: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (201) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * + (30) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * - COMMA shift 80 - COMMA reduce 201 -- dropped by precedence - SEMICOLON reduce 201 - RPAREN reduce 201 + {default} reduce 30 State 375: - (215) assign_stmt ::= lvalue IBXR expr * + (29) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * - COMMA reduce 215 - SEMICOLON reduce 215 - RPAREN reduce 215 + {default} reduce 29 State 376: - (214) assign_stmt ::= lvalue IBOR expr * + (28) object_body ::= OBJECT NAME LBRACKET * - COMMA reduce 214 - SEMICOLON reduce 214 - RPAREN reduce 214 + {default} reduce 28 State 377: - (213) assign_stmt ::= lvalue IBND expr * + (26) fdef_chunk ::= fdef_header stmt * - COMMA reduce 213 - SEMICOLON reduce 213 - RPAREN reduce 213 + {default} reduce 26 State 378: - (212) assign_stmt ::= lvalue IRSH expr * + (27) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * - COMMA reduce 212 - SEMICOLON reduce 212 - RPAREN reduce 212 + {default} reduce 27 State 379: - (211) assign_stmt ::= lvalue ILSH expr * + (25) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * - COMMA reduce 211 - SEMICOLON reduce 211 - RPAREN reduce 211 + {default} reduce 25 State 380: - (210) assign_stmt ::= lvalue IMOD expr * + (272) logicExpr ::= KILLS LPAREN fArgs RPAREN * - COMMA reduce 210 - SEMICOLON reduce 210 - RPAREN reduce 210 + {default} reduce 272 State 381: - (209) assign_stmt ::= lvalue IDIV expr * + (94) fConstArg ::= NAME ASSIGN STRING * - COMMA reduce 209 - SEMICOLON reduce 209 - RPAREN reduce 209 + {default} reduce 94 State 382: - (208) assign_stmt ::= lvalue IMUL expr * + (93) fConstArg ::= NAME ASSIGN expr * - COMMA reduce 208 - SEMICOLON reduce 208 - RPAREN reduce 208 + {default} reduce 93 State 383: - (207) assign_stmt ::= lvalue ISUB expr * + (107) funcexpr ::= NAME LPAREN fArgs RPAREN * - COMMA reduce 207 - SEMICOLON reduce 207 - RPAREN reduce 207 + {default} reduce 107 State 384: - (206) assign_stmt ::= lvalue IADD expr * + (86) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * - COMMA reduce 206 - SEMICOLON reduce 206 - RPAREN reduce 206 + {default} reduce 86 State 385: - (205) assign_stmt ::= lvalue DEC * + (70) typedNameList ::= typedNameList_nonEmpty * - COMMA reduce 205 - SEMICOLON reduce 205 - RPAREN reduce 205 + {default} reduce 70 State 386: - (203) assign_stmt ::= lvalue INC * + (68) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * - COMMA reduce 203 - SEMICOLON reduce 203 - RPAREN reduce 203 + {default} reduce 68 State 387: - (200) assign_stmt ::= lvalue ASSIGN expr * + (87) constExpr ::= lambdaExprStart stmt * - COMMA reduce 200 - SEMICOLON reduce 200 - RPAREN reduce 200 + {default} reduce 87 State 388: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (188) vdef_stmt ::= VAR nameList_nonEmpty * - vdefAssign_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty + (230) if_stmt ::= if_block else_header stmt * - ASSIGN shift 40 - COMMA shift 496 - COMMA reduce 188 -- dropped by precedence - SEMICOLON reduce 188 + {default} reduce 230 State 389: - nonConstExpr ::= LPAREN logicExpr * RPAREN - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr + (237) case_chunks ::= case_chunk * - LOR shift 82 - LAND shift 84 - RPAREN shift 227 + {default} reduce 237 State 390: - (66) typedName ::= NAME COLON expr * + (241) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * - COMMA reduce 66 - SEMICOLON reduce 66 - RPAREN reduce 66 + {default} reduce 241 State 391: - (16) relimp_path ::= relimp_path PERIOD NAME * + (238) default_clause ::= DEFAULT COLON * - PERIOD reduce 16 - SEMICOLON reduce 16 - AS reduce 16 + {default} reduce 238 State 392: - relimp_path ::= relimp_path * PERIOD NAME - relimp_chunk ::= relimp_path * SEMICOLON - relimp_chunk ::= relimp_path * AS NAME SEMICOLON + (236) case_chunks ::= case_chunks case_chunk * - PERIOD shift 552 - SEMICOLON shift 348 - AS shift 551 + {default} reduce 236 State 393: - (15) relimp_path ::= relimp_start NAME * + (277) constActionList ::= constActionList constAction * - PERIOD reduce 15 - SEMICOLON reduce 15 - AS reduce 15 + {default} reduce 277 State 394: - (20) dottedName ::= dottedName PERIOD NAME * + (278) actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * - PERIOD reduce 20 - SEMICOLON reduce 20 - AS reduce 20 + {default} reduce 278 State 395: - dottedName ::= dottedName * PERIOD NAME - import_chunk ::= IMPORT dottedName * AS NAME - (22) import_chunk ::= IMPORT dottedName * + (276) constActionList ::= constAction * - PERIOD shift 555 - SEMICOLON reduce 22 - AS shift 554 + {default} reduce 276 State 396: - (19) dottedName ::= NAME * + (275) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * - PERIOD reduce 19 - SEMICOLON reduce 19 - AS reduce 19 + {default} reduce 275 State 397: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (193) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + (273) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * - COMMA shift 80 - SEMICOLON reduce 193 + {default} reduce 273 State 398: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - cdef_global_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty + (274) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * - ASSIGN shift 33 - COMMA shift 496 + {default} reduce 274 State 399: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (191) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (270) return_stmt ::= RETURN exprList * - COMMA shift 80 - SEMICOLON reduce 191 + {default} reduce 270 State 400: - (94) fConstArg ::= NAME ASSIGN STRING * + (269) break_stmt ::= BREAK * - COMMA reduce 94 - RPAREN reduce 94 + {default} reduce 269 State 401: - (93) fConstArg ::= NAME ASSIGN expr * + (268) continue_stmt ::= CONTINUE * - COMMA reduce 93 - RPAREN reduce 93 + {default} reduce 268 State 402: - (68) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * + (267) foreach_stmt ::= foreach_header RPAREN stmt * - SEMICOLON reduce 68 - RPAREN reduce 68 + {default} reduce 267 State 403: - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON + (265) foreach_opener ::= FOREACH LPAREN * - COMMA shift 31 - RPAREN shift 459 + {default} reduce 265 State 404: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON + (264) for_stmt ::= for_header RPAREN stmt * - COMMA shift 32 - RPAREN shift 463 + {default} reduce 264 State 405: - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - (103) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * - actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON + (263) for_header ::= for_header2 for_action_stmt * - COMMA shift 31 - RPAREN shift 462 - RPAREN reduce 103 -- dropped by precedence + {default} reduce 263 State 406: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - (102) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty + (258) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * - COMMA shift 32 - RPAREN shift 463 - RPAREN reduce 102 -- dropped by precedence + {default} reduce 258 State 407: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (78) exprList ::= exprList_nonEmpty * + (257) for_action_stmt_nonEmpty ::= assign_stmt * - COMMA shift 80 - SEMICOLON reduce 78 + {default} reduce 257 State 408: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (266) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * + (256) for_action_stmt_nonEmpty ::= funcexprStmt * - COMMA shift 80 - RPAREN reduce 266 + {default} reduce 256 State 409: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - foreach_header ::= foreach_opener nameList_nonEmpty * COLON exprList_nonEmpty + (262) for_header2 ::= for_header1 expr SEMICOLON * - COMMA shift 496 - COLON shift 35 + {default} reduce 262 State 410: - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (258) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * + (261) for_header1 ::= for_opener for_init_stmt SEMICOLON * - COMMA shift 29 -- dropped by precedence - COMMA reduce 258 - RPAREN reduce 258 + {default} reduce 261 State 411: - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (260) for_action_stmt ::= for_action_stmt_nonEmpty * + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty + (253) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * - COMMA shift 29 - RPAREN reduce 260 + {default} reduce 253 State 412: - (257) for_action_stmt_nonEmpty ::= assign_stmt * + (252) for_init_stmt_nonEmpty ::= assign_stmt * - COMMA reduce 257 - RPAREN reduce 257 + {default} reduce 252 State 413: - (256) for_action_stmt_nonEmpty ::= funcexprStmt * + (251) for_init_stmt_nonEmpty ::= cdef_stmt * - COMMA reduce 256 - RPAREN reduce 256 + {default} reduce 251 State 414: - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (253) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * + (250) for_init_stmt_nonEmpty ::= vdefAssign_stmt * - COMMA shift 26 -- dropped by precedence - COMMA reduce 253 - SEMICOLON reduce 253 + {default} reduce 250 State 415: - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (254) for_init_stmt ::= for_init_stmt_nonEmpty * + (249) for_init_stmt_nonEmpty ::= vdef_stmt * - COMMA shift 26 - SEMICOLON reduce 254 + {default} reduce 249 State 416: - (252) for_init_stmt_nonEmpty ::= assign_stmt * + (248) for_opener ::= FOR LPAREN * - COMMA reduce 252 - SEMICOLON reduce 252 + {default} reduce 248 State 417: - (251) for_init_stmt_nonEmpty ::= cdef_stmt * + (247) while_stmt ::= while_header RPAREN stmt * - COMMA reduce 251 - SEMICOLON reduce 251 + {default} reduce 247 State 418: - (250) for_init_stmt_nonEmpty ::= vdefAssign_stmt * + (246) while_header ::= while_start LPAREN expr * - COMMA reduce 250 - SEMICOLON reduce 250 + {default} reduce 246 State 419: - (249) for_init_stmt_nonEmpty ::= vdef_stmt * + (245) while_start ::= WHILE * - COMMA reduce 249 - SEMICOLON reduce 249 + {default} reduce 245 State 420: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - case_clause ::= case_start exprList_nonEmpty * COLON + (244) switchcase_stmt ::= switchcase_block RBRACKET * - COMMA shift 80 - COLON shift 315 + {default} reduce 244 State 421: - (199) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * + (60) bodyStmtList ::= bodyStmt * - ASSIGN reduce 199 - COMMA reduce 199 + {default} reduce 60 State 422: - lvalueList_nonEmpty ::= lvalueList_nonEmpty * COMMA lvalue - assign_stmt ::= lvalueList_nonEmpty * ASSIGN exprList_nonEmpty + (233) case_clause ::= case_start exprList_nonEmpty COLON * - ASSIGN shift 37 - COMMA shift 87 + {default} reduce 233 State 423: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (192) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + (232) case_start ::= CASE * - COMMA shift 80 - COMMA reduce 192 -- dropped by precedence - SEMICOLON reduce 192 + {default} reduce 232 State 424: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - cdef_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty + (231) switchcase_header ::= SWITCHCASE LPAREN expr * - ASSIGN shift 38 - COMMA shift 496 + {default} reduce 231 State 425: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (190) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (227) if_block ::= if_block elif_header RPAREN stmt * - COMMA shift 80 - SEMICOLON reduce 190 + {default} reduce 227 State 426: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty + (226) elif_header ::= elif_start LPAREN expr * - ASSIGN shift 39 - COMMA shift 496 + {default} reduce 226 State 427: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (189) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (225) elif_start ::= ELSE IF * - COMMA shift 80 - COMMA reduce 189 -- dropped by precedence - SEMICOLON reduce 189 + {default} reduce 225 State 428: - (101) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * + (224) if_block ::= if_header RPAREN stmt * - COMMA reduce 101 - RPAREN reduce 101 + {default} reduce 224 State 429: - (96) fArg ::= fNonConstArg * + (223) if_header ::= if_start LPAREN expr * - COMMA reduce 96 - RPAREN reduce 96 + {default} reduce 223 State 430: - (95) fArg ::= fConstArg * + (222) if_start ::= IF * - COMMA reduce 95 - RPAREN reduce 95 + {default} reduce 222 State 431: - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - (103) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * + (221) once_stmt ::= once_block * - COMMA shift 31 - RPAREN reduce 103 + {default} reduce 221 State 432: - (99) fNonConstArgs_nonEmpty ::= fNonConstArg * + (220) once_block ::= once_nocond stmt * - COMMA reduce 99 - RPAREN reduce 99 + {default} reduce 220 State 433: - (100) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * + (218) once_block ::= once_header RPAREN stmt * - COMMA reduce 100 - RPAREN reduce 100 + {default} reduce 218 State 434: - (98) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * + (217) once_header ::= once_start LPAREN expr * - COMMA reduce 98 - RPAREN reduce 98 + {default} reduce 217 State 435: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - (102) fArgs_nonEmpty ::= fConstArgs_nonEmpty * + (216) once_start ::= ONCE * - COMMA shift 32 - RPAREN reduce 102 + {default} reduce 216 State 436: - (97) fConstArgs_nonEmpty ::= fConstArg * + (204) assign_stmt ::= DEC lvalue * - COMMA reduce 97 - RPAREN reduce 97 + {default} reduce 204 State 437: - (92) fConstArg ::= STRING * + (202) assign_stmt ::= INC lvalue * - COMMA reduce 92 - RPAREN reduce 92 + {default} reduce 202 State 438: - (64) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * + (199) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * - COMMA reduce 64 - RSQBRACKET reduce 64 + {default} reduce 199 State 439: - numList_nonEmpty ::= numList_nonEmpty * COMMA NUMBER - exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty * RSQBRACKET RSQBRACKET + (215) assign_stmt ::= lvalue IBXR expr * - COMMA shift 527 - RSQBRACKET shift 526 + {default} reduce 215 State 440: - (63) numList_nonEmpty ::= NUMBER * - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET + (214) assign_stmt ::= lvalue IBOR expr * - COMMA reduce 63 - RSQBRACKET shift 543 - RSQBRACKET reduce 63 -- dropped by precedence + {default} reduce 214 State 441: - nonConstExpr ::= nonConstExpr PERIOD * NAME - nonConstExpr ::= nonConstExpr PERIOD * TRGCONST - lvalue ::= nonConstExpr PERIOD * NAME - lvalue ::= nonConstExpr PERIOD * TRGCONST + (213) assign_stmt ::= lvalue IBND expr * - NAME shift 329 - TRGCONST shift 328 + {default} reduce 213 State 442: - nonConstExpr ::= nonConstExpr PERIOD * NAME - nonConstExpr ::= nonConstExpr PERIOD * TRGCONST + (212) assign_stmt ::= lvalue IRSH expr * - NAME shift 303 - TRGCONST shift 302 + {default} reduce 212 State 443: - (14) relimp_start ::= relimp_start PERIOD * + (211) assign_stmt ::= lvalue ILSH expr * - PERIOD reduce 14 - NAME reduce 14 + {default} reduce 211 State 444: - relimp_start ::= relimp_start * PERIOD - relimp_path ::= relimp_start * NAME + (210) assign_stmt ::= lvalue IMOD expr * - PERIOD shift 443 - NAME shift 393 + {default} reduce 210 State 445: - (13) relimp_start ::= IMPORT PERIOD * + (209) assign_stmt ::= lvalue IDIV expr * - PERIOD reduce 13 - NAME reduce 13 + {default} reduce 209 State 446: - object_chunk ::= object_body RBRACKET * SEMICOLON + (208) assign_stmt ::= lvalue IMUL expr * - SEMICOLON shift 344 + {default} reduce 208 State 447: - method_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes + (207) assign_stmt ::= lvalue ISUB expr * - RPAREN shift 143 + {default} reduce 207 State 448: - method_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes + (206) assign_stmt ::= lvalue IADD expr * - LPAREN shift 116 + {default} reduce 206 State 449: - method_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes + (205) assign_stmt ::= lvalue DEC * - NAME shift 448 + {default} reduce 205 State 450: - object_body ::= object_body VAR typedNameList_nonEmpty * SEMICOLON + (203) assign_stmt ::= lvalue INC * - SEMICOLON shift 367 + {default} reduce 203 State 451: - object_body ::= OBJECT NAME * LBRACKET + (200) assign_stmt ::= lvalue ASSIGN expr * - LBRACKET shift 368 + {default} reduce 200 State 452: - object_body ::= OBJECT * NAME LBRACKET + (72) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * - NAME shift 451 + {default} reduce 72 State 453: - logicExpr ::= KILLS LPAREN fArgs * RPAREN + (71) nameList_nonEmpty ::= NAME * - RPAREN shift 215 + {default} reduce 71 State 454: - funcexpr ::= NAME LPAREN fArgs * RPAREN + (108) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * - RPAREN shift 216 + {default} reduce 108 State 455: - lambdaExprStart ::= FUNCTION LPAREN typedNameList * RPAREN fdef_rettypes + logicExpr ::= logicExpr * LAND logicExpr + (185) logicExpr ::= logicExpr LAND logicExpr * + logicExpr ::= logicExpr * LOR logicExpr - RPAREN shift 144 + {default} reduce 185 State 456: - (70) typedNameList ::= typedNameList_nonEmpty * + (111) nonConstExpr ::= LPAREN logicExpr RPAREN * - RPAREN reduce 70 + {default} reduce 111 State 457: - (241) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * + (123) nonConstExpr ::= nonConstExpr QMARK expr COLON expr * - RBRACKET reduce 241 + {default} reduce 123 State 458: - default_clause ::= DEFAULT * COLON + (114) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * - COLON shift 318 + {default} reduce 114 State 459: - actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (154) constExpr ::= PLUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - SEMICOLON shift 160 + {default} reduce 154 State 460: - constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON - actionStmt ::= constActionList ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (156) constExpr ::= MINUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - LPAREN shift 28 + {default} reduce 156 State 461: - constAction ::= ACTIONNAME LPAREN RPAREN * SEMICOLON + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (158) constExpr ::= BITNOT constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - SEMICOLON shift 162 + {default} reduce 158 State 462: - actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr + (187) logicExpr ::= LNOT logicExpr * - SEMICOLON shift 163 + {default} reduce 187 State 463: - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN * SEMICOLON + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + (130) constExpr ::= constExpr MULTIPLY constExpr * + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - SEMICOLON shift 164 + {default} reduce 130 State 464: - actionStmt ::= ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON - constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN + (271) logicExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * - LPAREN shift 20 + {default} reduce 271 State 465: - (270) return_stmt ::= RETURN exprList * + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (158) constExpr ::= BITNOT constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - SEMICOLON reduce 270 + {default} reduce 158 State 466: - (269) break_stmt ::= BREAK * + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (156) constExpr ::= MINUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - SEMICOLON reduce 269 + {default} reduce 156 State 467: - (268) continue_stmt ::= CONTINUE * + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + (154) constExpr ::= PLUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - SEMICOLON reduce 268 + {default} reduce 154 State 468: - foreach_stmt ::= foreach_header * RPAREN stmt + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + (136) constExpr ::= constExpr MOD constExpr * + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - RPAREN shift 5 + {default} reduce 136 State 469: - (265) foreach_opener ::= FOREACH LPAREN * + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + (133) constExpr ::= constExpr DIVIDE constExpr * + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - NAME reduce 265 + {default} reduce 133 State 470: - foreach_opener ::= FOREACH * LPAREN + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + (130) constExpr ::= constExpr MULTIPLY constExpr * + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - LPAREN shift 469 + {default} reduce 130 State 471: - for_stmt ::= for_header * RPAREN stmt + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + (136) constExpr ::= constExpr MOD constExpr * + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - RPAREN shift 6 + {default} reduce 136 State 472: - (263) for_header ::= for_header2 for_action_stmt * + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + (133) constExpr ::= constExpr DIVIDE constExpr * + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - RPAREN reduce 263 + {default} reduce 133 State 473: - for_header2 ::= for_header1 expr * SEMICOLON + (153) nonConstExpr ::= nonConstExpr BITXOR expr * - SEMICOLON shift 333 + {default} reduce 153 State 474: - for_header1 ::= for_opener for_init_stmt * SEMICOLON + (150) nonConstExpr ::= nonConstExpr BITOR expr * - SEMICOLON shift 334 + {default} reduce 150 State 475: - for_opener ::= FOR * LPAREN + (147) nonConstExpr ::= nonConstExpr BITAND expr * - LPAREN shift 332 + {default} reduce 147 State 476: - while_stmt ::= while_header * RPAREN stmt + (144) nonConstExpr ::= nonConstExpr RSHIFT expr * - RPAREN shift 7 + {default} reduce 144 State 477: - (246) while_header ::= while_start LPAREN expr * + (141) nonConstExpr ::= nonConstExpr LSHIFT expr * - RPAREN reduce 246 + {default} reduce 141 State 478: - while_header ::= while_start * LPAREN expr + (280) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * - LPAREN shift 48 + {default} reduce 280 State 479: - (245) while_start ::= WHILE * + (105) fArgs ::= fArgs_nonEmpty * - LPAREN reduce 245 + {default} reduce 105 State 480: - switchcase_stmt ::= switchcase_block * RBRACKET + (101) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * - RBRACKET shift 168 + {default} reduce 101 State 481: - switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks default_chunk - switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks - switchcase_block ::= switchcase_header RPAREN * LBRACKET + (96) fArg ::= fNonConstArg * - LBRACKET shift 114 + {default} reduce 96 State 482: - switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks default_chunk - switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks - switchcase_block ::= switchcase_header * RPAREN LBRACKET + (95) fArg ::= fConstArg * - RPAREN shift 481 + {default} reduce 95 State 483: - (231) switchcase_header ::= SWITCHCASE LPAREN expr * + (99) fNonConstArgs_nonEmpty ::= fNonConstArg * - RPAREN reduce 231 + {default} reduce 99 State 484: - switchcase_header ::= SWITCHCASE * LPAREN expr + (100) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * - LPAREN shift 49 + {default} reduce 100 State 485: - if_block ::= if_block elif_header * RPAREN stmt + (98) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * - RPAREN shift 8 + {default} reduce 98 State 486: - (226) elif_header ::= elif_start LPAREN expr * + (97) fConstArgs_nonEmpty ::= fConstArg * - RPAREN reduce 226 + {default} reduce 97 State 487: - elif_header ::= elif_start * LPAREN expr + (92) fConstArg ::= STRING * - LPAREN shift 50 + {default} reduce 92 State 488: - (225) elif_start ::= ELSE IF * + (138) nonConstExpr ::= nonConstExpr MOD expr * - LPAREN reduce 225 + {default} reduce 138 State 489: - if_block ::= if_header * RPAREN stmt + (135) nonConstExpr ::= nonConstExpr DIVIDE expr * - RPAREN shift 9 + {default} reduce 135 State 490: - (223) if_header ::= if_start LPAREN expr * + (132) nonConstExpr ::= nonConstExpr MULTIPLY expr * - RPAREN reduce 223 + {default} reduce 132 State 491: - if_header ::= if_start * LPAREN expr + (129) nonConstExpr ::= nonConstExpr MINUS expr * - LPAREN shift 51 + {default} reduce 129 State 492: - (222) if_start ::= IF * + (126) nonConstExpr ::= nonConstExpr PLUS expr * - LPAREN reduce 222 + {default} reduce 126 State 493: - once_block ::= once_header * RPAREN stmt + (122) logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * - RPAREN shift 11 + {default} reduce 122 State 494: - (217) once_header ::= once_start LPAREN expr * + (121) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * - RPAREN reduce 217 + {default} reduce 121 State 495: - vdefAssignStatic_stmt ::= STATIC * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + (120) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * - VAR shift 154 + {default} reduce 120 State 496: - nameList_nonEmpty ::= nameList_nonEmpty COMMA * NAME + (119) constExpr ::= LOCATION LPAREN STRING RPAREN * - NAME shift 360 + {default} reduce 119 State 497: - funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN + (118) constExpr ::= SWITCH LPAREN STRING RPAREN * - RPAREN shift 225 + {default} reduce 118 State 498: - nonConstExpr ::= nonConstExpr QMARK expr * COLON expr + (117) constExpr ::= UNIT LPAREN STRING RPAREN * - COLON shift 64 + {default} reduce 117 State 499: - constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET + (116) constExpr ::= MAPSTRING LPAREN STRING RPAREN * - RSQBRACKET shift 231 + {default} reduce 116 State 500: - logicExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN + (115) nonConstExpr ::= L2V LPAREN expr RPAREN * - RPAREN shift 237 + {default} reduce 115 State 501: - constExpr ::= ACTIONNAME LPAREN fArgs * RPAREN + (75) exprList_nonEmpty ::= expr * - RPAREN shift 275 + {default} reduce 75 State 502: - (105) fArgs ::= fArgs_nonEmpty * + (73) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * - RPAREN reduce 105 + {default} reduce 73 State 503: - constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN + (64) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * - LPAREN shift 21 + {default} reduce 64 State 504: - logicExpr ::= CONDITIONNAME * LPAREN fArgs RPAREN + (110) constExpr ::= LPAREN constExpr RPAREN * - LPAREN shift 22 + {default} reduce 110 State 505: - logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN + (80) constExpr ::= KILLS * - RPAREN shift 286 + {default} reduce 80 State 506: - logicExpr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN + (62) bodyStmtList ::= bodyStmtList error * - LPAREN shift 41 + {default} reduce 62 State 507: - constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN + (61) bodyStmtList ::= bodyStmtList bodyStmt * - RPAREN shift 287 + {default} reduce 61 State 508: - constExpr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN + (59) bodyStmt ::= return_stmt SEMICOLON * - LPAREN shift 42 + {default} reduce 59 State 509: - constExpr ::= STATTXTTBL LPAREN STRING * RPAREN + (58) bodyStmt ::= break_stmt SEMICOLON * - RPAREN shift 288 + {default} reduce 58 State 510: - constExpr ::= STATTXTTBL LPAREN * STRING RPAREN + (57) bodyStmt ::= continue_stmt SEMICOLON * - STRING shift 509 + {default} reduce 57 State 511: - constExpr ::= STATTXTTBL * LPAREN STRING RPAREN + (56) bodyStmt ::= switchcase_stmt * - LPAREN shift 510 + {default} reduce 56 State 512: - constExpr ::= LOCATION LPAREN STRING * RPAREN + (55) bodyStmt ::= foreach_stmt * - RPAREN shift 289 + {default} reduce 55 State 513: - constExpr ::= LOCATION LPAREN * STRING RPAREN + (54) bodyStmt ::= for_stmt * - STRING shift 512 + {default} reduce 54 State 514: - constExpr ::= LOCATION * LPAREN STRING RPAREN + (53) bodyStmt ::= while_stmt * - LPAREN shift 513 + {default} reduce 53 State 515: - constExpr ::= SWITCH LPAREN STRING * RPAREN + (52) bodyStmt ::= if_stmt * - RPAREN shift 290 + {default} reduce 52 State 516: - constExpr ::= SWITCH LPAREN * STRING RPAREN + (51) bodyStmt ::= once_stmt * - STRING shift 515 + {default} reduce 51 State 517: - constExpr ::= SWITCH * LPAREN STRING RPAREN + (50) bodyStmt ::= actionStmt * - LPAREN shift 516 + {default} reduce 50 State 518: - constExpr ::= UNIT LPAREN STRING * RPAREN + (49) bodyStmt ::= funcexprStmt SEMICOLON * - RPAREN shift 291 + {default} reduce 49 State 519: - constExpr ::= UNIT LPAREN * STRING RPAREN + (48) bodyStmt ::= assign_stmt SEMICOLON * - STRING shift 518 + {default} reduce 48 State 520: - constExpr ::= UNIT * LPAREN STRING RPAREN + (47) bodyStmt ::= cdef_stmt SEMICOLON * - LPAREN shift 519 + {default} reduce 47 State 521: - constExpr ::= MAPSTRING LPAREN STRING * RPAREN + (46) bodyStmt ::= vdefAssign_stmt SEMICOLON * - RPAREN shift 292 + {default} reduce 46 State 522: - constExpr ::= MAPSTRING LPAREN * STRING RPAREN + (45) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * - STRING shift 521 + {default} reduce 45 State 523: - constExpr ::= MAPSTRING * LPAREN STRING RPAREN + (44) bodyStmt ::= vdef_stmt SEMICOLON * - LPAREN shift 522 + {default} reduce 44 State 524: - nonConstExpr ::= L2V LPAREN expr * RPAREN + (43) bodyStmt ::= SEMICOLON * - RPAREN shift 293 + {default} reduce 43 State 525: - nonConstExpr ::= L2V * LPAREN expr RPAREN + (42) bodyStmt ::= blockStmt * - LPAREN shift 75 + {default} reduce 42 State 526: - exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET + (39) blockStmt ::= lbracket error RBRACKET * - RSQBRACKET shift 312 + {default} reduce 39 State 527: - numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER + (38) blockStmt ::= blockStmtSub rbracket * - NUMBER shift 438 + {default} reduce 38 State 528: - exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (37) rbracket ::= RBRACKET * - LSQBRACKET shift 156 + {default} reduce 37 State 529: - nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - lvalue ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + (36) lbracket ::= LBRACKET * - RSQBRACKET shift 327 + {default} reduce 36 State 530: - bodyStmt ::= return_stmt * SEMICOLON + (35) stmt ::= bodyStmt * - SEMICOLON shift 174 + {default} reduce 35 State 531: - bodyStmt ::= break_stmt * SEMICOLON + (34) stmt ::= error SEMICOLON * - SEMICOLON shift 175 + {default} reduce 34 State 532: - bodyStmt ::= continue_stmt * SEMICOLON + (66) typedName ::= NAME COLON expr * - SEMICOLON shift 176 + {default} reduce 66 State 533: - bodyStmt ::= funcexprStmt * SEMICOLON + (85) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * - SEMICOLON shift 184 + {default} reduce 85 State 534: - bodyStmt ::= assign_stmt * SEMICOLON + (84) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * - SEMICOLON shift 185 + {default} reduce 84 State 535: - bodyStmt ::= cdef_stmt * SEMICOLON + (83) nonConstExpr ::= nonConstExpr PERIOD NAME * - SEMICOLON shift 186 + {default} reduce 83 State 536: - bodyStmt ::= vdefAssign_stmt * SEMICOLON + (81) constExpr ::= TRGCONST * - SEMICOLON shift 187 + {default} reduce 81 State 537: - bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON + (79) constExpr ::= NUMBER * - SEMICOLON shift 188 + {default} reduce 79 State 538: - bodyStmt ::= vdef_stmt * SEMICOLON + (76) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * - SEMICOLON shift 189 + {default} reduce 76 State 539: - blockStmt ::= lbracket error * RBRACKET + (74) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * - RBRACKET shift 192 + {default} reduce 74 State 540: - stmt ::= error * SEMICOLON + (18) relimp_chunk ::= relimp_path AS NAME SEMICOLON * - SEMICOLON shift 196 + {default} reduce 18 State 541: - lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes + (17) relimp_chunk ::= relimp_path SEMICOLON * - LPAREN shift 117 + {default} reduce 17 State 542: - nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + (16) relimp_path ::= relimp_path PERIOD NAME * - RSQBRACKET shift 301 + {default} reduce 16 State 543: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET + (15) relimp_path ::= relimp_start NAME * - RSQBRACKET shift 309 + {default} reduce 15 State 544: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET + (14) relimp_start ::= relimp_start PERIOD * - RSQBRACKET shift 543 + {default} reduce 14 State 545: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET + (21) import_chunk ::= IMPORT dottedName AS NAME * - NUMBER shift 544 + {default} reduce 21 State 546: - nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (20) dottedName ::= dottedName PERIOD NAME * - LSQBRACKET shift 545 + {default} reduce 20 State 547: - fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON + (19) dottedName ::= NAME * - RPAREN shift 145 + {default} reduce 19 State 548: - fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON + (13) relimp_start ::= IMPORT PERIOD * - LPAREN shift 118 + {default} reduce 13 State 549: - fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON + (12) chunk ::= blockStmt * - NAME shift 548 + {default} reduce 12 State 550: - relimp_chunk ::= relimp_path AS NAME * SEMICOLON + (11) chunk ::= cdef_global_stmt SEMICOLON * - SEMICOLON shift 347 + {default} reduce 11 State 551: - relimp_chunk ::= relimp_path AS * NAME SEMICOLON + (10) chunk ::= vdefAssign_global_stmt SEMICOLON * - NAME shift 550 + {default} reduce 10 State 552: - relimp_path ::= relimp_path PERIOD * NAME + (9) chunk ::= vdef_stmt SEMICOLON * - NAME shift 391 + {default} reduce 9 State 553: - (21) import_chunk ::= IMPORT dottedName AS NAME * + (8) chunk ::= object_chunk * - SEMICOLON reduce 21 + {default} reduce 8 State 554: - import_chunk ::= IMPORT dottedName AS * NAME + (7) chunk ::= fdecl_chunk * - NAME shift 553 + {default} reduce 7 State 555: - dottedName ::= dottedName PERIOD * NAME + (6) chunk ::= fdef_chunk * - NAME shift 394 + {default} reduce 6 State 556: - chunk ::= cdef_global_stmt * SEMICOLON + (5) chunk ::= import_chunk SEMICOLON * - SEMICOLON shift 350 + {default} reduce 5 State 557: - chunk ::= vdefAssign_global_stmt * SEMICOLON + (4) chunk ::= relimp_chunk * - SEMICOLON shift 351 + {default} reduce 4 State 558: - chunk ::= vdef_stmt * SEMICOLON + (3) chunks ::= chunks error * - SEMICOLON shift 352 + {default} reduce 3 State 559: - chunk ::= import_chunk * SEMICOLON + (2) chunks ::= chunks chunk * - SEMICOLON shift 356 + {default} reduce 2 ---------------------------------------------------- Symbols: diff --git a/eudplib/epscript/cpp/parser/reservedWords/constparser.cpp b/eudplib/epscript/cpp/parser/reservedWords/constparser.cpp index 5b7ffc61..b9f300a6 100644 --- a/eudplib/epscript/cpp/parser/reservedWords/constparser.cpp +++ b/eudplib/epscript/cpp/parser/reservedWords/constparser.cpp @@ -65,6 +65,8 @@ void initConstmap() { constMap.insert(std::make_pair("Force4", 21)); constMap.insert(std::make_pair("NonAlliedVictoryPlayers", 26)); + constMap.insert(std::make_pair("All", 0)); + // PropStateDict constMap.insert(std::make_pair("Enable", 4)); constMap.insert(std::make_pair("Disable", 5)); From 73938cb242b88707bd1ec10a822ccbad40b7a8d2 Mon Sep 17 00:00:00 2001 From: armoha Date: Sat, 11 Sep 2021 23:53:20 +0900 Subject: [PATCH 4/5] import rework --- eudplib/epscript/cpp/parser/epparser.lemon | 15 +- eudplib/epscript/cpp/parser/epparser.out | 22593 ++++++++++++++----- 2 files changed, 16457 insertions(+), 6151 deletions(-) diff --git a/eudplib/epscript/cpp/parser/epparser.lemon b/eudplib/epscript/cpp/parser/epparser.lemon index 7cef1e17..7905ad5f 100644 --- a/eudplib/epscript/cpp/parser/epparser.lemon +++ b/eudplib/epscript/cpp/parser/epparser.lemon @@ -76,8 +76,7 @@ chunks ::= chunks error. { throw_error(13494, "Chunk-level error"); } -chunk ::= relimp_chunk. -chunk ::= import_chunk SEMICOLON. +chunk ::= import_chunk. chunk ::= fdef_chunk. chunk ::= fdecl_chunk. chunk ::= object_chunk. @@ -107,7 +106,7 @@ relimp_path(A) ::= relimp_path(B) PERIOD NAME(C). { delete B; A = C; } -relimp_chunk ::= relimp_path(A) SEMICOLON. { +import_chunk ::= relimp_path(A) SEMICOLON. { std::string impPath, impModname; impPathProcess(A->data, impPath, impModname); @@ -118,7 +117,7 @@ relimp_chunk ::= relimp_path(A) SEMICOLON. { ps->gen << impModname << " = _RELIMP(\"" << impPath << "\", \"" << impModname << "\")" << std::endl; delete A; } -relimp_chunk ::= relimp_path(A) AS NAME(B) SEMICOLON. { +import_chunk ::= relimp_path(A) AS NAME(B) SEMICOLON. { std::string impPath, impModname; impPathProcess(A->data, impPath, impModname); @@ -130,14 +129,14 @@ relimp_chunk ::= relimp_path(A) AS NAME(B) SEMICOLON. { delete A; delete B; } -dottedName(A) ::= NAME(B). { A = B; } -dottedName(A) ::= dottedName(B) PERIOD NAME(C). { +absimp_start(A) ::= IMPORT NAME(B). { A = B; } +absimp_start(A) ::= absimp_start(B) PERIOD NAME(C). { C->data = B->data + "." + C->data; delete B; A = C; } -import_chunk ::= IMPORT dottedName(A) AS NAME(B). { +import_chunk ::= absimp_start(A) AS NAME(B) SEMICOLON. { std::string impPath, impModname; impPathProcess(A->data, impPath, impModname); @@ -150,7 +149,7 @@ import_chunk ::= IMPORT dottedName(A) AS NAME(B). { delete A; delete B; } -import_chunk ::= IMPORT dottedName(A). { +import_chunk ::= absimp_start(A) SEMICOLON. { std::string impPath, impModname; impPathProcess(A->data, impPath, impModname); diff --git a/eudplib/epscript/cpp/parser/epparser.out b/eudplib/epscript/cpp/parser/epparser.out index b7af8346..b1e00db4 100644 --- a/eudplib/epscript/cpp/parser/epparser.out +++ b/eudplib/epscript/cpp/parser/epparser.out @@ -4,19 +4,25 @@ State 0: chunks ::= * chunks chunk chunks ::= * chunks error + $ reduce 1 + IMPORT reduce 1 + FUNCTION reduce 1 + OBJECT reduce 1 + LBRACKET reduce 1 + VAR reduce 1 + CONST reduce 1 program accept chunks shift 18 - {default} reduce 1 State 1: - method_chunk ::= method_header * stmt - stmt ::= * error SEMICOLON - stmt ::= * bodyStmt lbracket ::= * LBRACKET blockStmt ::= * blockStmtSub rbracket blockStmt ::= * lbracket error RBRACKET + blockStmt ::= lbracket * error RBRACKET blockStmtSub ::= * lbracket + (39) blockStmtSub ::= lbracket * blockStmtSub ::= * lbracket bodyStmtList + blockStmtSub ::= lbracket * bodyStmtList bodyStmt ::= * blockStmt bodyStmt ::= * SEMICOLON bodyStmt ::= * vdef_stmt SEMICOLON @@ -35,6 +41,9 @@ State 1: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON + bodyStmtList ::= * bodyStmt + bodyStmtList ::= * bodyStmtList bodyStmt + bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -173,85 +182,86 @@ State 1: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + RBRACKET reduce 39 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 373 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 540 + vdef_stmt shift 539 + blockStmt shift 190 + bodyStmt shift 313 + lbracket shift 1 + blockStmtSub shift 156 + bodyStmtList shift 17 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 2: - fdef_chunk ::= fdef_header * stmt + method_chunk ::= method_header * stmt stmt ::= * error SEMICOLON stmt ::= * bodyStmt lbracket ::= * LBRACKET @@ -415,84 +425,85 @@ State 2: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 377 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 366 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 3: + fdef_chunk ::= fdef_header * stmt stmt ::= * error SEMICOLON stmt ::= * bodyStmt lbracket ::= * LBRACKET @@ -623,7 +634,6 @@ State 3: if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt - if_stmt ::= if_block else_header * stmt switchcase_header ::= * SWITCHCASE LPAREN expr switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -657,82 +667,82 @@ State 3: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 388 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 344 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 4: stmt ::= * error SEMICOLON @@ -865,6 +875,7 @@ State 4: if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt + if_stmt ::= if_block else_header * stmt switchcase_header ::= * SWITCHCASE LPAREN expr switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -881,7 +892,6 @@ State 4: foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt - foreach_stmt ::= foreach_header RPAREN * stmt continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList @@ -899,82 +909,82 @@ State 4: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 402 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 157 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 5: stmt ::= * error SEMICOLON @@ -1120,10 +1130,10 @@ State 5: for_header2 ::= * for_header1 expr SEMICOLON for_header ::= * for_header2 for_action_stmt for_stmt ::= * for_header RPAREN stmt - for_stmt ::= for_header RPAREN * stmt foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt + foreach_stmt ::= foreach_header RPAREN * stmt continue_stmt ::= * CONTINUE break_stmt ::= * BREAK return_stmt ::= * RETURN exprList @@ -1141,82 +1151,82 @@ State 5: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 404 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 164 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 6: stmt ::= * error SEMICOLON @@ -1357,12 +1367,12 @@ State 6: while_start ::= * WHILE while_header ::= * while_start LPAREN expr while_stmt ::= * while_header RPAREN stmt - while_stmt ::= while_header RPAREN * stmt for_opener ::= * FOR LPAREN for_header1 ::= * for_opener for_init_stmt SEMICOLON for_header2 ::= * for_header1 expr SEMICOLON for_header ::= * for_header2 for_action_stmt for_stmt ::= * for_header RPAREN stmt + for_stmt ::= for_header RPAREN * stmt foreach_opener ::= * FOREACH LPAREN foreach_header ::= * foreach_opener nameList_nonEmpty COLON exprList_nonEmpty foreach_stmt ::= * foreach_header RPAREN stmt @@ -1383,82 +1393,82 @@ State 6: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 417 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 165 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 7: stmt ::= * error SEMICOLON @@ -1589,7 +1599,6 @@ State 7: if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt if_block ::= * if_block elif_header RPAREN stmt - if_block ::= if_block elif_header RPAREN * stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr @@ -1600,6 +1609,7 @@ State 7: while_start ::= * WHILE while_header ::= * while_start LPAREN expr while_stmt ::= * while_header RPAREN stmt + while_stmt ::= while_header RPAREN * stmt for_opener ::= * FOR LPAREN for_header1 ::= * for_opener for_init_stmt SEMICOLON for_header2 ::= * for_header1 expr SEMICOLON @@ -1625,82 +1635,82 @@ State 7: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 425 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 166 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 8: stmt ::= * error SEMICOLON @@ -1830,8 +1840,8 @@ State 8: if_start ::= * IF if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt - if_block ::= if_header RPAREN * stmt if_block ::= * if_block elif_header RPAREN stmt + if_block ::= if_block elif_header RPAREN * stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr @@ -1867,82 +1877,82 @@ State 8: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 428 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 168 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 9: stmt ::= * error SEMICOLON @@ -2068,11 +2078,11 @@ State 9: once_block ::= * once_header RPAREN stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt - once_block ::= once_nocond * stmt once_stmt ::= * once_block if_start ::= * IF if_header ::= * if_start LPAREN expr if_block ::= * if_header RPAREN stmt + if_block ::= if_header RPAREN * stmt if_block ::= * if_block elif_header RPAREN stmt if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt @@ -2109,82 +2119,82 @@ State 9: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 432 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 169 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 10: stmt ::= * error SEMICOLON @@ -2308,9 +2318,9 @@ State 10: once_start ::= * ONCE once_header ::= * once_start LPAREN expr once_block ::= * once_header RPAREN stmt - once_block ::= once_header RPAREN * stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt + once_block ::= once_nocond * stmt once_stmt ::= * once_block if_start ::= * IF if_header ::= * if_start LPAREN expr @@ -2351,92 +2361,91 @@ State 10: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 433 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 171 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 11: + stmt ::= * error SEMICOLON + stmt ::= * bodyStmt lbracket ::= * LBRACKET blockStmt ::= * blockStmtSub rbracket blockStmt ::= * lbracket error RBRACKET - blockStmt ::= lbracket * error RBRACKET blockStmtSub ::= * lbracket - (40) blockStmtSub ::= lbracket * blockStmtSub ::= * lbracket bodyStmtList - blockStmtSub ::= lbracket * bodyStmtList bodyStmt ::= * blockStmt bodyStmt ::= * SEMICOLON bodyStmt ::= * vdef_stmt SEMICOLON @@ -2455,9 +2464,6 @@ State 11: bodyStmt ::= * continue_stmt SEMICOLON bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON - bodyStmtList ::= * bodyStmt - bodyStmtList ::= * bodyStmtList bodyStmt - bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -2554,6 +2560,7 @@ State 11: once_start ::= * ONCE once_header ::= * once_start LPAREN expr once_block ::= * once_header RPAREN stmt + once_block ::= once_header RPAREN * stmt once_nocond ::= * once_start once_block ::= * once_nocond stmt once_stmt ::= * once_block @@ -2596,83 +2603,82 @@ State 11: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 346 - vdef_stmt shift 345 - blockStmt shift 525 - bodyStmt shift 421 - lbracket shift 11 - blockStmtSub shift 157 - bodyStmtList shift 17 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 172 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 - {default} reduce 40 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 12: stmt ::= * error SEMICOLON @@ -2839,82 +2845,82 @@ State 12: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 347 - vdef_stmt shift 345 - blockStmt shift 525 - stmt shift 387 - bodyStmt shift 530 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 541 + vdef_stmt shift 539 + blockStmt shift 190 + stmt shift 222 + bodyStmt shift 194 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 13: lbracket ::= * LBRACKET @@ -3048,7 +3054,7 @@ State 13: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (240) default_chunk ::= default_clause bodyStmtList * + (234) case_chunk ::= case_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3081,82 +3087,84 @@ State 13: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + RBRACKET reduce 234 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 506 - vdef_stmt shift 345 - blockStmt shift 525 - bodyStmt shift 507 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + CASE reduce 234 + DEFAULT reduce 234 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 315 + vdef_stmt shift 539 + blockStmt shift 190 + bodyStmt shift 316 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 - {default} reduce 240 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 14: lbracket ::= * LBRACKET @@ -3291,8 +3299,8 @@ State 14: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (239) default_chunk ::= default_clause * - default_chunk ::= default_clause * bodyStmtList + (233) case_chunk ::= case_clause * + case_chunk ::= case_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3325,82 +3333,84 @@ State 14: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + RBRACKET reduce 233 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - vdef_stmt shift 345 - blockStmt shift 525 - bodyStmt shift 421 - lbracket shift 11 - blockStmtSub shift 157 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + CASE reduce 233 + DEFAULT reduce 233 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + vdef_stmt shift 539 + blockStmt shift 190 + bodyStmt shift 313 + lbracket shift 1 + blockStmtSub shift 156 bodyStmtList shift 13 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 - {default} reduce 239 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 15: lbracket ::= * LBRACKET @@ -3534,7 +3544,7 @@ State 15: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (235) case_chunk ::= case_clause bodyStmtList * + (239) default_chunk ::= default_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3567,82 +3577,82 @@ State 15: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + RBRACKET reduce 239 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 506 - vdef_stmt shift 345 - blockStmt shift 525 - bodyStmt shift 507 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 315 + vdef_stmt shift 539 + blockStmt shift 190 + bodyStmt shift 316 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 - {default} reduce 235 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 16: lbracket ::= * LBRACKET @@ -3777,8 +3787,8 @@ State 16: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (234) case_chunk ::= case_clause * - case_chunk ::= case_clause * bodyStmtList + (238) default_chunk ::= default_clause * + default_chunk ::= default_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3811,82 +3821,82 @@ State 16: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + RBRACKET reduce 238 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - vdef_stmt shift 345 - blockStmt shift 525 - bodyStmt shift 421 - lbracket shift 11 - blockStmtSub shift 157 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + vdef_stmt shift 539 + blockStmt shift 190 + bodyStmt shift 313 + lbracket shift 1 + blockStmtSub shift 156 bodyStmtList shift 15 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 - {default} reduce 234 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 17: lbracket ::= * LBRACKET @@ -3894,7 +3904,7 @@ State 17: blockStmt ::= * lbracket error RBRACKET blockStmtSub ::= * lbracket blockStmtSub ::= * lbracket bodyStmtList - (41) blockStmtSub ::= lbracket bodyStmtList * + (40) blockStmtSub ::= lbracket bodyStmtList * bodyStmt ::= * blockStmt bodyStmt ::= * SEMICOLON bodyStmt ::= * vdef_stmt SEMICOLON @@ -4053,89 +4063,88 @@ State 17: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - SEMICOLON shift 524 - NAME shift 187 - FUNCTION shift 349 - LBRACKET shift 529 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - STATIC shift 297 - CONST shift 150 + SEMICOLON shift 189 + NAME shift 329 + FUNCTION shift 542 + LBRACKET shift 318 + VAR shift 154 + RBRACKET reduce 40 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + STATIC shift 496 + CONST shift 152 INC shift 86 DEC shift 85 - ONCE shift 435 - IF shift 430 - SWITCHCASE shift 286 - WHILE shift 419 - FOR shift 280 - FOREACH shift 274 - CONTINUE shift 401 - BREAK shift 400 - RETURN shift 31 - ACTIONNAME shift 270 - error shift 506 - vdef_stmt shift 345 - blockStmt shift 525 - bodyStmt shift 507 - lbracket shift 11 - blockStmtSub shift 157 - vdefAssignStatic_stmt shift 344 - vdefAssign_stmt shift 343 - cdef_stmt shift 342 - assign_stmt shift 341 - funcexprStmt shift 340 - actionStmt shift 517 - once_stmt shift 516 - if_stmt shift 515 - while_stmt shift 514 - for_stmt shift 513 - foreach_stmt shift 512 - switchcase_stmt shift 511 - continue_stmt shift 339 - break_stmt shift 338 - return_stmt shift 337 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ONCE shift 325 + IF shift 493 + SWITCHCASE shift 485 + WHILE shift 480 + FOR shift 476 + FOREACH shift 471 + CONTINUE shift 468 + BREAK shift 467 + RETURN shift 30 + ACTIONNAME shift 465 + error shift 315 + vdef_stmt shift 539 + blockStmt shift 190 + bodyStmt shift 316 + lbracket shift 1 + blockStmtSub shift 156 + vdefAssignStatic_stmt shift 538 + vdefAssign_stmt shift 537 + cdef_stmt shift 536 + assign_stmt shift 535 + funcexprStmt shift 534 + actionStmt shift 182 + once_stmt shift 181 + if_stmt shift 180 + while_stmt shift 179 + for_stmt shift 178 + foreach_stmt shift 177 + switchcase_stmt shift 176 + continue_stmt shift 533 + break_stmt shift 532 + return_stmt shift 531 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - once_start shift 293 - once_header shift 292 - once_block shift 431 - once_nocond shift 9 - if_start shift 291 - if_header shift 290 - if_block shift 116 - switchcase_header shift 285 - switchcase_block shift 283 - while_start shift 282 - while_header shift 281 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + once_start shift 324 + once_header shift 494 + once_block shift 170 + once_nocond shift 10 + if_start shift 492 + if_header shift 490 + if_block shift 115 + switchcase_header shift 483 + switchcase_block shift 481 + while_start shift 479 + while_header shift 477 for_opener shift 19 - for_header1 shift 46 + for_header1 shift 47 for_header2 shift 27 - for_header shift 275 - foreach_opener shift 149 - foreach_header shift 272 - constAction shift 395 - constActionList shift 148 - {default} reduce 41 + for_header shift 472 + foreach_opener shift 151 + foreach_header shift 469 + constAction shift 160 + constActionList shift 142 State 18: (0) program ::= chunks * chunks ::= chunks * chunk chunks ::= chunks * error - chunk ::= * relimp_chunk - chunk ::= * import_chunk SEMICOLON + chunk ::= * import_chunk chunk ::= * fdef_chunk chunk ::= * fdecl_chunk chunk ::= * object_chunk @@ -4147,10 +4156,12 @@ State 18: relimp_start ::= * relimp_start PERIOD relimp_path ::= * relimp_start NAME relimp_path ::= * relimp_path PERIOD NAME - relimp_chunk ::= * relimp_path SEMICOLON - relimp_chunk ::= * relimp_path AS NAME SEMICOLON - import_chunk ::= * IMPORT dottedName AS NAME - import_chunk ::= * IMPORT dottedName + import_chunk ::= * relimp_path SEMICOLON + import_chunk ::= * relimp_path AS NAME SEMICOLON + absimp_start ::= * IMPORT NAME + absimp_start ::= * absimp_start PERIOD NAME + import_chunk ::= * absimp_start AS NAME SEMICOLON + import_chunk ::= * absimp_start SEMICOLON fdef_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes fdef_chunk ::= * fdef_header stmt fdecl_chunk ::= * FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON @@ -4168,29 +4179,29 @@ State 18: cdef_global_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty $ reduce 0 - IMPORT shift 143 - FUNCTION shift 361 - OBJECT shift 259 - LBRACKET shift 529 - VAR shift 145 - CONST shift 144 - error shift 558 - chunk shift 559 - relimp_chunk shift 557 - import_chunk shift 370 - fdef_chunk shift 555 - fdecl_chunk shift 554 - object_chunk shift 553 - vdef_stmt shift 369 - vdefAssign_global_stmt shift 368 - cdef_global_stmt shift 367 - blockStmt shift 549 - relimp_start shift 249 - relimp_path shift 230 - fdef_header shift 2 + IMPORT shift 446 + FUNCTION shift 550 + OBJECT shift 453 + LBRACKET shift 318 + VAR shift 150 + CONST shift 149 + error shift 358 + chunk shift 359 + import_chunk shift 357 + fdef_chunk shift 356 + fdecl_chunk shift 355 + object_chunk shift 354 + vdef_stmt shift 559 + vdefAssign_global_stmt shift 558 + cdef_global_stmt shift 557 + blockStmt shift 350 + relimp_start shift 444 + relimp_path shift 394 + absimp_start shift 392 + fdef_header shift 3 object_body shift 139 - lbracket shift 11 - blockStmtSub shift 157 + lbracket shift 1 + blockStmtSub shift 156 State 19: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4290,7 +4301,7 @@ State 19: for_init_stmt_nonEmpty ::= * assign_stmt for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty for_init_stmt ::= * for_init_stmt_nonEmpty - (255) for_init_stmt ::= * + (254) for_init_stmt ::= * for_header1 ::= for_opener * for_init_stmt SEMICOLON constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -4299,36 +4310,36 @@ State 19: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 187 - FUNCTION shift 349 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - CONST shift 150 + SEMICOLON reduce 254 + NAME shift 329 + FUNCTION shift 542 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + CONST shift 152 INC shift 86 DEC shift 85 - ACTIONNAME shift 308 - vdef_stmt shift 415 - vdefAssign_stmt shift 414 - cdef_stmt shift 413 - assign_stmt shift 412 - funcexpr shift 357 - nonConstExpr shift 186 - constExpr shift 167 + ACTIONNAME shift 504 + vdef_stmt shift 419 + vdefAssign_stmt shift 418 + cdef_stmt shift 417 + assign_stmt shift 416 + funcexpr shift 309 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - for_init_stmt_nonEmpty shift 279 - for_init_stmt shift 278 - {default} reduce 255 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + for_init_stmt_nonEmpty shift 415 + for_init_stmt shift 475 State 20: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4353,7 +4364,7 @@ State 20: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (104) fArgs ::= * + (103) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN @@ -4448,34 +4459,35 @@ State 20: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - RPAREN shift 267 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + NAME shift 330 + FUNCTION shift 542 + RPAREN shift 462 + RPAREN reduce 103 -- dropped by precedence + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 483 - fConstArg shift 486 - fConstArgs_nonEmpty shift 236 - fNonConstArgs_nonEmpty shift 235 - fArgs_nonEmpty shift 479 - fArgs shift 305 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 406 + fNonConstArgs_nonEmpty shift 405 + fArgs_nonEmpty shift 503 + fArgs shift 502 State 21: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4488,6 +4500,20 @@ State 21: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * logicExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (103) fArgs ::= * + fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -4501,6 +4527,7 @@ State 21: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -4539,77 +4566,72 @@ State 21: constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr constExpr ::= * constExpr EQ constExpr + logicExpr ::= * constExpr EQ nonConstExpr + logicExpr ::= * nonConstExpr EQ constExpr + logicExpr ::= * nonConstExpr EQ nonConstExpr constExpr ::= * constExpr NE constExpr + logicExpr ::= * constExpr NE nonConstExpr + logicExpr ::= * nonConstExpr NE constExpr + logicExpr ::= * nonConstExpr NE nonConstExpr constExpr ::= * constExpr LE constExpr + logicExpr ::= * constExpr LE nonConstExpr + logicExpr ::= * nonConstExpr LE constExpr + logicExpr ::= * nonConstExpr LE nonConstExpr constExpr ::= * constExpr GE constExpr + logicExpr ::= * constExpr GE nonConstExpr + logicExpr ::= * nonConstExpr GE constExpr + logicExpr ::= * nonConstExpr GE nonConstExpr constExpr ::= * constExpr LT constExpr + logicExpr ::= * constExpr LT nonConstExpr + logicExpr ::= * nonConstExpr LT constExpr + logicExpr ::= * nonConstExpr LT nonConstExpr constExpr ::= * constExpr GT constExpr - vdef_stmt ::= * VAR nameList_nonEmpty - vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_init_stmt_nonEmpty ::= * vdef_stmt - for_init_stmt_nonEmpty ::= * vdefAssign_stmt - for_init_stmt_nonEmpty ::= * cdef_stmt - for_init_stmt_nonEmpty ::= * assign_stmt - for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty + logicExpr ::= * constExpr GT nonConstExpr + logicExpr ::= * nonConstExpr GT constExpr + logicExpr ::= * nonConstExpr GT nonConstExpr + logicExpr ::= * nonConstExpr + logicExpr ::= * logicExpr LAND logicExpr + logicExpr ::= * logicExpr LOR logicExpr + logicExpr ::= * LNOT logicExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN + LNOT shift 81 PLUS shift 111 MINUS shift 110 BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 187 - FUNCTION shift 349 - VAR shift 152 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - CONST shift 150 - INC shift 86 - DEC shift 85 - ACTIONNAME shift 308 - vdef_stmt shift 415 - vdefAssign_stmt shift 414 - cdef_stmt shift 413 - assign_stmt shift 412 - funcexpr shift 357 - nonConstExpr shift 186 - constExpr shift 167 + NAME shift 330 + FUNCTION shift 542 + RPAREN reduce 103 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - for_init_stmt_nonEmpty shift 411 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 503 + fArgs shift 502 State 22: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4634,7 +4656,7 @@ State 22: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (104) fArgs ::= * + (103) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN @@ -4716,9 +4738,9 @@ State 22: logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN LNOT shift 81 PLUS shift 111 @@ -4726,34 +4748,34 @@ State 22: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + NAME shift 330 + FUNCTION shift 542 + RPAREN reduce 103 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 483 - fConstArg shift 486 - fConstArgs_nonEmpty shift 307 - fNonConstArgs_nonEmpty shift 306 - fArgs_nonEmpty shift 479 - fArgs shift 305 - {default} reduce 104 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 503 + fArgs shift 501 State 23: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4778,10 +4800,11 @@ State 23: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (104) fArgs ::= * + (103) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN @@ -4860,7 +4883,6 @@ State 23: logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -4870,34 +4892,34 @@ State 23: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + NAME shift 330 + FUNCTION shift 542 + RPAREN reduce 103 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 483 - fConstArg shift 486 - fConstArgs_nonEmpty shift 307 - fNonConstArgs_nonEmpty shift 306 - fArgs_nonEmpty shift 479 - fArgs shift 304 - {default} reduce 104 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 503 + fArgs shift 498 State 24: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -4922,11 +4944,11 @@ State 24: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (104) fArgs ::= * + (103) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= NAME LPAREN * fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN @@ -5014,34 +5036,34 @@ State 24: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + NAME shift 330 + FUNCTION shift 542 + RPAREN reduce 103 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 483 - fConstArg shift 486 - fConstArgs_nonEmpty shift 307 - fNonConstArgs_nonEmpty shift 306 - fArgs_nonEmpty shift 479 - fArgs shift 300 - {default} reduce 104 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 503 + fArgs shift 455 State 25: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5066,10 +5088,9 @@ State 25: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (104) fArgs ::= * + (103) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= NAME LPAREN * fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN @@ -5150,6 +5171,7 @@ State 25: logicExpr ::= * LNOT logicExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN + logicExpr ::= KILLS LPAREN * fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN LNOT shift 81 @@ -5158,34 +5180,34 @@ State 25: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + NAME shift 330 + FUNCTION shift 542 + RPAREN reduce 103 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 483 - fConstArg shift 486 - fConstArgs_nonEmpty shift 307 - fNonConstArgs_nonEmpty shift 306 - fArgs_nonEmpty shift 479 - fArgs shift 261 - {default} reduce 104 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 435 + fNonConstArgs_nonEmpty shift 431 + fArgs_nonEmpty shift 503 + fArgs shift 454 State 26: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5198,20 +5220,6 @@ State 26: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= * fConstArg - fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg - fArgs_nonEmpty ::= * fConstArgs_nonEmpty - fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (104) fArgs ::= * - fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -5225,7 +5233,6 @@ State 26: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr @@ -5264,72 +5271,77 @@ State 26: constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN - logicExpr ::= KILLS LPAREN * fArgs RPAREN + vdef_stmt ::= * VAR nameList_nonEmpty + vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_init_stmt_nonEmpty ::= * vdef_stmt + for_init_stmt_nonEmpty ::= * vdefAssign_stmt + for_init_stmt_nonEmpty ::= * cdef_stmt + for_init_stmt_nonEmpty ::= * assign_stmt + for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 PLUS shift 111 MINUS shift 110 BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + NAME shift 329 + FUNCTION shift 542 + VAR shift 154 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + CONST shift 152 + INC shift 86 + DEC shift 85 + ACTIONNAME shift 504 + vdef_stmt shift 419 + vdefAssign_stmt shift 418 + cdef_stmt shift 417 + assign_stmt shift 416 + funcexpr shift 309 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 483 - fConstArg shift 486 - fConstArgs_nonEmpty shift 307 - fNonConstArgs_nonEmpty shift 306 - fArgs_nonEmpty shift 479 - fArgs shift 260 - {default} reduce 104 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + for_init_stmt_nonEmpty shift 414 State 27: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5424,7 +5436,7 @@ State 27: for_action_stmt_nonEmpty ::= * funcexprStmt for_action_stmt_nonEmpty ::= * assign_stmt for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty - (259) for_action_stmt ::= * + (258) for_action_stmt ::= * for_action_stmt ::= * for_action_stmt_nonEmpty for_header ::= for_header2 * for_action_stmt constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -5434,32 +5446,32 @@ State 27: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 187 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 + NAME shift 329 + FUNCTION shift 542 + RPAREN reduce 258 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 INC shift 86 DEC shift 85 - ACTIONNAME shift 308 - assign_stmt shift 407 - funcexprStmt shift 408 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ACTIONNAME shift 504 + assign_stmt shift 412 + funcexprStmt shift 413 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - for_action_stmt_nonEmpty shift 276 - for_action_stmt shift 405 - {default} reduce 259 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + for_action_stmt_nonEmpty shift 411 + for_action_stmt shift 473 State 28: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5574,32 +5586,32 @@ State 28: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - RPAREN shift 267 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + NAME shift 330 + FUNCTION shift 542 + RPAREN shift 462 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 483 - fConstArg shift 486 - fConstArgs_nonEmpty shift 234 - fNonConstArgs_nonEmpty shift 233 + logicExpr shift 362 + fNonConstArg shift 432 + fConstArg shift 436 + fConstArgs_nonEmpty shift 404 + fNonConstArgs_nonEmpty shift 403 State 29: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -5702,33 +5714,38 @@ State 29: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 187 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 + NAME shift 329 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 INC shift 86 DEC shift 85 - ACTIONNAME shift 308 - assign_stmt shift 407 - funcexprStmt shift 408 - funcexpr shift 218 - nonConstExpr shift 186 - constExpr shift 167 + ACTIONNAME shift 504 + assign_stmt shift 412 + funcexprStmt shift 413 + funcexpr shift 338 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 194 - lvalueList_nonEmpty shift 239 - for_action_stmt_nonEmpty shift 406 + lvalue shift 341 + lvalueList_nonEmpty shift 422 + for_action_stmt_nonEmpty shift 410 State 30: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr + (76) exprList ::= * + exprList ::= * exprList_nonEmpty constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -5738,14 +5755,8 @@ State 30: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fArg ::= * fConstArg - fArg ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg + expr ::= * constExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -5825,6 +5836,7 @@ State 30: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr + return_stmt ::= RETURN * exprList logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -5835,38 +5847,33 @@ State 30: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + SEMICOLON reduce 76 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 407 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + exprList shift 466 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 481 - fConstArg shift 482 - fArg shift 480 + logicExpr shift 294 State 31: - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - (77) exprList ::= * - exprList ::= * exprList_nonEmpty constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -5876,8 +5883,14 @@ State 31: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr + fNonConstArg ::= * logicExpr + fConstArg ::= * constExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fArg ::= * fConstArg + fArg ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -5957,7 +5970,6 @@ State 31: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - return_stmt ::= RETURN * exprList logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -5968,30 +5980,30 @@ State 31: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 271 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - exprList shift 399 - constExpr shift 182 + NAME shift 330 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - logicExpr shift 244 - {default} reduce 77 + logicExpr shift 362 + fNonConstArg shift 429 + fConstArg shift 430 + fArg shift 428 State 32: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -6100,29 +6112,29 @@ State 32: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 248 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 487 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 180 + NAME shift 330 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 437 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 335 lambdaExprStart shift 12 - logicExpr shift 245 - fNonConstArg shift 484 - fConstArg shift 485 + logicExpr shift 362 + fNonConstArg shift 433 + fConstArg shift 434 State 33: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6230,28 +6242,28 @@ State 33: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 251 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 397 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 34: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6359,28 +6371,28 @@ State 34: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 252 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 399 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 35: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6488,28 +6500,28 @@ State 35: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 273 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 408 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 36: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6617,28 +6629,28 @@ State 36: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 238 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 420 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 37: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6746,28 +6758,28 @@ State 37: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 294 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 374 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 38: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6875,28 +6887,28 @@ State 38: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 295 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 423 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 39: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7004,28 +7016,28 @@ State 39: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 296 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 425 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 40: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7133,28 +7145,28 @@ State 40: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 298 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 427 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 41: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7262,28 +7274,28 @@ State 41: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 153 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 146 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 42: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7391,28 +7403,28 @@ State 42: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 154 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 147 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 43: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -7520,28 +7532,28 @@ State 43: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 155 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 148 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 44: fdef_rettypes ::= COLON * exprList_nonEmpty @@ -7649,31 +7661,32 @@ State 44: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - exprList_nonEmpty shift 358 - expr shift 501 - funcexpr shift 335 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + exprList_nonEmpty shift 319 + expr shift 310 + funcexpr shift 293 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 45: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -7685,13 +7698,12 @@ State 45: constExpr ::= * lambdaExprStart stmt expr ::= * constExpr expr ::= * logicExpr - fConstArg ::= NAME ASSIGN * expr - fConstArg ::= NAME ASSIGN * STRING funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN + (111) commaSkippable ::= COMMA * constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7776,28 +7788,29 @@ State 45: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - STRING shift 381 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 382 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + RPAREN reduce 111 + NUMBER shift 307 + RSQBRACKET reduce 111 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 312 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 46: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -7812,6 +7825,8 @@ State 46: constExpr ::= * lambdaExprStart stmt expr ::= * constExpr expr ::= * logicExpr + fConstArg ::= NAME ASSIGN * expr + fConstArg ::= NAME ASSIGN * STRING funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr @@ -7891,7 +7906,6 @@ State 46: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - for_header2 ::= for_header1 * expr SEMICOLON logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -7902,27 +7916,28 @@ State 46: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 277 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + STRING shift 400 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 401 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 47: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8016,7 +8031,7 @@ State 47: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - while_header ::= while_start LPAREN * expr + for_header2 ::= for_header1 * expr SEMICOLON logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8027,27 +8042,27 @@ State 47: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 418 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 474 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 48: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8141,7 +8156,7 @@ State 48: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - switchcase_header ::= SWITCHCASE LPAREN * expr + while_header ::= while_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8152,27 +8167,27 @@ State 48: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 424 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 478 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 49: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8266,7 +8281,7 @@ State 49: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - elif_header ::= elif_start LPAREN * expr + switchcase_header ::= SWITCHCASE LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8277,27 +8292,27 @@ State 49: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 426 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 484 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 50: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8391,7 +8406,7 @@ State 50: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - if_header ::= if_start LPAREN * expr + elif_header ::= elif_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8402,27 +8417,27 @@ State 50: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 429 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 487 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 51: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8516,7 +8531,7 @@ State 51: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - once_header ::= once_start LPAREN * expr + if_header ::= if_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8527,27 +8542,27 @@ State 51: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 434 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 491 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 52: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8641,7 +8656,7 @@ State 52: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBXR * expr + once_header ::= once_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8652,27 +8667,27 @@ State 52: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 439 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 495 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 53: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8766,7 +8781,7 @@ State 53: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBOR * expr + assign_stmt ::= lvalue IBXR * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8777,27 +8792,27 @@ State 53: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 440 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 375 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 54: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8891,7 +8906,7 @@ State 54: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBND * expr + assign_stmt ::= lvalue IBOR * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -8902,27 +8917,27 @@ State 54: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 441 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 376 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 55: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9016,7 +9031,7 @@ State 55: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IRSH * expr + assign_stmt ::= lvalue IBND * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9027,27 +9042,27 @@ State 55: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 442 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 377 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 56: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9141,7 +9156,7 @@ State 56: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ILSH * expr + assign_stmt ::= lvalue IRSH * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9152,27 +9167,27 @@ State 56: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 443 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 378 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 57: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9266,7 +9281,7 @@ State 57: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IMOD * expr + assign_stmt ::= lvalue ILSH * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9277,27 +9292,27 @@ State 57: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 444 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 379 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 58: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9391,7 +9406,7 @@ State 58: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IDIV * expr + assign_stmt ::= lvalue IMOD * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9402,27 +9417,27 @@ State 58: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 445 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 380 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 59: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9516,7 +9531,7 @@ State 59: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IMUL * expr + assign_stmt ::= lvalue IDIV * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9527,27 +9542,27 @@ State 59: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 446 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 381 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 60: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9641,7 +9656,7 @@ State 60: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ISUB * expr + assign_stmt ::= lvalue IMUL * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9652,27 +9667,27 @@ State 60: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 447 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 382 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 61: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9766,7 +9781,7 @@ State 61: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IADD * expr + assign_stmt ::= lvalue ISUB * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9777,27 +9792,27 @@ State 61: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 448 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 383 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 62: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9891,7 +9906,7 @@ State 62: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ASSIGN * expr + assign_stmt ::= lvalue IADD * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -9902,27 +9917,27 @@ State 62: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 451 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 384 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 63: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9952,7 +9967,6 @@ State 63: constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - nonConstExpr ::= nonConstExpr QMARK expr COLON * expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr @@ -10017,6 +10031,7 @@ State 63: logicExpr ::= * logicExpr LAND logicExpr logicExpr ::= * logicExpr LOR logicExpr logicExpr ::= * LNOT logicExpr + assign_stmt ::= lvalue ASSIGN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN @@ -10027,27 +10042,27 @@ State 63: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 457 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 387 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 64: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10077,6 +10092,7 @@ State 64: constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN nonConstExpr ::= * nonConstExpr QMARK expr COLON expr + nonConstExpr ::= nonConstExpr QMARK expr COLON * expr constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr @@ -10107,7 +10123,6 @@ State 64: constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr - nonConstExpr ::= nonConstExpr BITXOR * expr constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr @@ -10152,27 +10167,27 @@ State 64: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 473 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 228 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 65: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10229,10 +10244,10 @@ State 65: constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr - nonConstExpr ::= nonConstExpr BITOR * expr constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr + nonConstExpr ::= nonConstExpr BITXOR * expr constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr @@ -10277,27 +10292,27 @@ State 65: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 474 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 269 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 66: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10351,10 +10366,10 @@ State 66: constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr - nonConstExpr ::= nonConstExpr BITAND * expr constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr + nonConstExpr ::= nonConstExpr BITOR * expr constExpr ::= * constExpr BITXOR constExpr nonConstExpr ::= * constExpr BITXOR nonConstExpr nonConstExpr ::= * nonConstExpr BITXOR expr @@ -10402,27 +10417,27 @@ State 66: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 475 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 270 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 67: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10473,10 +10488,10 @@ State 67: constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr - nonConstExpr ::= nonConstExpr RSHIFT * expr constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr + nonConstExpr ::= nonConstExpr BITAND * expr constExpr ::= * constExpr BITOR constExpr nonConstExpr ::= * constExpr BITOR nonConstExpr nonConstExpr ::= * nonConstExpr BITOR expr @@ -10527,27 +10542,27 @@ State 67: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 476 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 271 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 68: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10595,10 +10610,10 @@ State 68: constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr - nonConstExpr ::= nonConstExpr LSHIFT * expr constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr + nonConstExpr ::= nonConstExpr RSHIFT * expr constExpr ::= * constExpr BITAND constExpr nonConstExpr ::= * constExpr BITAND nonConstExpr nonConstExpr ::= * nonConstExpr BITAND expr @@ -10652,27 +10667,27 @@ State 68: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 477 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 272 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 69: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10717,10 +10732,10 @@ State 69: constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr - nonConstExpr ::= nonConstExpr MOD * expr constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr + nonConstExpr ::= nonConstExpr LSHIFT * expr constExpr ::= * constExpr RSHIFT constExpr nonConstExpr ::= * constExpr RSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr RSHIFT expr @@ -10777,27 +10792,27 @@ State 69: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 488 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 273 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 70: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10839,10 +10854,10 @@ State 70: constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr - nonConstExpr ::= nonConstExpr DIVIDE * expr constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr + nonConstExpr ::= nonConstExpr MOD * expr constExpr ::= * constExpr LSHIFT constExpr nonConstExpr ::= * constExpr LSHIFT nonConstExpr nonConstExpr ::= * nonConstExpr LSHIFT expr @@ -10902,27 +10917,27 @@ State 70: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 489 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 275 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 71: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10961,10 +10976,10 @@ State 71: constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr - nonConstExpr ::= nonConstExpr MULTIPLY * expr constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr + nonConstExpr ::= nonConstExpr DIVIDE * expr constExpr ::= * constExpr MOD constExpr nonConstExpr ::= * constExpr MOD nonConstExpr nonConstExpr ::= * nonConstExpr MOD expr @@ -11027,27 +11042,27 @@ State 71: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 490 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 277 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 72: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11083,10 +11098,10 @@ State 72: constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr - nonConstExpr ::= nonConstExpr MINUS * expr constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr + nonConstExpr ::= nonConstExpr MULTIPLY * expr constExpr ::= * constExpr DIVIDE constExpr nonConstExpr ::= * constExpr DIVIDE nonConstExpr nonConstExpr ::= * nonConstExpr DIVIDE expr @@ -11152,27 +11167,27 @@ State 72: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 491 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 279 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 73: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11205,10 +11220,10 @@ State 73: constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr - nonConstExpr ::= nonConstExpr PLUS * expr constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr + nonConstExpr ::= nonConstExpr MINUS * expr constExpr ::= * constExpr MULTIPLY constExpr nonConstExpr ::= * constExpr MULTIPLY nonConstExpr nonConstExpr ::= * nonConstExpr MULTIPLY expr @@ -11277,27 +11292,27 @@ State 73: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 492 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 281 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 74: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11319,7 +11334,6 @@ State 74: nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - nonConstExpr ::= L2V LPAREN * expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN @@ -11331,6 +11345,7 @@ State 74: constExpr ::= * constExpr PLUS constExpr nonConstExpr ::= * constExpr PLUS nonConstExpr nonConstExpr ::= * nonConstExpr PLUS expr + nonConstExpr ::= nonConstExpr PLUS * expr constExpr ::= * constExpr MINUS constExpr nonConstExpr ::= * constExpr MINUS nonConstExpr nonConstExpr ::= * nonConstExpr MINUS expr @@ -11402,31 +11417,30 @@ State 74: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 329 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 283 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 75: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -11443,9 +11457,9 @@ State 75: nonConstExpr ::= * funcexpr constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - (112) commaSkippable ::= COMMA * constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= L2V LPAREN * expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN @@ -11528,28 +11542,27 @@ State 75: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 538 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 525 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 - {default} reduce 112 + logicExpr shift 294 State 76: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11654,27 +11667,27 @@ State 76: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 301 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 499 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 77: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11780,27 +11793,27 @@ State 77: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 336 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 530 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 78: typedName ::= NAME COLON * expr @@ -11905,27 +11918,27 @@ State 78: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 532 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 390 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 79: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12030,27 +12043,27 @@ State 79: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 350 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 543 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 80: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12155,27 +12168,27 @@ State 80: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - expr shift 538 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 182 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + expr shift 312 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 298 lambdaExprStart shift 12 - logicExpr shift 244 + logicExpr shift 294 State 81: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12278,26 +12291,26 @@ State 81: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 181 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 340 lambdaExprStart shift 12 - logicExpr shift 462 + logicExpr shift 234 State 82: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12400,26 +12413,26 @@ State 82: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 181 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 340 lambdaExprStart shift 12 - logicExpr shift 302 + logicExpr shift 229 State 83: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12523,26 +12536,26 @@ State 83: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 160 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 337 lambdaExprStart shift 12 - logicExpr shift 220 + logicExpr shift 389 State 84: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12645,26 +12658,26 @@ State 84: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 352 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - LIST shift 311 - CONDITIONNAME shift 309 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 158 - constExpr shift 181 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 306 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + LIST shift 507 + CONDITIONNAME shift 505 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 303 + constExpr shift 340 lambdaExprStart shift 12 - logicExpr shift 455 + logicExpr shift 225 State 85: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12745,24 +12758,24 @@ State 85: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 187 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 186 - constExpr shift 167 + NAME shift 329 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 436 + lvalue shift 372 State 86: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12843,24 +12856,24 @@ State 86: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 187 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 186 - constExpr shift 167 + NAME shift 329 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 437 + lvalue shift 373 State 87: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12941,24 +12954,24 @@ State 87: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 187 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 186 - constExpr shift 167 + NAME shift 329 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 342 + constExpr shift 339 lambdaExprStart shift 12 - lvalue shift 438 + lvalue shift 421 State 88: case_start ::= * CASE @@ -12970,16 +12983,16 @@ State 88: default_chunk ::= * default_clause default_chunk ::= * default_clause bodyStmtList switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * default_chunk - (242) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * + (241) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * - CASE shift 423 - DEFAULT shift 264 + RBRACKET reduce 241 + CASE shift 334 + DEFAULT shift 459 case_start shift 36 - case_clause shift 16 - case_chunk shift 392 - default_clause shift 14 - default_chunk shift 390 - {default} reduce 242 + case_clause shift 14 + case_chunk shift 371 + default_clause shift 16 + default_chunk shift 458 State 89: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13057,22 +13070,22 @@ State 89: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 188 - constExpr shift 161 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 216 + constExpr shift 196 lambdaExprStart shift 12 State 90: @@ -13151,22 +13164,22 @@ State 90: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 189 - constExpr shift 162 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 217 + constExpr shift 197 lambdaExprStart shift 12 State 91: @@ -13245,22 +13258,22 @@ State 91: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 190 - constExpr shift 163 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 218 + constExpr shift 198 lambdaExprStart shift 12 State 92: @@ -13339,22 +13352,22 @@ State 92: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 191 - constExpr shift 164 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 219 + constExpr shift 199 lambdaExprStart shift 12 State 93: @@ -13433,22 +13446,22 @@ State 93: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 192 - constExpr shift 165 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 220 + constExpr shift 200 lambdaExprStart shift 12 State 94: @@ -13527,22 +13540,22 @@ State 94: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 193 - constExpr shift 166 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 221 + constExpr shift 201 lambdaExprStart shift 12 State 95: @@ -13621,22 +13634,22 @@ State 95: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 195 - constExpr shift 168 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 237 + constExpr shift 202 lambdaExprStart shift 12 State 96: @@ -13715,22 +13728,22 @@ State 96: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 196 - constExpr shift 169 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 238 + constExpr shift 203 lambdaExprStart shift 12 State 97: @@ -13809,22 +13822,22 @@ State 97: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 197 - constExpr shift 170 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 239 + constExpr shift 204 lambdaExprStart shift 12 State 98: @@ -13903,22 +13916,22 @@ State 98: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 198 - constExpr shift 171 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 240 + constExpr shift 205 lambdaExprStart shift 12 State 99: @@ -13997,22 +14010,22 @@ State 99: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 199 - constExpr shift 172 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 241 + constExpr shift 206 lambdaExprStart shift 12 State 100: @@ -14091,22 +14104,22 @@ State 100: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 200 - constExpr shift 173 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 242 + constExpr shift 207 lambdaExprStart shift 12 State 101: @@ -14185,22 +14198,22 @@ State 101: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 202 - constExpr shift 207 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 257 + constExpr shift 256 lambdaExprStart shift 12 State 102: @@ -14279,22 +14292,22 @@ State 102: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 201 - constExpr shift 205 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 259 + constExpr shift 258 lambdaExprStart shift 12 State 103: @@ -14373,22 +14386,22 @@ State 103: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 203 - constExpr shift 211 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 261 + constExpr shift 260 lambdaExprStart shift 12 State 104: @@ -14467,22 +14480,22 @@ State 104: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 208 - constExpr shift 216 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 263 + constExpr shift 262 lambdaExprStart shift 12 State 105: @@ -14561,22 +14574,22 @@ State 105: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 209 - constExpr shift 217 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 265 + constExpr shift 264 lambdaExprStart shift 12 State 106: @@ -14655,22 +14668,22 @@ State 106: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 224 - constExpr shift 471 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 267 + constExpr shift 266 lambdaExprStart shift 12 State 107: @@ -14749,22 +14762,22 @@ State 107: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 225 - constExpr shift 472 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 276 + constExpr shift 268 lambdaExprStart shift 12 State 108: @@ -14843,22 +14856,22 @@ State 108: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 226 - constExpr shift 463 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 278 + constExpr shift 235 lambdaExprStart shift 12 State 109: @@ -14937,22 +14950,22 @@ State 109: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 227 - constExpr shift 461 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 280 + constExpr shift 233 lambdaExprStart shift 12 State 110: @@ -15031,22 +15044,22 @@ State 110: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 228 - constExpr shift 460 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 282 + constExpr shift 232 lambdaExprStart shift 12 State 111: @@ -15125,22 +15138,22 @@ State 111: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 229 - constExpr shift 459 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 284 + constExpr shift 231 lambdaExprStart shift 12 State 112: @@ -15219,22 +15232,22 @@ State 112: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 212 - constExpr shift 221 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 295 + constExpr shift 227 lambdaExprStart shift 12 State 113: @@ -15313,22 +15326,22 @@ State 113: BITNOT shift 109 LPAREN shift 83 LSQBRACKET shift 43 - NAME shift 351 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - L2V shift 330 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - funcexpr shift 357 - nonConstExpr shift 213 - constExpr shift 219 + NAME shift 304 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + L2V shift 526 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + funcexpr shift 309 + nonConstExpr shift 297 + constExpr shift 223 lambdaExprStart shift 12 State 114: @@ -15340,58 +15353,120 @@ State 114: case_chunks ::= * case_chunk switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks default_chunk switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks - (243) switchcase_block ::= switchcase_header RPAREN LBRACKET * + (242) switchcase_block ::= switchcase_header RPAREN LBRACKET * - CASE shift 423 + RBRACKET reduce 242 + CASE shift 334 case_start shift 36 - case_clause shift 16 - case_chunk shift 389 + case_clause shift 14 + case_chunk shift 370 case_chunks shift 88 - {default} reduce 243 State 115: + elif_start ::= * ELSE IF + elif_header ::= * elif_start LPAREN expr + if_block ::= if_block * elif_header RPAREN stmt + else_header ::= * ELSE + (228) if_stmt ::= if_block * + if_stmt ::= if_block * else_header stmt + + $ reduce 228 + ELSE shift 323 + ELSE reduce 228 -- dropped by precedence + QMARK reduce 228 + COMMA reduce 228 + LOR reduce 228 + LAND reduce 228 + EQ reduce 228 + LE reduce 228 + LT reduce 228 + GE reduce 228 + GT reduce 228 + NE reduce 228 + BITOR reduce 228 + BITXOR reduce 228 + BITAND reduce 228 + LSHIFT reduce 228 + RSHIFT reduce 228 + PLUS reduce 228 + MINUS reduce 228 + DIVIDE reduce 228 + MULTIPLY reduce 228 + MOD reduce 228 + BITNOT reduce 228 + LPAREN reduce 228 + LSQBRACKET reduce 228 + PERIOD reduce 228 + SEMICOLON reduce 228 + IMPORT reduce 228 + NAME reduce 228 + COLON reduce 228 + FUNCTION reduce 228 + RPAREN reduce 228 + OBJECT reduce 228 + LBRACKET reduce 228 + VAR reduce 228 + RBRACKET reduce 228 + NUMBER reduce 228 + RSQBRACKET reduce 228 + KILLS reduce 228 + TRGCONST reduce 228 + L2V reduce 228 + MAPSTRING reduce 228 + UNIT reduce 228 + SWITCH reduce 228 + LOCATION reduce 228 + STATTXTTBL reduce 228 + VARRAY reduce 228 + STATIC reduce 228 + CONST reduce 228 + INC reduce 228 + DEC reduce 228 + ONCE reduce 228 + IF reduce 228 + SWITCHCASE reduce 228 + CASE reduce 228 + DEFAULT reduce 228 + WHILE reduce 228 + FOR reduce 228 + FOREACH reduce 228 + CONTINUE reduce 228 + BREAK reduce 228 + RETURN reduce 228 + ACTIONNAME reduce 228 + elif_start shift 488 + elif_header shift 486 + else_header shift 4 + +State 116: method_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes typedName ::= * NAME typedName ::= * NAME COLON expr typedNameList_nonEmpty ::= * typedName typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (69) typedNameList ::= * + (68) typedNameList ::= * typedNameList ::= * typedNameList_nonEmpty - NAME shift 348 - typedNameList shift 254 - typedNameList_nonEmpty shift 385 - typedName shift 263 - {default} reduce 69 - -State 116: - elif_start ::= * ELSE IF - elif_header ::= * elif_start LPAREN expr - if_block ::= if_block * elif_header RPAREN stmt - else_header ::= * ELSE - (229) if_stmt ::= if_block * - if_stmt ::= if_block * else_header stmt - - ELSE shift 289 - elif_start shift 288 - elif_header shift 287 - else_header shift 3 - {default} reduce 229 + NAME shift 363 + RPAREN reduce 68 + typedNameList shift 448 + typedNameList_nonEmpty shift 457 + typedName shift 369 State 117: typedName ::= * NAME typedName ::= * NAME COLON expr typedNameList_nonEmpty ::= * typedName typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (69) typedNameList ::= * + (68) typedNameList ::= * typedNameList ::= * typedNameList_nonEmpty lambdaExprStart ::= FUNCTION LPAREN * typedNameList RPAREN fdef_rettypes - NAME shift 348 - typedNameList shift 262 - typedNameList_nonEmpty shift 385 - typedName shift 263 - {default} reduce 69 + NAME shift 363 + RPAREN reduce 68 + typedNameList shift 456 + typedNameList_nonEmpty shift 457 + typedName shift 369 State 118: fdef_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes @@ -15400,14 +15475,14 @@ State 118: typedName ::= * NAME COLON expr typedNameList_nonEmpty ::= * typedName typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (69) typedNameList ::= * + (68) typedNameList ::= * typedNameList ::= * typedNameList_nonEmpty - NAME shift 348 - typedNameList shift 359 - typedNameList_nonEmpty shift 385 - typedName shift 263 - {default} reduce 69 + NAME shift 363 + RPAREN reduce 68 + typedNameList shift 548 + typedNameList_nonEmpty shift 457 + typedName shift 369 State 119: constExpr ::= * NUMBER @@ -15450,18 +15525,18 @@ State 119: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 465 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 243 lambdaExprStart shift 12 State 120: @@ -15505,18 +15580,18 @@ State 120: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 466 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 244 lambdaExprStart shift 12 State 121: @@ -15560,18 +15635,18 @@ State 121: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 467 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 245 lambdaExprStart shift 12 State 122: @@ -15615,18 +15690,18 @@ State 122: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 175 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 209 lambdaExprStart shift 12 State 123: @@ -15670,18 +15745,18 @@ State 123: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 176 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 210 lambdaExprStart shift 12 State 124: @@ -15725,18 +15800,18 @@ State 124: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 177 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 211 lambdaExprStart shift 12 State 125: @@ -15780,18 +15855,18 @@ State 125: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 178 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 212 lambdaExprStart shift 12 State 126: @@ -15835,18 +15910,18 @@ State 126: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 179 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 213 lambdaExprStart shift 12 State 127: @@ -15890,18 +15965,18 @@ State 127: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 206 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 246 lambdaExprStart shift 12 State 128: @@ -15945,18 +16020,18 @@ State 128: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 204 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 247 lambdaExprStart shift 12 State 129: @@ -16000,18 +16075,18 @@ State 129: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 210 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 248 lambdaExprStart shift 12 State 130: @@ -16055,18 +16130,18 @@ State 130: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 214 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 249 lambdaExprStart shift 12 State 131: @@ -16110,18 +16185,18 @@ State 131: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 215 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 250 lambdaExprStart shift 12 State 132: @@ -16165,18 +16240,18 @@ State 132: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 468 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 251 lambdaExprStart shift 12 State 133: @@ -16220,18 +16295,18 @@ State 133: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 469 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 252 lambdaExprStart shift 12 State 134: @@ -16275,18 +16350,18 @@ State 134: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 470 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 253 lambdaExprStart shift 12 State 135: @@ -16330,18 +16405,18 @@ State 135: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 222 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 254 lambdaExprStart shift 12 State 136: @@ -16385,18 +16460,18 @@ State 136: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 223 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 255 lambdaExprStart shift 12 State 137: @@ -16440,18 +16515,18 @@ State 137: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 159 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 336 lambdaExprStart shift 12 State 138: @@ -16495,18 +16570,18 @@ State 138: BITNOT shift 119 LPAREN shift 137 LSQBRACKET shift 43 - FUNCTION shift 349 - NUMBER shift 537 - KILLS shift 505 - TRGCONST shift 536 - MAPSTRING shift 328 - UNIT shift 325 - SWITCH shift 322 - LOCATION shift 319 - STATTXTTBL shift 316 - VARRAY shift 313 - ACTIONNAME shift 308 - constExpr shift 174 + FUNCTION shift 542 + NUMBER shift 307 + KILLS shift 299 + TRGCONST shift 305 + MAPSTRING shift 524 + UNIT shift 521 + SWITCH shift 518 + LOCATION shift 515 + STATTXTTBL shift 512 + VARRAY shift 509 + ACTIONNAME shift 504 + constExpr shift 208 lambdaExprStart shift 12 State 139: @@ -16516,11 +16591,11 @@ State 139: object_body ::= object_body * method_chunk object_chunk ::= object_body * RBRACKET SEMICOLON - FUNCTION shift 256 + FUNCTION shift 450 VAR shift 140 - RBRACKET shift 253 - method_header shift 1 - method_chunk shift 372 + RBRACKET shift 447 + method_header shift 2 + method_chunk shift 365 State 140: object_body ::= object_body VAR * typedNameList_nonEmpty SEMICOLON @@ -16529,9 +16604,9 @@ State 140: typedNameList_nonEmpty ::= * typedName typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - NAME shift 348 - typedNameList_nonEmpty shift 257 - typedName shift 263 + NAME shift 363 + typedNameList_nonEmpty shift 451 + typedName shift 369 State 141: typedName ::= * NAME @@ -16540,300 +16615,2921 @@ State 141: typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty typedNameList_nonEmpty ::= typedName COMMA * typedNameList_nonEmpty - NAME shift 348 - typedNameList_nonEmpty shift 386 - typedName shift 263 + NAME shift 363 + typedNameList_nonEmpty shift 402 + typedName shift 369 State 142: - (23) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON - - SEMICOLON shift 378 - COLON shift 44 - fdef_rettypes shift 379 - {default} reduce 23 + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= constActionList * constAction + actionStmt ::= constActionList * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + (278) actionStmt ::= constActionList * + + $ reduce 278 + ELSE reduce 278 + QMARK reduce 278 + COMMA reduce 278 + LOR reduce 278 + LAND reduce 278 + EQ reduce 278 + LE reduce 278 + LT reduce 278 + GE reduce 278 + GT reduce 278 + NE reduce 278 + BITOR reduce 278 + BITXOR reduce 278 + BITAND reduce 278 + LSHIFT reduce 278 + RSHIFT reduce 278 + PLUS reduce 278 + MINUS reduce 278 + DIVIDE reduce 278 + MULTIPLY reduce 278 + MOD reduce 278 + BITNOT reduce 278 + LPAREN reduce 278 + LSQBRACKET reduce 278 + PERIOD reduce 278 + SEMICOLON reduce 278 + IMPORT reduce 278 + NAME reduce 278 + COLON reduce 278 + FUNCTION reduce 278 + RPAREN reduce 278 + OBJECT reduce 278 + LBRACKET reduce 278 + VAR reduce 278 + RBRACKET reduce 278 + NUMBER reduce 278 + RSQBRACKET reduce 278 + KILLS reduce 278 + TRGCONST reduce 278 + L2V reduce 278 + MAPSTRING reduce 278 + UNIT reduce 278 + SWITCH reduce 278 + LOCATION reduce 278 + STATTXTTBL reduce 278 + VARRAY reduce 278 + STATIC reduce 278 + CONST reduce 278 + INC reduce 278 + DEC reduce 278 + ONCE reduce 278 + IF reduce 278 + SWITCHCASE reduce 278 + CASE reduce 278 + DEFAULT reduce 278 + WHILE reduce 278 + FOR reduce 278 + FOREACH reduce 278 + CONTINUE reduce 278 + BREAK reduce 278 + RETURN reduce 278 + ACTIONNAME shift 461 + ACTIONNAME reduce 278 -- dropped by precedence + constAction shift 158 State 143: - relimp_start ::= IMPORT * PERIOD - dottedName ::= * NAME - dottedName ::= * dottedName PERIOD NAME - import_chunk ::= IMPORT * dottedName AS NAME - import_chunk ::= IMPORT * dottedName + (22) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes - PERIOD shift 548 - NAME shift 547 - dottedName shift 250 + PLUS reduce 22 + MINUS reduce 22 + BITNOT reduce 22 + LPAREN reduce 22 + LSQBRACKET reduce 22 + SEMICOLON reduce 22 + NAME reduce 22 + COLON shift 44 + FUNCTION reduce 22 + LBRACKET reduce 22 + VAR reduce 22 + NUMBER reduce 22 + KILLS reduce 22 + TRGCONST reduce 22 + L2V reduce 22 + MAPSTRING reduce 22 + UNIT reduce 22 + SWITCH reduce 22 + LOCATION reduce 22 + STATTXTTBL reduce 22 + VARRAY reduce 22 + STATIC reduce 22 + CONST reduce 22 + INC reduce 22 + DEC reduce 22 + ONCE reduce 22 + IF reduce 22 + SWITCHCASE reduce 22 + WHILE reduce 22 + FOR reduce 22 + FOREACH reduce 22 + CONTINUE reduce 22 + BREAK reduce 22 + RETURN reduce 22 + ACTIONNAME reduce 22 + fdef_rettypes shift 320 State 144: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - cdef_global_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty + (22) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes - NAME shift 453 - nameList_nonEmpty shift 231 + PLUS reduce 22 + MINUS reduce 22 + BITNOT reduce 22 + LPAREN reduce 22 + LSQBRACKET reduce 22 + SEMICOLON reduce 22 + NAME reduce 22 + COLON shift 44 + FUNCTION reduce 22 + LBRACKET reduce 22 + VAR reduce 22 + NUMBER reduce 22 + KILLS reduce 22 + TRGCONST reduce 22 + L2V reduce 22 + MAPSTRING reduce 22 + UNIT reduce 22 + SWITCH reduce 22 + LOCATION reduce 22 + STATTXTTBL reduce 22 + VARRAY reduce 22 + STATIC reduce 22 + CONST reduce 22 + INC reduce 22 + DEC reduce 22 + ONCE reduce 22 + IF reduce 22 + SWITCHCASE reduce 22 + WHILE reduce 22 + FOR reduce 22 + FOREACH reduce 22 + CONTINUE reduce 22 + BREAK reduce 22 + RETURN reduce 22 + ACTIONNAME reduce 22 + fdef_rettypes shift 322 State 145: - nameList_nonEmpty ::= * NAME - nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdef_stmt ::= VAR * nameList_nonEmpty - vdefAssign_global_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + (22) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON - NAME shift 453 - nameList_nonEmpty shift 232 + PLUS reduce 22 + MINUS reduce 22 + BITNOT reduce 22 + LPAREN reduce 22 + LSQBRACKET reduce 22 + SEMICOLON shift 345 + SEMICOLON reduce 22 -- dropped by precedence + NAME reduce 22 + COLON shift 44 + FUNCTION reduce 22 + LBRACKET reduce 22 + VAR reduce 22 + NUMBER reduce 22 + KILLS reduce 22 + TRGCONST reduce 22 + L2V reduce 22 + MAPSTRING reduce 22 + UNIT reduce 22 + SWITCH reduce 22 + LOCATION reduce 22 + STATTXTTBL reduce 22 + VARRAY reduce 22 + STATIC reduce 22 + CONST reduce 22 + INC reduce 22 + DEC reduce 22 + ONCE reduce 22 + IF reduce 22 + SWITCHCASE reduce 22 + WHILE reduce 22 + FOR reduce 22 + FOREACH reduce 22 + CONTINUE reduce 22 + BREAK reduce 22 + RETURN reduce 22 + ACTIONNAME reduce 22 + fdef_rettypes shift 321 State 146: - (23) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (112) commaSkippable ::= * + logicExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN - COLON shift 44 - fdef_rettypes shift 374 - {default} reduce 23 + COMMA shift 45 + RPAREN reduce 112 + commaSkippable shift 506 State 147: - (23) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (112) commaSkippable ::= * + constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN - COLON shift 44 - fdef_rettypes shift 384 - {default} reduce 23 + COMMA shift 45 + RPAREN reduce 112 + commaSkippable shift 508 State 148: - constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON - constActionList ::= constActionList * constAction - actionStmt ::= constActionList * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - (279) actionStmt ::= constActionList * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (112) commaSkippable ::= * + constExpr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET - ACTIONNAME shift 266 - constAction shift 393 - {default} reduce 279 + COMMA shift 45 + RSQBRACKET reduce 112 + commaSkippable shift 500 State 149: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - foreach_header ::= foreach_opener * nameList_nonEmpty COLON exprList_nonEmpty + cdef_global_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 453 - nameList_nonEmpty shift 237 + NAME shift 361 + nameList_nonEmpty shift 398 State 150: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - cdef_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty + vdef_stmt ::= VAR * nameList_nonEmpty + vdefAssign_global_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 453 - nameList_nonEmpty shift 240 + NAME shift 361 + nameList_nonEmpty shift 364 State 151: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdefAssignStatic_stmt ::= STATIC VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + foreach_header ::= foreach_opener * nameList_nonEmpty COLON exprList_nonEmpty - NAME shift 453 - nameList_nonEmpty shift 241 + NAME shift 361 + nameList_nonEmpty shift 409 State 152: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME - vdef_stmt ::= VAR * nameList_nonEmpty - vdefAssign_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 453 - nameList_nonEmpty shift 242 + NAME shift 361 + nameList_nonEmpty shift 424 State 153: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (113) commaSkippable ::= * - logicExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + vdefAssignStatic_stmt ::= STATIC VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - COMMA shift 75 - commaSkippable shift 310 - {default} reduce 113 + NAME shift 361 + nameList_nonEmpty shift 426 State 154: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (113) commaSkippable ::= * - constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN + nameList_nonEmpty ::= * NAME + nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME + vdef_stmt ::= VAR * nameList_nonEmpty + vdefAssign_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - COMMA shift 75 - commaSkippable shift 312 - {default} reduce 113 + NAME shift 361 + nameList_nonEmpty shift 388 State 155: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (113) commaSkippable ::= * - constExpr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET - - COMMA shift 75 - commaSkippable shift 303 - {default} reduce 113 - -State 156: numList_nonEmpty ::= * NUMBER numList_nonEmpty ::= * numList_nonEmpty COMMA NUMBER exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET * numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET - NUMBER shift 333 - numList_nonEmpty shift 243 + NUMBER shift 440 + numList_nonEmpty shift 439 -State 157: +State 156: rbracket ::= * RBRACKET blockStmt ::= blockStmtSub * rbracket - RBRACKET shift 528 - rbracket shift 527 + RBRACKET shift 193 + rbracket shift 192 -State 158: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - logicExpr ::= nonConstExpr * EQ constExpr - logicExpr ::= nonConstExpr * EQ nonConstExpr - logicExpr ::= nonConstExpr * NE constExpr - logicExpr ::= nonConstExpr * NE nonConstExpr - logicExpr ::= nonConstExpr * LE constExpr - logicExpr ::= nonConstExpr * LE nonConstExpr - logicExpr ::= nonConstExpr * GE constExpr - logicExpr ::= nonConstExpr * GE nonConstExpr - logicExpr ::= nonConstExpr * LT constExpr - logicExpr ::= nonConstExpr * LT nonConstExpr - logicExpr ::= nonConstExpr * GT constExpr - logicExpr ::= nonConstExpr * GT nonConstExpr - (184) logicExpr ::= nonConstExpr * +State 157: + (229) if_stmt ::= if_block else_header stmt * + + $ reduce 229 + ELSE reduce 229 + QMARK reduce 229 + COMMA reduce 229 + LOR reduce 229 + LAND reduce 229 + EQ reduce 229 + LE reduce 229 + LT reduce 229 + GE reduce 229 + GT reduce 229 + NE reduce 229 + BITOR reduce 229 + BITXOR reduce 229 + BITAND reduce 229 + LSHIFT reduce 229 + RSHIFT reduce 229 + PLUS reduce 229 + MINUS reduce 229 + DIVIDE reduce 229 + MULTIPLY reduce 229 + MOD reduce 229 + BITNOT reduce 229 + LPAREN reduce 229 + LSQBRACKET reduce 229 + PERIOD reduce 229 + SEMICOLON reduce 229 + IMPORT reduce 229 + NAME reduce 229 + COLON reduce 229 + FUNCTION reduce 229 + RPAREN reduce 229 + OBJECT reduce 229 + LBRACKET reduce 229 + VAR reduce 229 + RBRACKET reduce 229 + NUMBER reduce 229 + RSQBRACKET reduce 229 + KILLS reduce 229 + TRGCONST reduce 229 + L2V reduce 229 + MAPSTRING reduce 229 + UNIT reduce 229 + SWITCH reduce 229 + LOCATION reduce 229 + STATTXTTBL reduce 229 + VARRAY reduce 229 + STATIC reduce 229 + CONST reduce 229 + INC reduce 229 + DEC reduce 229 + ONCE reduce 229 + IF reduce 229 + SWITCHCASE reduce 229 + CASE reduce 229 + DEFAULT reduce 229 + WHILE reduce 229 + FOR reduce 229 + FOREACH reduce 229 + CONTINUE reduce 229 + BREAK reduce 229 + RETURN reduce 229 + ACTIONNAME reduce 229 - QMARK shift 76 - EQ shift 94 - LE shift 92 - LT shift 90 - GE shift 91 - GT shift 89 - NE shift 93 - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 184 +State 158: + (276) constActionList ::= constActionList constAction * + + $ reduce 276 + ELSE reduce 276 + QMARK reduce 276 + COMMA reduce 276 + LOR reduce 276 + LAND reduce 276 + EQ reduce 276 + LE reduce 276 + LT reduce 276 + GE reduce 276 + GT reduce 276 + NE reduce 276 + BITOR reduce 276 + BITXOR reduce 276 + BITAND reduce 276 + LSHIFT reduce 276 + RSHIFT reduce 276 + PLUS reduce 276 + MINUS reduce 276 + DIVIDE reduce 276 + MULTIPLY reduce 276 + MOD reduce 276 + BITNOT reduce 276 + LPAREN reduce 276 + LSQBRACKET reduce 276 + PERIOD reduce 276 + SEMICOLON reduce 276 + IMPORT reduce 276 + NAME reduce 276 + COLON reduce 276 + FUNCTION reduce 276 + RPAREN reduce 276 + OBJECT reduce 276 + LBRACKET reduce 276 + VAR reduce 276 + RBRACKET reduce 276 + NUMBER reduce 276 + RSQBRACKET reduce 276 + KILLS reduce 276 + TRGCONST reduce 276 + L2V reduce 276 + MAPSTRING reduce 276 + UNIT reduce 276 + SWITCH reduce 276 + LOCATION reduce 276 + STATTXTTBL reduce 276 + VARRAY reduce 276 + STATIC reduce 276 + CONST reduce 276 + INC reduce 276 + DEC reduce 276 + ONCE reduce 276 + IF reduce 276 + SWITCHCASE reduce 276 + CASE reduce 276 + DEFAULT reduce 276 + WHILE reduce 276 + FOR reduce 276 + FOREACH reduce 276 + CONTINUE reduce 276 + BREAK reduce 276 + RETURN reduce 276 + ACTIONNAME reduce 276 State 159: - constExpr ::= LPAREN constExpr * RPAREN - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - - EQ shift 138 - LE shift 125 - LT shift 123 - GE shift 124 - GT shift 122 - NE shift 126 - BITOR shift 128 - BITXOR shift 127 - BITAND shift 129 - LSHIFT shift 131 - RSHIFT shift 130 - PLUS shift 136 - MINUS shift 135 - DIVIDE shift 133 - MULTIPLY shift 134 - MOD shift 132 - RPAREN shift 504 + (277) actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 277 + ELSE reduce 277 + QMARK reduce 277 + COMMA reduce 277 + LOR reduce 277 + LAND reduce 277 + EQ reduce 277 + LE reduce 277 + LT reduce 277 + GE reduce 277 + GT reduce 277 + NE reduce 277 + BITOR reduce 277 + BITXOR reduce 277 + BITAND reduce 277 + LSHIFT reduce 277 + RSHIFT reduce 277 + PLUS reduce 277 + MINUS reduce 277 + DIVIDE reduce 277 + MULTIPLY reduce 277 + MOD reduce 277 + BITNOT reduce 277 + LPAREN reduce 277 + LSQBRACKET reduce 277 + PERIOD reduce 277 + SEMICOLON reduce 277 + IMPORT reduce 277 + NAME reduce 277 + COLON reduce 277 + FUNCTION reduce 277 + RPAREN reduce 277 + OBJECT reduce 277 + LBRACKET reduce 277 + VAR reduce 277 + RBRACKET reduce 277 + NUMBER reduce 277 + RSQBRACKET reduce 277 + KILLS reduce 277 + TRGCONST reduce 277 + L2V reduce 277 + MAPSTRING reduce 277 + UNIT reduce 277 + SWITCH reduce 277 + LOCATION reduce 277 + STATTXTTBL reduce 277 + VARRAY reduce 277 + STATIC reduce 277 + CONST reduce 277 + INC reduce 277 + DEC reduce 277 + ONCE reduce 277 + IF reduce 277 + SWITCHCASE reduce 277 + CASE reduce 277 + DEFAULT reduce 277 + WHILE reduce 277 + FOR reduce 277 + FOREACH reduce 277 + CONTINUE reduce 277 + BREAK reduce 277 + RETURN reduce 277 + ACTIONNAME reduce 277 State 160: - constExpr ::= LPAREN constExpr * RPAREN - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr - - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - RPAREN shift 504 + (275) constActionList ::= constAction * + + $ reduce 275 + ELSE reduce 275 + QMARK reduce 275 + COMMA reduce 275 + LOR reduce 275 + LAND reduce 275 + EQ reduce 275 + LE reduce 275 + LT reduce 275 + GE reduce 275 + GT reduce 275 + NE reduce 275 + BITOR reduce 275 + BITXOR reduce 275 + BITAND reduce 275 + LSHIFT reduce 275 + RSHIFT reduce 275 + PLUS reduce 275 + MINUS reduce 275 + DIVIDE reduce 275 + MULTIPLY reduce 275 + MOD reduce 275 + BITNOT reduce 275 + LPAREN reduce 275 + LSQBRACKET reduce 275 + PERIOD reduce 275 + SEMICOLON reduce 275 + IMPORT reduce 275 + NAME reduce 275 + COLON reduce 275 + FUNCTION reduce 275 + RPAREN reduce 275 + OBJECT reduce 275 + LBRACKET reduce 275 + VAR reduce 275 + RBRACKET reduce 275 + NUMBER reduce 275 + RSQBRACKET reduce 275 + KILLS reduce 275 + TRGCONST reduce 275 + L2V reduce 275 + MAPSTRING reduce 275 + UNIT reduce 275 + SWITCH reduce 275 + LOCATION reduce 275 + STATTXTTBL reduce 275 + VARRAY reduce 275 + STATIC reduce 275 + CONST reduce 275 + INC reduce 275 + DEC reduce 275 + ONCE reduce 275 + IF reduce 275 + SWITCHCASE reduce 275 + CASE reduce 275 + DEFAULT reduce 275 + WHILE reduce 275 + FOR reduce 275 + FOREACH reduce 275 + CONTINUE reduce 275 + BREAK reduce 275 + RETURN reduce 275 + ACTIONNAME reduce 275 State 161: + (274) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * + + $ reduce 274 + ELSE reduce 274 + QMARK reduce 274 + COMMA reduce 274 + LOR reduce 274 + LAND reduce 274 + EQ reduce 274 + LE reduce 274 + LT reduce 274 + GE reduce 274 + GT reduce 274 + NE reduce 274 + BITOR reduce 274 + BITXOR reduce 274 + BITAND reduce 274 + LSHIFT reduce 274 + RSHIFT reduce 274 + PLUS reduce 274 + MINUS reduce 274 + DIVIDE reduce 274 + MULTIPLY reduce 274 + MOD reduce 274 + BITNOT reduce 274 + LPAREN reduce 274 + LSQBRACKET reduce 274 + PERIOD reduce 274 + SEMICOLON reduce 274 + IMPORT reduce 274 + NAME reduce 274 + COLON reduce 274 + FUNCTION reduce 274 + RPAREN reduce 274 + OBJECT reduce 274 + LBRACKET reduce 274 + VAR reduce 274 + RBRACKET reduce 274 + NUMBER reduce 274 + RSQBRACKET reduce 274 + KILLS reduce 274 + TRGCONST reduce 274 + L2V reduce 274 + MAPSTRING reduce 274 + UNIT reduce 274 + SWITCH reduce 274 + LOCATION reduce 274 + STATTXTTBL reduce 274 + VARRAY reduce 274 + STATIC reduce 274 + CONST reduce 274 + INC reduce 274 + DEC reduce 274 + ONCE reduce 274 + IF reduce 274 + SWITCHCASE reduce 274 + CASE reduce 274 + DEFAULT reduce 274 + WHILE reduce 274 + FOR reduce 274 + FOREACH reduce 274 + CONTINUE reduce 274 + BREAK reduce 274 + RETURN reduce 274 + ACTIONNAME reduce 274 + +State 162: + (272) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 272 + ELSE reduce 272 + QMARK reduce 272 + COMMA reduce 272 + LOR reduce 272 + LAND reduce 272 + EQ reduce 272 + LE reduce 272 + LT reduce 272 + GE reduce 272 + GT reduce 272 + NE reduce 272 + BITOR reduce 272 + BITXOR reduce 272 + BITAND reduce 272 + LSHIFT reduce 272 + RSHIFT reduce 272 + PLUS reduce 272 + MINUS reduce 272 + DIVIDE reduce 272 + MULTIPLY reduce 272 + MOD reduce 272 + BITNOT reduce 272 + LPAREN reduce 272 + LSQBRACKET reduce 272 + PERIOD reduce 272 + SEMICOLON reduce 272 + IMPORT reduce 272 + NAME reduce 272 + COLON reduce 272 + FUNCTION reduce 272 + RPAREN reduce 272 + OBJECT reduce 272 + LBRACKET reduce 272 + VAR reduce 272 + RBRACKET reduce 272 + NUMBER reduce 272 + RSQBRACKET reduce 272 + KILLS reduce 272 + TRGCONST reduce 272 + L2V reduce 272 + MAPSTRING reduce 272 + UNIT reduce 272 + SWITCH reduce 272 + LOCATION reduce 272 + STATTXTTBL reduce 272 + VARRAY reduce 272 + STATIC reduce 272 + CONST reduce 272 + INC reduce 272 + DEC reduce 272 + ONCE reduce 272 + IF reduce 272 + SWITCHCASE reduce 272 + CASE reduce 272 + DEFAULT reduce 272 + WHILE reduce 272 + FOR reduce 272 + FOREACH reduce 272 + CONTINUE reduce 272 + BREAK reduce 272 + RETURN reduce 272 + ACTIONNAME reduce 272 + +State 163: + (273) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 273 + ELSE reduce 273 + QMARK reduce 273 + COMMA reduce 273 + LOR reduce 273 + LAND reduce 273 + EQ reduce 273 + LE reduce 273 + LT reduce 273 + GE reduce 273 + GT reduce 273 + NE reduce 273 + BITOR reduce 273 + BITXOR reduce 273 + BITAND reduce 273 + LSHIFT reduce 273 + RSHIFT reduce 273 + PLUS reduce 273 + MINUS reduce 273 + DIVIDE reduce 273 + MULTIPLY reduce 273 + MOD reduce 273 + BITNOT reduce 273 + LPAREN reduce 273 + LSQBRACKET reduce 273 + PERIOD reduce 273 + SEMICOLON reduce 273 + IMPORT reduce 273 + NAME reduce 273 + COLON reduce 273 + FUNCTION reduce 273 + RPAREN reduce 273 + OBJECT reduce 273 + LBRACKET reduce 273 + VAR reduce 273 + RBRACKET reduce 273 + NUMBER reduce 273 + RSQBRACKET reduce 273 + KILLS reduce 273 + TRGCONST reduce 273 + L2V reduce 273 + MAPSTRING reduce 273 + UNIT reduce 273 + SWITCH reduce 273 + LOCATION reduce 273 + STATTXTTBL reduce 273 + VARRAY reduce 273 + STATIC reduce 273 + CONST reduce 273 + INC reduce 273 + DEC reduce 273 + ONCE reduce 273 + IF reduce 273 + SWITCHCASE reduce 273 + CASE reduce 273 + DEFAULT reduce 273 + WHILE reduce 273 + FOR reduce 273 + FOREACH reduce 273 + CONTINUE reduce 273 + BREAK reduce 273 + RETURN reduce 273 + ACTIONNAME reduce 273 + +State 164: + (266) foreach_stmt ::= foreach_header RPAREN stmt * + + $ reduce 266 + ELSE reduce 266 + QMARK reduce 266 + COMMA reduce 266 + LOR reduce 266 + LAND reduce 266 + EQ reduce 266 + LE reduce 266 + LT reduce 266 + GE reduce 266 + GT reduce 266 + NE reduce 266 + BITOR reduce 266 + BITXOR reduce 266 + BITAND reduce 266 + LSHIFT reduce 266 + RSHIFT reduce 266 + PLUS reduce 266 + MINUS reduce 266 + DIVIDE reduce 266 + MULTIPLY reduce 266 + MOD reduce 266 + BITNOT reduce 266 + LPAREN reduce 266 + LSQBRACKET reduce 266 + PERIOD reduce 266 + SEMICOLON reduce 266 + IMPORT reduce 266 + NAME reduce 266 + COLON reduce 266 + FUNCTION reduce 266 + RPAREN reduce 266 + OBJECT reduce 266 + LBRACKET reduce 266 + VAR reduce 266 + RBRACKET reduce 266 + NUMBER reduce 266 + RSQBRACKET reduce 266 + KILLS reduce 266 + TRGCONST reduce 266 + L2V reduce 266 + MAPSTRING reduce 266 + UNIT reduce 266 + SWITCH reduce 266 + LOCATION reduce 266 + STATTXTTBL reduce 266 + VARRAY reduce 266 + STATIC reduce 266 + CONST reduce 266 + INC reduce 266 + DEC reduce 266 + ONCE reduce 266 + IF reduce 266 + SWITCHCASE reduce 266 + CASE reduce 266 + DEFAULT reduce 266 + WHILE reduce 266 + FOR reduce 266 + FOREACH reduce 266 + CONTINUE reduce 266 + BREAK reduce 266 + RETURN reduce 266 + ACTIONNAME reduce 266 + +State 165: + (263) for_stmt ::= for_header RPAREN stmt * + + $ reduce 263 + ELSE reduce 263 + QMARK reduce 263 + COMMA reduce 263 + LOR reduce 263 + LAND reduce 263 + EQ reduce 263 + LE reduce 263 + LT reduce 263 + GE reduce 263 + GT reduce 263 + NE reduce 263 + BITOR reduce 263 + BITXOR reduce 263 + BITAND reduce 263 + LSHIFT reduce 263 + RSHIFT reduce 263 + PLUS reduce 263 + MINUS reduce 263 + DIVIDE reduce 263 + MULTIPLY reduce 263 + MOD reduce 263 + BITNOT reduce 263 + LPAREN reduce 263 + LSQBRACKET reduce 263 + PERIOD reduce 263 + SEMICOLON reduce 263 + IMPORT reduce 263 + NAME reduce 263 + COLON reduce 263 + FUNCTION reduce 263 + RPAREN reduce 263 + OBJECT reduce 263 + LBRACKET reduce 263 + VAR reduce 263 + RBRACKET reduce 263 + NUMBER reduce 263 + RSQBRACKET reduce 263 + KILLS reduce 263 + TRGCONST reduce 263 + L2V reduce 263 + MAPSTRING reduce 263 + UNIT reduce 263 + SWITCH reduce 263 + LOCATION reduce 263 + STATTXTTBL reduce 263 + VARRAY reduce 263 + STATIC reduce 263 + CONST reduce 263 + INC reduce 263 + DEC reduce 263 + ONCE reduce 263 + IF reduce 263 + SWITCHCASE reduce 263 + CASE reduce 263 + DEFAULT reduce 263 + WHILE reduce 263 + FOR reduce 263 + FOREACH reduce 263 + CONTINUE reduce 263 + BREAK reduce 263 + RETURN reduce 263 + ACTIONNAME reduce 263 + +State 166: + (246) while_stmt ::= while_header RPAREN stmt * + + $ reduce 246 + ELSE reduce 246 + QMARK reduce 246 + COMMA reduce 246 + LOR reduce 246 + LAND reduce 246 + EQ reduce 246 + LE reduce 246 + LT reduce 246 + GE reduce 246 + GT reduce 246 + NE reduce 246 + BITOR reduce 246 + BITXOR reduce 246 + BITAND reduce 246 + LSHIFT reduce 246 + RSHIFT reduce 246 + PLUS reduce 246 + MINUS reduce 246 + DIVIDE reduce 246 + MULTIPLY reduce 246 + MOD reduce 246 + BITNOT reduce 246 + LPAREN reduce 246 + LSQBRACKET reduce 246 + PERIOD reduce 246 + SEMICOLON reduce 246 + IMPORT reduce 246 + NAME reduce 246 + COLON reduce 246 + FUNCTION reduce 246 + RPAREN reduce 246 + OBJECT reduce 246 + LBRACKET reduce 246 + VAR reduce 246 + RBRACKET reduce 246 + NUMBER reduce 246 + RSQBRACKET reduce 246 + KILLS reduce 246 + TRGCONST reduce 246 + L2V reduce 246 + MAPSTRING reduce 246 + UNIT reduce 246 + SWITCH reduce 246 + LOCATION reduce 246 + STATTXTTBL reduce 246 + VARRAY reduce 246 + STATIC reduce 246 + CONST reduce 246 + INC reduce 246 + DEC reduce 246 + ONCE reduce 246 + IF reduce 246 + SWITCHCASE reduce 246 + CASE reduce 246 + DEFAULT reduce 246 + WHILE reduce 246 + FOR reduce 246 + FOREACH reduce 246 + CONTINUE reduce 246 + BREAK reduce 246 + RETURN reduce 246 + ACTIONNAME reduce 246 + +State 167: + (243) switchcase_stmt ::= switchcase_block RBRACKET * + + $ reduce 243 + ELSE reduce 243 + QMARK reduce 243 + COMMA reduce 243 + LOR reduce 243 + LAND reduce 243 + EQ reduce 243 + LE reduce 243 + LT reduce 243 + GE reduce 243 + GT reduce 243 + NE reduce 243 + BITOR reduce 243 + BITXOR reduce 243 + BITAND reduce 243 + LSHIFT reduce 243 + RSHIFT reduce 243 + PLUS reduce 243 + MINUS reduce 243 + DIVIDE reduce 243 + MULTIPLY reduce 243 + MOD reduce 243 + BITNOT reduce 243 + LPAREN reduce 243 + LSQBRACKET reduce 243 + PERIOD reduce 243 + SEMICOLON reduce 243 + IMPORT reduce 243 + NAME reduce 243 + COLON reduce 243 + FUNCTION reduce 243 + RPAREN reduce 243 + OBJECT reduce 243 + LBRACKET reduce 243 + VAR reduce 243 + RBRACKET reduce 243 + NUMBER reduce 243 + RSQBRACKET reduce 243 + KILLS reduce 243 + TRGCONST reduce 243 + L2V reduce 243 + MAPSTRING reduce 243 + UNIT reduce 243 + SWITCH reduce 243 + LOCATION reduce 243 + STATTXTTBL reduce 243 + VARRAY reduce 243 + STATIC reduce 243 + CONST reduce 243 + INC reduce 243 + DEC reduce 243 + ONCE reduce 243 + IF reduce 243 + SWITCHCASE reduce 243 + CASE reduce 243 + DEFAULT reduce 243 + WHILE reduce 243 + FOR reduce 243 + FOREACH reduce 243 + CONTINUE reduce 243 + BREAK reduce 243 + RETURN reduce 243 + ACTIONNAME reduce 243 + +State 168: + (226) if_block ::= if_block elif_header RPAREN stmt * + + $ reduce 226 + ELSE reduce 226 + QMARK reduce 226 + COMMA reduce 226 + LOR reduce 226 + LAND reduce 226 + EQ reduce 226 + LE reduce 226 + LT reduce 226 + GE reduce 226 + GT reduce 226 + NE reduce 226 + BITOR reduce 226 + BITXOR reduce 226 + BITAND reduce 226 + LSHIFT reduce 226 + RSHIFT reduce 226 + PLUS reduce 226 + MINUS reduce 226 + DIVIDE reduce 226 + MULTIPLY reduce 226 + MOD reduce 226 + BITNOT reduce 226 + LPAREN reduce 226 + LSQBRACKET reduce 226 + PERIOD reduce 226 + SEMICOLON reduce 226 + IMPORT reduce 226 + NAME reduce 226 + COLON reduce 226 + FUNCTION reduce 226 + RPAREN reduce 226 + OBJECT reduce 226 + LBRACKET reduce 226 + VAR reduce 226 + RBRACKET reduce 226 + NUMBER reduce 226 + RSQBRACKET reduce 226 + KILLS reduce 226 + TRGCONST reduce 226 + L2V reduce 226 + MAPSTRING reduce 226 + UNIT reduce 226 + SWITCH reduce 226 + LOCATION reduce 226 + STATTXTTBL reduce 226 + VARRAY reduce 226 + STATIC reduce 226 + CONST reduce 226 + INC reduce 226 + DEC reduce 226 + ONCE reduce 226 + IF reduce 226 + SWITCHCASE reduce 226 + CASE reduce 226 + DEFAULT reduce 226 + WHILE reduce 226 + FOR reduce 226 + FOREACH reduce 226 + CONTINUE reduce 226 + BREAK reduce 226 + RETURN reduce 226 + ACTIONNAME reduce 226 + +State 169: + (223) if_block ::= if_header RPAREN stmt * + + $ reduce 223 + ELSE reduce 223 + QMARK reduce 223 + COMMA reduce 223 + LOR reduce 223 + LAND reduce 223 + EQ reduce 223 + LE reduce 223 + LT reduce 223 + GE reduce 223 + GT reduce 223 + NE reduce 223 + BITOR reduce 223 + BITXOR reduce 223 + BITAND reduce 223 + LSHIFT reduce 223 + RSHIFT reduce 223 + PLUS reduce 223 + MINUS reduce 223 + DIVIDE reduce 223 + MULTIPLY reduce 223 + MOD reduce 223 + BITNOT reduce 223 + LPAREN reduce 223 + LSQBRACKET reduce 223 + PERIOD reduce 223 + SEMICOLON reduce 223 + IMPORT reduce 223 + NAME reduce 223 + COLON reduce 223 + FUNCTION reduce 223 + RPAREN reduce 223 + OBJECT reduce 223 + LBRACKET reduce 223 + VAR reduce 223 + RBRACKET reduce 223 + NUMBER reduce 223 + RSQBRACKET reduce 223 + KILLS reduce 223 + TRGCONST reduce 223 + L2V reduce 223 + MAPSTRING reduce 223 + UNIT reduce 223 + SWITCH reduce 223 + LOCATION reduce 223 + STATTXTTBL reduce 223 + VARRAY reduce 223 + STATIC reduce 223 + CONST reduce 223 + INC reduce 223 + DEC reduce 223 + ONCE reduce 223 + IF reduce 223 + SWITCHCASE reduce 223 + CASE reduce 223 + DEFAULT reduce 223 + WHILE reduce 223 + FOR reduce 223 + FOREACH reduce 223 + CONTINUE reduce 223 + BREAK reduce 223 + RETURN reduce 223 + ACTIONNAME reduce 223 + +State 170: + (220) once_stmt ::= once_block * + + $ reduce 220 + ELSE reduce 220 + QMARK reduce 220 + COMMA reduce 220 + LOR reduce 220 + LAND reduce 220 + EQ reduce 220 + LE reduce 220 + LT reduce 220 + GE reduce 220 + GT reduce 220 + NE reduce 220 + BITOR reduce 220 + BITXOR reduce 220 + BITAND reduce 220 + LSHIFT reduce 220 + RSHIFT reduce 220 + PLUS reduce 220 + MINUS reduce 220 + DIVIDE reduce 220 + MULTIPLY reduce 220 + MOD reduce 220 + BITNOT reduce 220 + LPAREN reduce 220 + LSQBRACKET reduce 220 + PERIOD reduce 220 + SEMICOLON reduce 220 + IMPORT reduce 220 + NAME reduce 220 + COLON reduce 220 + FUNCTION reduce 220 + RPAREN reduce 220 + OBJECT reduce 220 + LBRACKET reduce 220 + VAR reduce 220 + RBRACKET reduce 220 + NUMBER reduce 220 + RSQBRACKET reduce 220 + KILLS reduce 220 + TRGCONST reduce 220 + L2V reduce 220 + MAPSTRING reduce 220 + UNIT reduce 220 + SWITCH reduce 220 + LOCATION reduce 220 + STATTXTTBL reduce 220 + VARRAY reduce 220 + STATIC reduce 220 + CONST reduce 220 + INC reduce 220 + DEC reduce 220 + ONCE reduce 220 + IF reduce 220 + SWITCHCASE reduce 220 + CASE reduce 220 + DEFAULT reduce 220 + WHILE reduce 220 + FOR reduce 220 + FOREACH reduce 220 + CONTINUE reduce 220 + BREAK reduce 220 + RETURN reduce 220 + ACTIONNAME reduce 220 + +State 171: + (219) once_block ::= once_nocond stmt * + + $ reduce 219 + ELSE reduce 219 + QMARK reduce 219 + COMMA reduce 219 + LOR reduce 219 + LAND reduce 219 + EQ reduce 219 + LE reduce 219 + LT reduce 219 + GE reduce 219 + GT reduce 219 + NE reduce 219 + BITOR reduce 219 + BITXOR reduce 219 + BITAND reduce 219 + LSHIFT reduce 219 + RSHIFT reduce 219 + PLUS reduce 219 + MINUS reduce 219 + DIVIDE reduce 219 + MULTIPLY reduce 219 + MOD reduce 219 + BITNOT reduce 219 + LPAREN reduce 219 + LSQBRACKET reduce 219 + PERIOD reduce 219 + SEMICOLON reduce 219 + IMPORT reduce 219 + NAME reduce 219 + COLON reduce 219 + FUNCTION reduce 219 + RPAREN reduce 219 + OBJECT reduce 219 + LBRACKET reduce 219 + VAR reduce 219 + RBRACKET reduce 219 + NUMBER reduce 219 + RSQBRACKET reduce 219 + KILLS reduce 219 + TRGCONST reduce 219 + L2V reduce 219 + MAPSTRING reduce 219 + UNIT reduce 219 + SWITCH reduce 219 + LOCATION reduce 219 + STATTXTTBL reduce 219 + VARRAY reduce 219 + STATIC reduce 219 + CONST reduce 219 + INC reduce 219 + DEC reduce 219 + ONCE reduce 219 + IF reduce 219 + SWITCHCASE reduce 219 + CASE reduce 219 + DEFAULT reduce 219 + WHILE reduce 219 + FOR reduce 219 + FOREACH reduce 219 + CONTINUE reduce 219 + BREAK reduce 219 + RETURN reduce 219 + ACTIONNAME reduce 219 + +State 172: + (217) once_block ::= once_header RPAREN stmt * + + $ reduce 217 + ELSE reduce 217 + QMARK reduce 217 + COMMA reduce 217 + LOR reduce 217 + LAND reduce 217 + EQ reduce 217 + LE reduce 217 + LT reduce 217 + GE reduce 217 + GT reduce 217 + NE reduce 217 + BITOR reduce 217 + BITXOR reduce 217 + BITAND reduce 217 + LSHIFT reduce 217 + RSHIFT reduce 217 + PLUS reduce 217 + MINUS reduce 217 + DIVIDE reduce 217 + MULTIPLY reduce 217 + MOD reduce 217 + BITNOT reduce 217 + LPAREN reduce 217 + LSQBRACKET reduce 217 + PERIOD reduce 217 + SEMICOLON reduce 217 + IMPORT reduce 217 + NAME reduce 217 + COLON reduce 217 + FUNCTION reduce 217 + RPAREN reduce 217 + OBJECT reduce 217 + LBRACKET reduce 217 + VAR reduce 217 + RBRACKET reduce 217 + NUMBER reduce 217 + RSQBRACKET reduce 217 + KILLS reduce 217 + TRGCONST reduce 217 + L2V reduce 217 + MAPSTRING reduce 217 + UNIT reduce 217 + SWITCH reduce 217 + LOCATION reduce 217 + STATTXTTBL reduce 217 + VARRAY reduce 217 + STATIC reduce 217 + CONST reduce 217 + INC reduce 217 + DEC reduce 217 + ONCE reduce 217 + IF reduce 217 + SWITCHCASE reduce 217 + CASE reduce 217 + DEFAULT reduce 217 + WHILE reduce 217 + FOR reduce 217 + FOREACH reduce 217 + CONTINUE reduce 217 + BREAK reduce 217 + RETURN reduce 217 + ACTIONNAME reduce 217 + +State 173: + (58) bodyStmt ::= return_stmt SEMICOLON * + + $ reduce 58 + ELSE reduce 58 + QMARK reduce 58 + COMMA reduce 58 + LOR reduce 58 + LAND reduce 58 + EQ reduce 58 + LE reduce 58 + LT reduce 58 + GE reduce 58 + GT reduce 58 + NE reduce 58 + BITOR reduce 58 + BITXOR reduce 58 + BITAND reduce 58 + LSHIFT reduce 58 + RSHIFT reduce 58 + PLUS reduce 58 + MINUS reduce 58 + DIVIDE reduce 58 + MULTIPLY reduce 58 + MOD reduce 58 + BITNOT reduce 58 + LPAREN reduce 58 + LSQBRACKET reduce 58 + PERIOD reduce 58 + SEMICOLON reduce 58 + IMPORT reduce 58 + NAME reduce 58 + COLON reduce 58 + FUNCTION reduce 58 + RPAREN reduce 58 + OBJECT reduce 58 + LBRACKET reduce 58 + VAR reduce 58 + RBRACKET reduce 58 + NUMBER reduce 58 + RSQBRACKET reduce 58 + KILLS reduce 58 + TRGCONST reduce 58 + L2V reduce 58 + MAPSTRING reduce 58 + UNIT reduce 58 + SWITCH reduce 58 + LOCATION reduce 58 + STATTXTTBL reduce 58 + VARRAY reduce 58 + STATIC reduce 58 + CONST reduce 58 + INC reduce 58 + DEC reduce 58 + ONCE reduce 58 + IF reduce 58 + SWITCHCASE reduce 58 + CASE reduce 58 + DEFAULT reduce 58 + WHILE reduce 58 + FOR reduce 58 + FOREACH reduce 58 + CONTINUE reduce 58 + BREAK reduce 58 + RETURN reduce 58 + ACTIONNAME reduce 58 + +State 174: + (57) bodyStmt ::= break_stmt SEMICOLON * + + $ reduce 57 + ELSE reduce 57 + QMARK reduce 57 + COMMA reduce 57 + LOR reduce 57 + LAND reduce 57 + EQ reduce 57 + LE reduce 57 + LT reduce 57 + GE reduce 57 + GT reduce 57 + NE reduce 57 + BITOR reduce 57 + BITXOR reduce 57 + BITAND reduce 57 + LSHIFT reduce 57 + RSHIFT reduce 57 + PLUS reduce 57 + MINUS reduce 57 + DIVIDE reduce 57 + MULTIPLY reduce 57 + MOD reduce 57 + BITNOT reduce 57 + LPAREN reduce 57 + LSQBRACKET reduce 57 + PERIOD reduce 57 + SEMICOLON reduce 57 + IMPORT reduce 57 + NAME reduce 57 + COLON reduce 57 + FUNCTION reduce 57 + RPAREN reduce 57 + OBJECT reduce 57 + LBRACKET reduce 57 + VAR reduce 57 + RBRACKET reduce 57 + NUMBER reduce 57 + RSQBRACKET reduce 57 + KILLS reduce 57 + TRGCONST reduce 57 + L2V reduce 57 + MAPSTRING reduce 57 + UNIT reduce 57 + SWITCH reduce 57 + LOCATION reduce 57 + STATTXTTBL reduce 57 + VARRAY reduce 57 + STATIC reduce 57 + CONST reduce 57 + INC reduce 57 + DEC reduce 57 + ONCE reduce 57 + IF reduce 57 + SWITCHCASE reduce 57 + CASE reduce 57 + DEFAULT reduce 57 + WHILE reduce 57 + FOR reduce 57 + FOREACH reduce 57 + CONTINUE reduce 57 + BREAK reduce 57 + RETURN reduce 57 + ACTIONNAME reduce 57 + +State 175: + (56) bodyStmt ::= continue_stmt SEMICOLON * + + $ reduce 56 + ELSE reduce 56 + QMARK reduce 56 + COMMA reduce 56 + LOR reduce 56 + LAND reduce 56 + EQ reduce 56 + LE reduce 56 + LT reduce 56 + GE reduce 56 + GT reduce 56 + NE reduce 56 + BITOR reduce 56 + BITXOR reduce 56 + BITAND reduce 56 + LSHIFT reduce 56 + RSHIFT reduce 56 + PLUS reduce 56 + MINUS reduce 56 + DIVIDE reduce 56 + MULTIPLY reduce 56 + MOD reduce 56 + BITNOT reduce 56 + LPAREN reduce 56 + LSQBRACKET reduce 56 + PERIOD reduce 56 + SEMICOLON reduce 56 + IMPORT reduce 56 + NAME reduce 56 + COLON reduce 56 + FUNCTION reduce 56 + RPAREN reduce 56 + OBJECT reduce 56 + LBRACKET reduce 56 + VAR reduce 56 + RBRACKET reduce 56 + NUMBER reduce 56 + RSQBRACKET reduce 56 + KILLS reduce 56 + TRGCONST reduce 56 + L2V reduce 56 + MAPSTRING reduce 56 + UNIT reduce 56 + SWITCH reduce 56 + LOCATION reduce 56 + STATTXTTBL reduce 56 + VARRAY reduce 56 + STATIC reduce 56 + CONST reduce 56 + INC reduce 56 + DEC reduce 56 + ONCE reduce 56 + IF reduce 56 + SWITCHCASE reduce 56 + CASE reduce 56 + DEFAULT reduce 56 + WHILE reduce 56 + FOR reduce 56 + FOREACH reduce 56 + CONTINUE reduce 56 + BREAK reduce 56 + RETURN reduce 56 + ACTIONNAME reduce 56 + +State 176: + (55) bodyStmt ::= switchcase_stmt * + + $ reduce 55 + ELSE reduce 55 + QMARK reduce 55 + COMMA reduce 55 + LOR reduce 55 + LAND reduce 55 + EQ reduce 55 + LE reduce 55 + LT reduce 55 + GE reduce 55 + GT reduce 55 + NE reduce 55 + BITOR reduce 55 + BITXOR reduce 55 + BITAND reduce 55 + LSHIFT reduce 55 + RSHIFT reduce 55 + PLUS reduce 55 + MINUS reduce 55 + DIVIDE reduce 55 + MULTIPLY reduce 55 + MOD reduce 55 + BITNOT reduce 55 + LPAREN reduce 55 + LSQBRACKET reduce 55 + PERIOD reduce 55 + SEMICOLON reduce 55 + IMPORT reduce 55 + NAME reduce 55 + COLON reduce 55 + FUNCTION reduce 55 + RPAREN reduce 55 + OBJECT reduce 55 + LBRACKET reduce 55 + VAR reduce 55 + RBRACKET reduce 55 + NUMBER reduce 55 + RSQBRACKET reduce 55 + KILLS reduce 55 + TRGCONST reduce 55 + L2V reduce 55 + MAPSTRING reduce 55 + UNIT reduce 55 + SWITCH reduce 55 + LOCATION reduce 55 + STATTXTTBL reduce 55 + VARRAY reduce 55 + STATIC reduce 55 + CONST reduce 55 + INC reduce 55 + DEC reduce 55 + ONCE reduce 55 + IF reduce 55 + SWITCHCASE reduce 55 + CASE reduce 55 + DEFAULT reduce 55 + WHILE reduce 55 + FOR reduce 55 + FOREACH reduce 55 + CONTINUE reduce 55 + BREAK reduce 55 + RETURN reduce 55 + ACTIONNAME reduce 55 + +State 177: + (54) bodyStmt ::= foreach_stmt * + + $ reduce 54 + ELSE reduce 54 + QMARK reduce 54 + COMMA reduce 54 + LOR reduce 54 + LAND reduce 54 + EQ reduce 54 + LE reduce 54 + LT reduce 54 + GE reduce 54 + GT reduce 54 + NE reduce 54 + BITOR reduce 54 + BITXOR reduce 54 + BITAND reduce 54 + LSHIFT reduce 54 + RSHIFT reduce 54 + PLUS reduce 54 + MINUS reduce 54 + DIVIDE reduce 54 + MULTIPLY reduce 54 + MOD reduce 54 + BITNOT reduce 54 + LPAREN reduce 54 + LSQBRACKET reduce 54 + PERIOD reduce 54 + SEMICOLON reduce 54 + IMPORT reduce 54 + NAME reduce 54 + COLON reduce 54 + FUNCTION reduce 54 + RPAREN reduce 54 + OBJECT reduce 54 + LBRACKET reduce 54 + VAR reduce 54 + RBRACKET reduce 54 + NUMBER reduce 54 + RSQBRACKET reduce 54 + KILLS reduce 54 + TRGCONST reduce 54 + L2V reduce 54 + MAPSTRING reduce 54 + UNIT reduce 54 + SWITCH reduce 54 + LOCATION reduce 54 + STATTXTTBL reduce 54 + VARRAY reduce 54 + STATIC reduce 54 + CONST reduce 54 + INC reduce 54 + DEC reduce 54 + ONCE reduce 54 + IF reduce 54 + SWITCHCASE reduce 54 + CASE reduce 54 + DEFAULT reduce 54 + WHILE reduce 54 + FOR reduce 54 + FOREACH reduce 54 + CONTINUE reduce 54 + BREAK reduce 54 + RETURN reduce 54 + ACTIONNAME reduce 54 + +State 178: + (53) bodyStmt ::= for_stmt * + + $ reduce 53 + ELSE reduce 53 + QMARK reduce 53 + COMMA reduce 53 + LOR reduce 53 + LAND reduce 53 + EQ reduce 53 + LE reduce 53 + LT reduce 53 + GE reduce 53 + GT reduce 53 + NE reduce 53 + BITOR reduce 53 + BITXOR reduce 53 + BITAND reduce 53 + LSHIFT reduce 53 + RSHIFT reduce 53 + PLUS reduce 53 + MINUS reduce 53 + DIVIDE reduce 53 + MULTIPLY reduce 53 + MOD reduce 53 + BITNOT reduce 53 + LPAREN reduce 53 + LSQBRACKET reduce 53 + PERIOD reduce 53 + SEMICOLON reduce 53 + IMPORT reduce 53 + NAME reduce 53 + COLON reduce 53 + FUNCTION reduce 53 + RPAREN reduce 53 + OBJECT reduce 53 + LBRACKET reduce 53 + VAR reduce 53 + RBRACKET reduce 53 + NUMBER reduce 53 + RSQBRACKET reduce 53 + KILLS reduce 53 + TRGCONST reduce 53 + L2V reduce 53 + MAPSTRING reduce 53 + UNIT reduce 53 + SWITCH reduce 53 + LOCATION reduce 53 + STATTXTTBL reduce 53 + VARRAY reduce 53 + STATIC reduce 53 + CONST reduce 53 + INC reduce 53 + DEC reduce 53 + ONCE reduce 53 + IF reduce 53 + SWITCHCASE reduce 53 + CASE reduce 53 + DEFAULT reduce 53 + WHILE reduce 53 + FOR reduce 53 + FOREACH reduce 53 + CONTINUE reduce 53 + BREAK reduce 53 + RETURN reduce 53 + ACTIONNAME reduce 53 + +State 179: + (52) bodyStmt ::= while_stmt * + + $ reduce 52 + ELSE reduce 52 + QMARK reduce 52 + COMMA reduce 52 + LOR reduce 52 + LAND reduce 52 + EQ reduce 52 + LE reduce 52 + LT reduce 52 + GE reduce 52 + GT reduce 52 + NE reduce 52 + BITOR reduce 52 + BITXOR reduce 52 + BITAND reduce 52 + LSHIFT reduce 52 + RSHIFT reduce 52 + PLUS reduce 52 + MINUS reduce 52 + DIVIDE reduce 52 + MULTIPLY reduce 52 + MOD reduce 52 + BITNOT reduce 52 + LPAREN reduce 52 + LSQBRACKET reduce 52 + PERIOD reduce 52 + SEMICOLON reduce 52 + IMPORT reduce 52 + NAME reduce 52 + COLON reduce 52 + FUNCTION reduce 52 + RPAREN reduce 52 + OBJECT reduce 52 + LBRACKET reduce 52 + VAR reduce 52 + RBRACKET reduce 52 + NUMBER reduce 52 + RSQBRACKET reduce 52 + KILLS reduce 52 + TRGCONST reduce 52 + L2V reduce 52 + MAPSTRING reduce 52 + UNIT reduce 52 + SWITCH reduce 52 + LOCATION reduce 52 + STATTXTTBL reduce 52 + VARRAY reduce 52 + STATIC reduce 52 + CONST reduce 52 + INC reduce 52 + DEC reduce 52 + ONCE reduce 52 + IF reduce 52 + SWITCHCASE reduce 52 + CASE reduce 52 + DEFAULT reduce 52 + WHILE reduce 52 + FOR reduce 52 + FOREACH reduce 52 + CONTINUE reduce 52 + BREAK reduce 52 + RETURN reduce 52 + ACTIONNAME reduce 52 + +State 180: + (51) bodyStmt ::= if_stmt * + + $ reduce 51 + ELSE reduce 51 + QMARK reduce 51 + COMMA reduce 51 + LOR reduce 51 + LAND reduce 51 + EQ reduce 51 + LE reduce 51 + LT reduce 51 + GE reduce 51 + GT reduce 51 + NE reduce 51 + BITOR reduce 51 + BITXOR reduce 51 + BITAND reduce 51 + LSHIFT reduce 51 + RSHIFT reduce 51 + PLUS reduce 51 + MINUS reduce 51 + DIVIDE reduce 51 + MULTIPLY reduce 51 + MOD reduce 51 + BITNOT reduce 51 + LPAREN reduce 51 + LSQBRACKET reduce 51 + PERIOD reduce 51 + SEMICOLON reduce 51 + IMPORT reduce 51 + NAME reduce 51 + COLON reduce 51 + FUNCTION reduce 51 + RPAREN reduce 51 + OBJECT reduce 51 + LBRACKET reduce 51 + VAR reduce 51 + RBRACKET reduce 51 + NUMBER reduce 51 + RSQBRACKET reduce 51 + KILLS reduce 51 + TRGCONST reduce 51 + L2V reduce 51 + MAPSTRING reduce 51 + UNIT reduce 51 + SWITCH reduce 51 + LOCATION reduce 51 + STATTXTTBL reduce 51 + VARRAY reduce 51 + STATIC reduce 51 + CONST reduce 51 + INC reduce 51 + DEC reduce 51 + ONCE reduce 51 + IF reduce 51 + SWITCHCASE reduce 51 + CASE reduce 51 + DEFAULT reduce 51 + WHILE reduce 51 + FOR reduce 51 + FOREACH reduce 51 + CONTINUE reduce 51 + BREAK reduce 51 + RETURN reduce 51 + ACTIONNAME reduce 51 + +State 181: + (50) bodyStmt ::= once_stmt * + + $ reduce 50 + ELSE reduce 50 + QMARK reduce 50 + COMMA reduce 50 + LOR reduce 50 + LAND reduce 50 + EQ reduce 50 + LE reduce 50 + LT reduce 50 + GE reduce 50 + GT reduce 50 + NE reduce 50 + BITOR reduce 50 + BITXOR reduce 50 + BITAND reduce 50 + LSHIFT reduce 50 + RSHIFT reduce 50 + PLUS reduce 50 + MINUS reduce 50 + DIVIDE reduce 50 + MULTIPLY reduce 50 + MOD reduce 50 + BITNOT reduce 50 + LPAREN reduce 50 + LSQBRACKET reduce 50 + PERIOD reduce 50 + SEMICOLON reduce 50 + IMPORT reduce 50 + NAME reduce 50 + COLON reduce 50 + FUNCTION reduce 50 + RPAREN reduce 50 + OBJECT reduce 50 + LBRACKET reduce 50 + VAR reduce 50 + RBRACKET reduce 50 + NUMBER reduce 50 + RSQBRACKET reduce 50 + KILLS reduce 50 + TRGCONST reduce 50 + L2V reduce 50 + MAPSTRING reduce 50 + UNIT reduce 50 + SWITCH reduce 50 + LOCATION reduce 50 + STATTXTTBL reduce 50 + VARRAY reduce 50 + STATIC reduce 50 + CONST reduce 50 + INC reduce 50 + DEC reduce 50 + ONCE reduce 50 + IF reduce 50 + SWITCHCASE reduce 50 + CASE reduce 50 + DEFAULT reduce 50 + WHILE reduce 50 + FOR reduce 50 + FOREACH reduce 50 + CONTINUE reduce 50 + BREAK reduce 50 + RETURN reduce 50 + ACTIONNAME reduce 50 + +State 182: + (49) bodyStmt ::= actionStmt * + + $ reduce 49 + ELSE reduce 49 + QMARK reduce 49 + COMMA reduce 49 + LOR reduce 49 + LAND reduce 49 + EQ reduce 49 + LE reduce 49 + LT reduce 49 + GE reduce 49 + GT reduce 49 + NE reduce 49 + BITOR reduce 49 + BITXOR reduce 49 + BITAND reduce 49 + LSHIFT reduce 49 + RSHIFT reduce 49 + PLUS reduce 49 + MINUS reduce 49 + DIVIDE reduce 49 + MULTIPLY reduce 49 + MOD reduce 49 + BITNOT reduce 49 + LPAREN reduce 49 + LSQBRACKET reduce 49 + PERIOD reduce 49 + SEMICOLON reduce 49 + IMPORT reduce 49 + NAME reduce 49 + COLON reduce 49 + FUNCTION reduce 49 + RPAREN reduce 49 + OBJECT reduce 49 + LBRACKET reduce 49 + VAR reduce 49 + RBRACKET reduce 49 + NUMBER reduce 49 + RSQBRACKET reduce 49 + KILLS reduce 49 + TRGCONST reduce 49 + L2V reduce 49 + MAPSTRING reduce 49 + UNIT reduce 49 + SWITCH reduce 49 + LOCATION reduce 49 + STATTXTTBL reduce 49 + VARRAY reduce 49 + STATIC reduce 49 + CONST reduce 49 + INC reduce 49 + DEC reduce 49 + ONCE reduce 49 + IF reduce 49 + SWITCHCASE reduce 49 + CASE reduce 49 + DEFAULT reduce 49 + WHILE reduce 49 + FOR reduce 49 + FOREACH reduce 49 + CONTINUE reduce 49 + BREAK reduce 49 + RETURN reduce 49 + ACTIONNAME reduce 49 + +State 183: + (48) bodyStmt ::= funcexprStmt SEMICOLON * + + $ reduce 48 + ELSE reduce 48 + QMARK reduce 48 + COMMA reduce 48 + LOR reduce 48 + LAND reduce 48 + EQ reduce 48 + LE reduce 48 + LT reduce 48 + GE reduce 48 + GT reduce 48 + NE reduce 48 + BITOR reduce 48 + BITXOR reduce 48 + BITAND reduce 48 + LSHIFT reduce 48 + RSHIFT reduce 48 + PLUS reduce 48 + MINUS reduce 48 + DIVIDE reduce 48 + MULTIPLY reduce 48 + MOD reduce 48 + BITNOT reduce 48 + LPAREN reduce 48 + LSQBRACKET reduce 48 + PERIOD reduce 48 + SEMICOLON reduce 48 + IMPORT reduce 48 + NAME reduce 48 + COLON reduce 48 + FUNCTION reduce 48 + RPAREN reduce 48 + OBJECT reduce 48 + LBRACKET reduce 48 + VAR reduce 48 + RBRACKET reduce 48 + NUMBER reduce 48 + RSQBRACKET reduce 48 + KILLS reduce 48 + TRGCONST reduce 48 + L2V reduce 48 + MAPSTRING reduce 48 + UNIT reduce 48 + SWITCH reduce 48 + LOCATION reduce 48 + STATTXTTBL reduce 48 + VARRAY reduce 48 + STATIC reduce 48 + CONST reduce 48 + INC reduce 48 + DEC reduce 48 + ONCE reduce 48 + IF reduce 48 + SWITCHCASE reduce 48 + CASE reduce 48 + DEFAULT reduce 48 + WHILE reduce 48 + FOR reduce 48 + FOREACH reduce 48 + CONTINUE reduce 48 + BREAK reduce 48 + RETURN reduce 48 + ACTIONNAME reduce 48 + +State 184: + (47) bodyStmt ::= assign_stmt SEMICOLON * + + $ reduce 47 + ELSE reduce 47 + QMARK reduce 47 + COMMA reduce 47 + LOR reduce 47 + LAND reduce 47 + EQ reduce 47 + LE reduce 47 + LT reduce 47 + GE reduce 47 + GT reduce 47 + NE reduce 47 + BITOR reduce 47 + BITXOR reduce 47 + BITAND reduce 47 + LSHIFT reduce 47 + RSHIFT reduce 47 + PLUS reduce 47 + MINUS reduce 47 + DIVIDE reduce 47 + MULTIPLY reduce 47 + MOD reduce 47 + BITNOT reduce 47 + LPAREN reduce 47 + LSQBRACKET reduce 47 + PERIOD reduce 47 + SEMICOLON reduce 47 + IMPORT reduce 47 + NAME reduce 47 + COLON reduce 47 + FUNCTION reduce 47 + RPAREN reduce 47 + OBJECT reduce 47 + LBRACKET reduce 47 + VAR reduce 47 + RBRACKET reduce 47 + NUMBER reduce 47 + RSQBRACKET reduce 47 + KILLS reduce 47 + TRGCONST reduce 47 + L2V reduce 47 + MAPSTRING reduce 47 + UNIT reduce 47 + SWITCH reduce 47 + LOCATION reduce 47 + STATTXTTBL reduce 47 + VARRAY reduce 47 + STATIC reduce 47 + CONST reduce 47 + INC reduce 47 + DEC reduce 47 + ONCE reduce 47 + IF reduce 47 + SWITCHCASE reduce 47 + CASE reduce 47 + DEFAULT reduce 47 + WHILE reduce 47 + FOR reduce 47 + FOREACH reduce 47 + CONTINUE reduce 47 + BREAK reduce 47 + RETURN reduce 47 + ACTIONNAME reduce 47 + +State 185: + (46) bodyStmt ::= cdef_stmt SEMICOLON * + + $ reduce 46 + ELSE reduce 46 + QMARK reduce 46 + COMMA reduce 46 + LOR reduce 46 + LAND reduce 46 + EQ reduce 46 + LE reduce 46 + LT reduce 46 + GE reduce 46 + GT reduce 46 + NE reduce 46 + BITOR reduce 46 + BITXOR reduce 46 + BITAND reduce 46 + LSHIFT reduce 46 + RSHIFT reduce 46 + PLUS reduce 46 + MINUS reduce 46 + DIVIDE reduce 46 + MULTIPLY reduce 46 + MOD reduce 46 + BITNOT reduce 46 + LPAREN reduce 46 + LSQBRACKET reduce 46 + PERIOD reduce 46 + SEMICOLON reduce 46 + IMPORT reduce 46 + NAME reduce 46 + COLON reduce 46 + FUNCTION reduce 46 + RPAREN reduce 46 + OBJECT reduce 46 + LBRACKET reduce 46 + VAR reduce 46 + RBRACKET reduce 46 + NUMBER reduce 46 + RSQBRACKET reduce 46 + KILLS reduce 46 + TRGCONST reduce 46 + L2V reduce 46 + MAPSTRING reduce 46 + UNIT reduce 46 + SWITCH reduce 46 + LOCATION reduce 46 + STATTXTTBL reduce 46 + VARRAY reduce 46 + STATIC reduce 46 + CONST reduce 46 + INC reduce 46 + DEC reduce 46 + ONCE reduce 46 + IF reduce 46 + SWITCHCASE reduce 46 + CASE reduce 46 + DEFAULT reduce 46 + WHILE reduce 46 + FOR reduce 46 + FOREACH reduce 46 + CONTINUE reduce 46 + BREAK reduce 46 + RETURN reduce 46 + ACTIONNAME reduce 46 + +State 186: + (45) bodyStmt ::= vdefAssign_stmt SEMICOLON * + + $ reduce 45 + ELSE reduce 45 + QMARK reduce 45 + COMMA reduce 45 + LOR reduce 45 + LAND reduce 45 + EQ reduce 45 + LE reduce 45 + LT reduce 45 + GE reduce 45 + GT reduce 45 + NE reduce 45 + BITOR reduce 45 + BITXOR reduce 45 + BITAND reduce 45 + LSHIFT reduce 45 + RSHIFT reduce 45 + PLUS reduce 45 + MINUS reduce 45 + DIVIDE reduce 45 + MULTIPLY reduce 45 + MOD reduce 45 + BITNOT reduce 45 + LPAREN reduce 45 + LSQBRACKET reduce 45 + PERIOD reduce 45 + SEMICOLON reduce 45 + IMPORT reduce 45 + NAME reduce 45 + COLON reduce 45 + FUNCTION reduce 45 + RPAREN reduce 45 + OBJECT reduce 45 + LBRACKET reduce 45 + VAR reduce 45 + RBRACKET reduce 45 + NUMBER reduce 45 + RSQBRACKET reduce 45 + KILLS reduce 45 + TRGCONST reduce 45 + L2V reduce 45 + MAPSTRING reduce 45 + UNIT reduce 45 + SWITCH reduce 45 + LOCATION reduce 45 + STATTXTTBL reduce 45 + VARRAY reduce 45 + STATIC reduce 45 + CONST reduce 45 + INC reduce 45 + DEC reduce 45 + ONCE reduce 45 + IF reduce 45 + SWITCHCASE reduce 45 + CASE reduce 45 + DEFAULT reduce 45 + WHILE reduce 45 + FOR reduce 45 + FOREACH reduce 45 + CONTINUE reduce 45 + BREAK reduce 45 + RETURN reduce 45 + ACTIONNAME reduce 45 + +State 187: + (44) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * + + $ reduce 44 + ELSE reduce 44 + QMARK reduce 44 + COMMA reduce 44 + LOR reduce 44 + LAND reduce 44 + EQ reduce 44 + LE reduce 44 + LT reduce 44 + GE reduce 44 + GT reduce 44 + NE reduce 44 + BITOR reduce 44 + BITXOR reduce 44 + BITAND reduce 44 + LSHIFT reduce 44 + RSHIFT reduce 44 + PLUS reduce 44 + MINUS reduce 44 + DIVIDE reduce 44 + MULTIPLY reduce 44 + MOD reduce 44 + BITNOT reduce 44 + LPAREN reduce 44 + LSQBRACKET reduce 44 + PERIOD reduce 44 + SEMICOLON reduce 44 + IMPORT reduce 44 + NAME reduce 44 + COLON reduce 44 + FUNCTION reduce 44 + RPAREN reduce 44 + OBJECT reduce 44 + LBRACKET reduce 44 + VAR reduce 44 + RBRACKET reduce 44 + NUMBER reduce 44 + RSQBRACKET reduce 44 + KILLS reduce 44 + TRGCONST reduce 44 + L2V reduce 44 + MAPSTRING reduce 44 + UNIT reduce 44 + SWITCH reduce 44 + LOCATION reduce 44 + STATTXTTBL reduce 44 + VARRAY reduce 44 + STATIC reduce 44 + CONST reduce 44 + INC reduce 44 + DEC reduce 44 + ONCE reduce 44 + IF reduce 44 + SWITCHCASE reduce 44 + CASE reduce 44 + DEFAULT reduce 44 + WHILE reduce 44 + FOR reduce 44 + FOREACH reduce 44 + CONTINUE reduce 44 + BREAK reduce 44 + RETURN reduce 44 + ACTIONNAME reduce 44 + +State 188: + (43) bodyStmt ::= vdef_stmt SEMICOLON * + + $ reduce 43 + ELSE reduce 43 + QMARK reduce 43 + COMMA reduce 43 + LOR reduce 43 + LAND reduce 43 + EQ reduce 43 + LE reduce 43 + LT reduce 43 + GE reduce 43 + GT reduce 43 + NE reduce 43 + BITOR reduce 43 + BITXOR reduce 43 + BITAND reduce 43 + LSHIFT reduce 43 + RSHIFT reduce 43 + PLUS reduce 43 + MINUS reduce 43 + DIVIDE reduce 43 + MULTIPLY reduce 43 + MOD reduce 43 + BITNOT reduce 43 + LPAREN reduce 43 + LSQBRACKET reduce 43 + PERIOD reduce 43 + SEMICOLON reduce 43 + IMPORT reduce 43 + NAME reduce 43 + COLON reduce 43 + FUNCTION reduce 43 + RPAREN reduce 43 + OBJECT reduce 43 + LBRACKET reduce 43 + VAR reduce 43 + RBRACKET reduce 43 + NUMBER reduce 43 + RSQBRACKET reduce 43 + KILLS reduce 43 + TRGCONST reduce 43 + L2V reduce 43 + MAPSTRING reduce 43 + UNIT reduce 43 + SWITCH reduce 43 + LOCATION reduce 43 + STATTXTTBL reduce 43 + VARRAY reduce 43 + STATIC reduce 43 + CONST reduce 43 + INC reduce 43 + DEC reduce 43 + ONCE reduce 43 + IF reduce 43 + SWITCHCASE reduce 43 + CASE reduce 43 + DEFAULT reduce 43 + WHILE reduce 43 + FOR reduce 43 + FOREACH reduce 43 + CONTINUE reduce 43 + BREAK reduce 43 + RETURN reduce 43 + ACTIONNAME reduce 43 + +State 189: + (42) bodyStmt ::= SEMICOLON * + + $ reduce 42 + ELSE reduce 42 + QMARK reduce 42 + COMMA reduce 42 + LOR reduce 42 + LAND reduce 42 + EQ reduce 42 + LE reduce 42 + LT reduce 42 + GE reduce 42 + GT reduce 42 + NE reduce 42 + BITOR reduce 42 + BITXOR reduce 42 + BITAND reduce 42 + LSHIFT reduce 42 + RSHIFT reduce 42 + PLUS reduce 42 + MINUS reduce 42 + DIVIDE reduce 42 + MULTIPLY reduce 42 + MOD reduce 42 + BITNOT reduce 42 + LPAREN reduce 42 + LSQBRACKET reduce 42 + PERIOD reduce 42 + SEMICOLON reduce 42 + IMPORT reduce 42 + NAME reduce 42 + COLON reduce 42 + FUNCTION reduce 42 + RPAREN reduce 42 + OBJECT reduce 42 + LBRACKET reduce 42 + VAR reduce 42 + RBRACKET reduce 42 + NUMBER reduce 42 + RSQBRACKET reduce 42 + KILLS reduce 42 + TRGCONST reduce 42 + L2V reduce 42 + MAPSTRING reduce 42 + UNIT reduce 42 + SWITCH reduce 42 + LOCATION reduce 42 + STATTXTTBL reduce 42 + VARRAY reduce 42 + STATIC reduce 42 + CONST reduce 42 + INC reduce 42 + DEC reduce 42 + ONCE reduce 42 + IF reduce 42 + SWITCHCASE reduce 42 + CASE reduce 42 + DEFAULT reduce 42 + WHILE reduce 42 + FOR reduce 42 + FOREACH reduce 42 + CONTINUE reduce 42 + BREAK reduce 42 + RETURN reduce 42 + ACTIONNAME reduce 42 + +State 190: + (41) bodyStmt ::= blockStmt * + + $ reduce 41 + ELSE reduce 41 + QMARK reduce 41 + COMMA reduce 41 + LOR reduce 41 + LAND reduce 41 + EQ reduce 41 + LE reduce 41 + LT reduce 41 + GE reduce 41 + GT reduce 41 + NE reduce 41 + BITOR reduce 41 + BITXOR reduce 41 + BITAND reduce 41 + LSHIFT reduce 41 + RSHIFT reduce 41 + PLUS reduce 41 + MINUS reduce 41 + DIVIDE reduce 41 + MULTIPLY reduce 41 + MOD reduce 41 + BITNOT reduce 41 + LPAREN reduce 41 + LSQBRACKET reduce 41 + PERIOD reduce 41 + SEMICOLON reduce 41 + IMPORT reduce 41 + NAME reduce 41 + COLON reduce 41 + FUNCTION reduce 41 + RPAREN reduce 41 + OBJECT reduce 41 + LBRACKET reduce 41 + VAR reduce 41 + RBRACKET reduce 41 + NUMBER reduce 41 + RSQBRACKET reduce 41 + KILLS reduce 41 + TRGCONST reduce 41 + L2V reduce 41 + MAPSTRING reduce 41 + UNIT reduce 41 + SWITCH reduce 41 + LOCATION reduce 41 + STATTXTTBL reduce 41 + VARRAY reduce 41 + STATIC reduce 41 + CONST reduce 41 + INC reduce 41 + DEC reduce 41 + ONCE reduce 41 + IF reduce 41 + SWITCHCASE reduce 41 + CASE reduce 41 + DEFAULT reduce 41 + WHILE reduce 41 + FOR reduce 41 + FOREACH reduce 41 + CONTINUE reduce 41 + BREAK reduce 41 + RETURN reduce 41 + ACTIONNAME reduce 41 + +State 191: + (38) blockStmt ::= lbracket error RBRACKET * + + $ reduce 38 + ELSE reduce 38 + QMARK reduce 38 + COMMA reduce 38 + LOR reduce 38 + LAND reduce 38 + EQ reduce 38 + LE reduce 38 + LT reduce 38 + GE reduce 38 + GT reduce 38 + NE reduce 38 + BITOR reduce 38 + BITXOR reduce 38 + BITAND reduce 38 + LSHIFT reduce 38 + RSHIFT reduce 38 + PLUS reduce 38 + MINUS reduce 38 + DIVIDE reduce 38 + MULTIPLY reduce 38 + MOD reduce 38 + BITNOT reduce 38 + LPAREN reduce 38 + LSQBRACKET reduce 38 + PERIOD reduce 38 + SEMICOLON reduce 38 + IMPORT reduce 38 + NAME reduce 38 + COLON reduce 38 + FUNCTION reduce 38 + RPAREN reduce 38 + OBJECT reduce 38 + LBRACKET reduce 38 + VAR reduce 38 + RBRACKET reduce 38 + NUMBER reduce 38 + RSQBRACKET reduce 38 + KILLS reduce 38 + TRGCONST reduce 38 + L2V reduce 38 + MAPSTRING reduce 38 + UNIT reduce 38 + SWITCH reduce 38 + LOCATION reduce 38 + STATTXTTBL reduce 38 + VARRAY reduce 38 + STATIC reduce 38 + CONST reduce 38 + INC reduce 38 + DEC reduce 38 + ONCE reduce 38 + IF reduce 38 + SWITCHCASE reduce 38 + CASE reduce 38 + DEFAULT reduce 38 + WHILE reduce 38 + FOR reduce 38 + FOREACH reduce 38 + CONTINUE reduce 38 + BREAK reduce 38 + RETURN reduce 38 + ACTIONNAME reduce 38 + +State 192: + (37) blockStmt ::= blockStmtSub rbracket * + + $ reduce 37 + ELSE reduce 37 + QMARK reduce 37 + COMMA reduce 37 + LOR reduce 37 + LAND reduce 37 + EQ reduce 37 + LE reduce 37 + LT reduce 37 + GE reduce 37 + GT reduce 37 + NE reduce 37 + BITOR reduce 37 + BITXOR reduce 37 + BITAND reduce 37 + LSHIFT reduce 37 + RSHIFT reduce 37 + PLUS reduce 37 + MINUS reduce 37 + DIVIDE reduce 37 + MULTIPLY reduce 37 + MOD reduce 37 + BITNOT reduce 37 + LPAREN reduce 37 + LSQBRACKET reduce 37 + PERIOD reduce 37 + SEMICOLON reduce 37 + IMPORT reduce 37 + NAME reduce 37 + COLON reduce 37 + FUNCTION reduce 37 + RPAREN reduce 37 + OBJECT reduce 37 + LBRACKET reduce 37 + VAR reduce 37 + RBRACKET reduce 37 + NUMBER reduce 37 + RSQBRACKET reduce 37 + KILLS reduce 37 + TRGCONST reduce 37 + L2V reduce 37 + MAPSTRING reduce 37 + UNIT reduce 37 + SWITCH reduce 37 + LOCATION reduce 37 + STATTXTTBL reduce 37 + VARRAY reduce 37 + STATIC reduce 37 + CONST reduce 37 + INC reduce 37 + DEC reduce 37 + ONCE reduce 37 + IF reduce 37 + SWITCHCASE reduce 37 + CASE reduce 37 + DEFAULT reduce 37 + WHILE reduce 37 + FOR reduce 37 + FOREACH reduce 37 + CONTINUE reduce 37 + BREAK reduce 37 + RETURN reduce 37 + ACTIONNAME reduce 37 + +State 193: + (36) rbracket ::= RBRACKET * + + $ reduce 36 + ELSE reduce 36 + QMARK reduce 36 + COMMA reduce 36 + LOR reduce 36 + LAND reduce 36 + EQ reduce 36 + LE reduce 36 + LT reduce 36 + GE reduce 36 + GT reduce 36 + NE reduce 36 + BITOR reduce 36 + BITXOR reduce 36 + BITAND reduce 36 + LSHIFT reduce 36 + RSHIFT reduce 36 + PLUS reduce 36 + MINUS reduce 36 + DIVIDE reduce 36 + MULTIPLY reduce 36 + MOD reduce 36 + BITNOT reduce 36 + LPAREN reduce 36 + LSQBRACKET reduce 36 + PERIOD reduce 36 + SEMICOLON reduce 36 + IMPORT reduce 36 + NAME reduce 36 + COLON reduce 36 + FUNCTION reduce 36 + RPAREN reduce 36 + OBJECT reduce 36 + LBRACKET reduce 36 + VAR reduce 36 + RBRACKET reduce 36 + NUMBER reduce 36 + RSQBRACKET reduce 36 + KILLS reduce 36 + TRGCONST reduce 36 + L2V reduce 36 + MAPSTRING reduce 36 + UNIT reduce 36 + SWITCH reduce 36 + LOCATION reduce 36 + STATTXTTBL reduce 36 + VARRAY reduce 36 + STATIC reduce 36 + CONST reduce 36 + INC reduce 36 + DEC reduce 36 + ONCE reduce 36 + IF reduce 36 + SWITCHCASE reduce 36 + CASE reduce 36 + DEFAULT reduce 36 + WHILE reduce 36 + FOR reduce 36 + FOREACH reduce 36 + CONTINUE reduce 36 + BREAK reduce 36 + RETURN reduce 36 + ACTIONNAME reduce 36 + +State 194: + (34) stmt ::= bodyStmt * + + $ reduce 34 + ELSE reduce 34 + QMARK reduce 34 + COMMA reduce 34 + LOR reduce 34 + LAND reduce 34 + EQ reduce 34 + LE reduce 34 + LT reduce 34 + GE reduce 34 + GT reduce 34 + NE reduce 34 + BITOR reduce 34 + BITXOR reduce 34 + BITAND reduce 34 + LSHIFT reduce 34 + RSHIFT reduce 34 + PLUS reduce 34 + MINUS reduce 34 + DIVIDE reduce 34 + MULTIPLY reduce 34 + MOD reduce 34 + BITNOT reduce 34 + LPAREN reduce 34 + LSQBRACKET reduce 34 + PERIOD reduce 34 + SEMICOLON reduce 34 + IMPORT reduce 34 + NAME reduce 34 + COLON reduce 34 + FUNCTION reduce 34 + RPAREN reduce 34 + OBJECT reduce 34 + LBRACKET reduce 34 + VAR reduce 34 + RBRACKET reduce 34 + NUMBER reduce 34 + RSQBRACKET reduce 34 + KILLS reduce 34 + TRGCONST reduce 34 + L2V reduce 34 + MAPSTRING reduce 34 + UNIT reduce 34 + SWITCH reduce 34 + LOCATION reduce 34 + STATTXTTBL reduce 34 + VARRAY reduce 34 + STATIC reduce 34 + CONST reduce 34 + INC reduce 34 + DEC reduce 34 + ONCE reduce 34 + IF reduce 34 + SWITCHCASE reduce 34 + CASE reduce 34 + DEFAULT reduce 34 + WHILE reduce 34 + FOR reduce 34 + FOREACH reduce 34 + CONTINUE reduce 34 + BREAK reduce 34 + RETURN reduce 34 + ACTIONNAME reduce 34 + +State 195: + (33) stmt ::= error SEMICOLON * + + $ reduce 33 + ELSE reduce 33 + QMARK reduce 33 + COMMA reduce 33 + LOR reduce 33 + LAND reduce 33 + EQ reduce 33 + LE reduce 33 + LT reduce 33 + GE reduce 33 + GT reduce 33 + NE reduce 33 + BITOR reduce 33 + BITXOR reduce 33 + BITAND reduce 33 + LSHIFT reduce 33 + RSHIFT reduce 33 + PLUS reduce 33 + MINUS reduce 33 + DIVIDE reduce 33 + MULTIPLY reduce 33 + MOD reduce 33 + BITNOT reduce 33 + LPAREN reduce 33 + LSQBRACKET reduce 33 + PERIOD reduce 33 + SEMICOLON reduce 33 + IMPORT reduce 33 + NAME reduce 33 + COLON reduce 33 + FUNCTION reduce 33 + RPAREN reduce 33 + OBJECT reduce 33 + LBRACKET reduce 33 + VAR reduce 33 + RBRACKET reduce 33 + NUMBER reduce 33 + RSQBRACKET reduce 33 + KILLS reduce 33 + TRGCONST reduce 33 + L2V reduce 33 + MAPSTRING reduce 33 + UNIT reduce 33 + SWITCH reduce 33 + LOCATION reduce 33 + STATTXTTBL reduce 33 + VARRAY reduce 33 + STATIC reduce 33 + CONST reduce 33 + INC reduce 33 + DEC reduce 33 + ONCE reduce 33 + IF reduce 33 + SWITCHCASE reduce 33 + CASE reduce 33 + DEFAULT reduce 33 + WHILE reduce 33 + FOR reduce 33 + FOREACH reduce 33 + CONTINUE reduce 33 + BREAK reduce 33 + RETURN reduce 33 + ACTIONNAME reduce 33 + +State 196: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -16860,27 +19556,82 @@ State 161: constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - (182) logicExpr ::= nonConstExpr GT constExpr * + (181) logicExpr ::= nonConstExpr GT constExpr * + QMARK reduce 181 + COMMA reduce 181 + LOR reduce 181 + LAND reduce 181 EQ error + EQ reduce 181 LE error + LE reduce 181 LT error + LT reduce 181 GE error + GE reduce 181 GT error + GT reduce 181 NE error + NE reduce 181 BITOR shift 102 + BITOR reduce 181 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 181 -- dropped by precedence BITAND shift 103 + BITAND reduce 181 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 181 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 181 -- dropped by precedence PLUS shift 113 + PLUS reduce 181 -- dropped by precedence MINUS shift 112 + MINUS reduce 181 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 181 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 181 -- dropped by precedence MOD shift 106 - {default} reduce 182 + MOD reduce 181 -- dropped by precedence + BITNOT reduce 181 + LPAREN reduce 181 + LSQBRACKET reduce 181 + PERIOD reduce 181 + SEMICOLON reduce 181 + NAME reduce 181 + COLON reduce 181 + FUNCTION reduce 181 + RPAREN reduce 181 + LBRACKET reduce 181 + VAR reduce 181 + NUMBER reduce 181 + RSQBRACKET reduce 181 + KILLS reduce 181 + TRGCONST reduce 181 + L2V reduce 181 + MAPSTRING reduce 181 + UNIT reduce 181 + SWITCH reduce 181 + LOCATION reduce 181 + STATTXTTBL reduce 181 + VARRAY reduce 181 + STATIC reduce 181 + CONST reduce 181 + INC reduce 181 + DEC reduce 181 + ONCE reduce 181 + IF reduce 181 + SWITCHCASE reduce 181 + WHILE reduce 181 + FOR reduce 181 + FOREACH reduce 181 + CONTINUE reduce 181 + BREAK reduce 181 + RETURN reduce 181 + ACTIONNAME reduce 181 -State 162: +State 197: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -16906,28 +19657,83 @@ State 162: constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr - (178) logicExpr ::= nonConstExpr LT constExpr * + (177) logicExpr ::= nonConstExpr LT constExpr * constExpr ::= constExpr * GT constExpr + QMARK reduce 177 + COMMA reduce 177 + LOR reduce 177 + LAND reduce 177 EQ error + EQ reduce 177 LE error + LE reduce 177 LT error + LT reduce 177 GE error + GE reduce 177 GT error + GT reduce 177 NE error + NE reduce 177 BITOR shift 102 + BITOR reduce 177 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 177 -- dropped by precedence BITAND shift 103 + BITAND reduce 177 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 177 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 177 -- dropped by precedence PLUS shift 113 + PLUS reduce 177 -- dropped by precedence MINUS shift 112 + MINUS reduce 177 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 177 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 177 -- dropped by precedence MOD shift 106 - {default} reduce 178 + MOD reduce 177 -- dropped by precedence + BITNOT reduce 177 + LPAREN reduce 177 + LSQBRACKET reduce 177 + PERIOD reduce 177 + SEMICOLON reduce 177 + NAME reduce 177 + COLON reduce 177 + FUNCTION reduce 177 + RPAREN reduce 177 + LBRACKET reduce 177 + VAR reduce 177 + NUMBER reduce 177 + RSQBRACKET reduce 177 + KILLS reduce 177 + TRGCONST reduce 177 + L2V reduce 177 + MAPSTRING reduce 177 + UNIT reduce 177 + SWITCH reduce 177 + LOCATION reduce 177 + STATTXTTBL reduce 177 + VARRAY reduce 177 + STATIC reduce 177 + CONST reduce 177 + INC reduce 177 + DEC reduce 177 + ONCE reduce 177 + IF reduce 177 + SWITCHCASE reduce 177 + WHILE reduce 177 + FOR reduce 177 + FOREACH reduce 177 + CONTINUE reduce 177 + BREAK reduce 177 + RETURN reduce 177 + ACTIONNAME reduce 177 -State 163: +State 198: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -16952,29 +19758,84 @@ State 163: constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr - (174) logicExpr ::= nonConstExpr GE constExpr * + (173) logicExpr ::= nonConstExpr GE constExpr * constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 173 + COMMA reduce 173 + LOR reduce 173 + LAND reduce 173 EQ error + EQ reduce 173 LE error + LE reduce 173 LT error + LT reduce 173 GE error + GE reduce 173 GT error + GT reduce 173 NE error + NE reduce 173 BITOR shift 102 + BITOR reduce 173 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 173 -- dropped by precedence BITAND shift 103 + BITAND reduce 173 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 173 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 173 -- dropped by precedence PLUS shift 113 + PLUS reduce 173 -- dropped by precedence MINUS shift 112 + MINUS reduce 173 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 173 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 173 -- dropped by precedence MOD shift 106 - {default} reduce 174 + MOD reduce 173 -- dropped by precedence + BITNOT reduce 173 + LPAREN reduce 173 + LSQBRACKET reduce 173 + PERIOD reduce 173 + SEMICOLON reduce 173 + NAME reduce 173 + COLON reduce 173 + FUNCTION reduce 173 + RPAREN reduce 173 + LBRACKET reduce 173 + VAR reduce 173 + NUMBER reduce 173 + RSQBRACKET reduce 173 + KILLS reduce 173 + TRGCONST reduce 173 + L2V reduce 173 + MAPSTRING reduce 173 + UNIT reduce 173 + SWITCH reduce 173 + LOCATION reduce 173 + STATTXTTBL reduce 173 + VARRAY reduce 173 + STATIC reduce 173 + CONST reduce 173 + INC reduce 173 + DEC reduce 173 + ONCE reduce 173 + IF reduce 173 + SWITCHCASE reduce 173 + WHILE reduce 173 + FOR reduce 173 + FOREACH reduce 173 + CONTINUE reduce 173 + BREAK reduce 173 + RETURN reduce 173 + ACTIONNAME reduce 173 -State 164: +State 199: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -16998,30 +19859,85 @@ State 164: constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr - (170) logicExpr ::= nonConstExpr LE constExpr * + (169) logicExpr ::= nonConstExpr LE constExpr * constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 169 + COMMA reduce 169 + LOR reduce 169 + LAND reduce 169 EQ error + EQ reduce 169 LE error + LE reduce 169 LT error + LT reduce 169 GE error + GE reduce 169 GT error + GT reduce 169 NE error + NE reduce 169 BITOR shift 102 + BITOR reduce 169 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 169 -- dropped by precedence BITAND shift 103 + BITAND reduce 169 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 169 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 169 -- dropped by precedence PLUS shift 113 + PLUS reduce 169 -- dropped by precedence MINUS shift 112 + MINUS reduce 169 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 169 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 169 -- dropped by precedence MOD shift 106 - {default} reduce 170 + MOD reduce 169 -- dropped by precedence + BITNOT reduce 169 + LPAREN reduce 169 + LSQBRACKET reduce 169 + PERIOD reduce 169 + SEMICOLON reduce 169 + NAME reduce 169 + COLON reduce 169 + FUNCTION reduce 169 + RPAREN reduce 169 + LBRACKET reduce 169 + VAR reduce 169 + NUMBER reduce 169 + RSQBRACKET reduce 169 + KILLS reduce 169 + TRGCONST reduce 169 + L2V reduce 169 + MAPSTRING reduce 169 + UNIT reduce 169 + SWITCH reduce 169 + LOCATION reduce 169 + STATTXTTBL reduce 169 + VARRAY reduce 169 + STATIC reduce 169 + CONST reduce 169 + INC reduce 169 + DEC reduce 169 + ONCE reduce 169 + IF reduce 169 + SWITCHCASE reduce 169 + WHILE reduce 169 + FOR reduce 169 + FOREACH reduce 169 + CONTINUE reduce 169 + BREAK reduce 169 + RETURN reduce 169 + ACTIONNAME reduce 169 -State 165: +State 200: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17044,31 +19960,86 @@ State 165: nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr - (166) logicExpr ::= nonConstExpr NE constExpr * + (165) logicExpr ::= nonConstExpr NE constExpr * constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 165 + COMMA reduce 165 + LOR reduce 165 + LAND reduce 165 EQ error + EQ reduce 165 LE error + LE reduce 165 LT error + LT reduce 165 GE error + GE reduce 165 GT error + GT reduce 165 NE error + NE reduce 165 BITOR shift 102 + BITOR reduce 165 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 165 -- dropped by precedence BITAND shift 103 + BITAND reduce 165 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 165 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 165 -- dropped by precedence PLUS shift 113 + PLUS reduce 165 -- dropped by precedence MINUS shift 112 + MINUS reduce 165 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 165 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 165 -- dropped by precedence MOD shift 106 - {default} reduce 166 + MOD reduce 165 -- dropped by precedence + BITNOT reduce 165 + LPAREN reduce 165 + LSQBRACKET reduce 165 + PERIOD reduce 165 + SEMICOLON reduce 165 + NAME reduce 165 + COLON reduce 165 + FUNCTION reduce 165 + RPAREN reduce 165 + LBRACKET reduce 165 + VAR reduce 165 + NUMBER reduce 165 + RSQBRACKET reduce 165 + KILLS reduce 165 + TRGCONST reduce 165 + L2V reduce 165 + MAPSTRING reduce 165 + UNIT reduce 165 + SWITCH reduce 165 + LOCATION reduce 165 + STATTXTTBL reduce 165 + VARRAY reduce 165 + STATIC reduce 165 + CONST reduce 165 + INC reduce 165 + DEC reduce 165 + ONCE reduce 165 + IF reduce 165 + SWITCHCASE reduce 165 + WHILE reduce 165 + FOR reduce 165 + FOREACH reduce 165 + CONTINUE reduce 165 + BREAK reduce 165 + RETURN reduce 165 + ACTIONNAME reduce 165 -State 166: +State 201: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17090,77 +20061,87 @@ State 166: constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr - (162) logicExpr ::= nonConstExpr EQ constExpr * + (161) logicExpr ::= nonConstExpr EQ constExpr * constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 161 + COMMA reduce 161 + LOR reduce 161 + LAND reduce 161 EQ error + EQ reduce 161 LE error + LE reduce 161 LT error + LT reduce 161 GE error + GE reduce 161 GT error + GT reduce 161 NE error + NE reduce 161 BITOR shift 102 + BITOR reduce 161 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 161 -- dropped by precedence BITAND shift 103 + BITAND reduce 161 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 161 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 161 -- dropped by precedence PLUS shift 113 + PLUS reduce 161 -- dropped by precedence MINUS shift 112 + MINUS reduce 161 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 161 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 161 -- dropped by precedence MOD shift 106 - {default} reduce 162 - -State 167: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - - EQ shift 138 - LE shift 125 - LT shift 123 - GE shift 124 - GT shift 122 - NE shift 126 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 + MOD reduce 161 -- dropped by precedence + BITNOT reduce 161 + LPAREN reduce 161 + LSQBRACKET reduce 161 + PERIOD reduce 161 + SEMICOLON reduce 161 + NAME reduce 161 + COLON reduce 161 + FUNCTION reduce 161 + RPAREN reduce 161 + LBRACKET reduce 161 + VAR reduce 161 + NUMBER reduce 161 + RSQBRACKET reduce 161 + KILLS reduce 161 + TRGCONST reduce 161 + L2V reduce 161 + MAPSTRING reduce 161 + UNIT reduce 161 + SWITCH reduce 161 + LOCATION reduce 161 + STATTXTTBL reduce 161 + VARRAY reduce 161 + STATIC reduce 161 + CONST reduce 161 + INC reduce 161 + DEC reduce 161 + ONCE reduce 161 + IF reduce 161 + SWITCHCASE reduce 161 + WHILE reduce 161 + FOR reduce 161 + FOREACH reduce 161 + CONTINUE reduce 161 + BREAK reduce 161 + RETURN reduce 161 + ACTIONNAME reduce 161 -State 168: +State 202: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17187,27 +20168,82 @@ State 168: constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - (180) constExpr ::= constExpr GT constExpr * + (179) constExpr ::= constExpr GT constExpr * + QMARK reduce 179 + COMMA reduce 179 + LOR reduce 179 + LAND reduce 179 EQ error + EQ reduce 179 LE error + LE reduce 179 LT error + LT reduce 179 GE error + GE reduce 179 GT error + GT reduce 179 NE error + NE reduce 179 BITOR shift 102 + BITOR reduce 179 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 179 -- dropped by precedence BITAND shift 103 + BITAND reduce 179 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 179 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 179 -- dropped by precedence PLUS shift 113 + PLUS reduce 179 -- dropped by precedence MINUS shift 112 + MINUS reduce 179 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 179 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 179 -- dropped by precedence MOD shift 106 - {default} reduce 180 + MOD reduce 179 -- dropped by precedence + BITNOT reduce 179 + LPAREN reduce 179 + LSQBRACKET reduce 179 + PERIOD reduce 179 + SEMICOLON reduce 179 + NAME reduce 179 + COLON reduce 179 + FUNCTION reduce 179 + RPAREN reduce 179 + LBRACKET reduce 179 + VAR reduce 179 + NUMBER reduce 179 + RSQBRACKET reduce 179 + KILLS reduce 179 + TRGCONST reduce 179 + L2V reduce 179 + MAPSTRING reduce 179 + UNIT reduce 179 + SWITCH reduce 179 + LOCATION reduce 179 + STATTXTTBL reduce 179 + VARRAY reduce 179 + STATIC reduce 179 + CONST reduce 179 + INC reduce 179 + DEC reduce 179 + ONCE reduce 179 + IF reduce 179 + SWITCHCASE reduce 179 + WHILE reduce 179 + FOR reduce 179 + FOREACH reduce 179 + CONTINUE reduce 179 + BREAK reduce 179 + RETURN reduce 179 + ACTIONNAME reduce 179 -State 169: +State 203: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17233,28 +20269,83 @@ State 169: constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr - (176) constExpr ::= constExpr LT constExpr * + (175) constExpr ::= constExpr LT constExpr * constExpr ::= constExpr * GT constExpr + QMARK reduce 175 + COMMA reduce 175 + LOR reduce 175 + LAND reduce 175 EQ error + EQ reduce 175 LE error + LE reduce 175 LT error + LT reduce 175 GE error + GE reduce 175 GT error + GT reduce 175 NE error + NE reduce 175 BITOR shift 102 + BITOR reduce 175 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 175 -- dropped by precedence BITAND shift 103 + BITAND reduce 175 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 175 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 175 -- dropped by precedence PLUS shift 113 + PLUS reduce 175 -- dropped by precedence MINUS shift 112 + MINUS reduce 175 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 175 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 175 -- dropped by precedence MOD shift 106 - {default} reduce 176 + MOD reduce 175 -- dropped by precedence + BITNOT reduce 175 + LPAREN reduce 175 + LSQBRACKET reduce 175 + PERIOD reduce 175 + SEMICOLON reduce 175 + NAME reduce 175 + COLON reduce 175 + FUNCTION reduce 175 + RPAREN reduce 175 + LBRACKET reduce 175 + VAR reduce 175 + NUMBER reduce 175 + RSQBRACKET reduce 175 + KILLS reduce 175 + TRGCONST reduce 175 + L2V reduce 175 + MAPSTRING reduce 175 + UNIT reduce 175 + SWITCH reduce 175 + LOCATION reduce 175 + STATTXTTBL reduce 175 + VARRAY reduce 175 + STATIC reduce 175 + CONST reduce 175 + INC reduce 175 + DEC reduce 175 + ONCE reduce 175 + IF reduce 175 + SWITCHCASE reduce 175 + WHILE reduce 175 + FOR reduce 175 + FOREACH reduce 175 + CONTINUE reduce 175 + BREAK reduce 175 + RETURN reduce 175 + ACTIONNAME reduce 175 -State 170: +State 204: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17279,29 +20370,84 @@ State 170: constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr - (172) constExpr ::= constExpr GE constExpr * + (171) constExpr ::= constExpr GE constExpr * constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 171 + COMMA reduce 171 + LOR reduce 171 + LAND reduce 171 EQ error + EQ reduce 171 LE error + LE reduce 171 LT error + LT reduce 171 GE error + GE reduce 171 GT error + GT reduce 171 NE error + NE reduce 171 BITOR shift 102 + BITOR reduce 171 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 171 -- dropped by precedence BITAND shift 103 + BITAND reduce 171 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 171 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 171 -- dropped by precedence PLUS shift 113 + PLUS reduce 171 -- dropped by precedence MINUS shift 112 + MINUS reduce 171 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 171 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 171 -- dropped by precedence MOD shift 106 - {default} reduce 172 + MOD reduce 171 -- dropped by precedence + BITNOT reduce 171 + LPAREN reduce 171 + LSQBRACKET reduce 171 + PERIOD reduce 171 + SEMICOLON reduce 171 + NAME reduce 171 + COLON reduce 171 + FUNCTION reduce 171 + RPAREN reduce 171 + LBRACKET reduce 171 + VAR reduce 171 + NUMBER reduce 171 + RSQBRACKET reduce 171 + KILLS reduce 171 + TRGCONST reduce 171 + L2V reduce 171 + MAPSTRING reduce 171 + UNIT reduce 171 + SWITCH reduce 171 + LOCATION reduce 171 + STATTXTTBL reduce 171 + VARRAY reduce 171 + STATIC reduce 171 + CONST reduce 171 + INC reduce 171 + DEC reduce 171 + ONCE reduce 171 + IF reduce 171 + SWITCHCASE reduce 171 + WHILE reduce 171 + FOR reduce 171 + FOREACH reduce 171 + CONTINUE reduce 171 + BREAK reduce 171 + RETURN reduce 171 + ACTIONNAME reduce 171 -State 171: +State 205: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17325,30 +20471,85 @@ State 171: constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr - (168) constExpr ::= constExpr LE constExpr * + (167) constExpr ::= constExpr LE constExpr * constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 167 + COMMA reduce 167 + LOR reduce 167 + LAND reduce 167 EQ error + EQ reduce 167 LE error + LE reduce 167 LT error + LT reduce 167 GE error + GE reduce 167 GT error + GT reduce 167 NE error + NE reduce 167 BITOR shift 102 + BITOR reduce 167 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 167 -- dropped by precedence BITAND shift 103 + BITAND reduce 167 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 167 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 167 -- dropped by precedence PLUS shift 113 + PLUS reduce 167 -- dropped by precedence MINUS shift 112 + MINUS reduce 167 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 167 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 167 -- dropped by precedence MOD shift 106 - {default} reduce 168 + MOD reduce 167 -- dropped by precedence + BITNOT reduce 167 + LPAREN reduce 167 + LSQBRACKET reduce 167 + PERIOD reduce 167 + SEMICOLON reduce 167 + NAME reduce 167 + COLON reduce 167 + FUNCTION reduce 167 + RPAREN reduce 167 + LBRACKET reduce 167 + VAR reduce 167 + NUMBER reduce 167 + RSQBRACKET reduce 167 + KILLS reduce 167 + TRGCONST reduce 167 + L2V reduce 167 + MAPSTRING reduce 167 + UNIT reduce 167 + SWITCH reduce 167 + LOCATION reduce 167 + STATTXTTBL reduce 167 + VARRAY reduce 167 + STATIC reduce 167 + CONST reduce 167 + INC reduce 167 + DEC reduce 167 + ONCE reduce 167 + IF reduce 167 + SWITCHCASE reduce 167 + WHILE reduce 167 + FOR reduce 167 + FOREACH reduce 167 + CONTINUE reduce 167 + BREAK reduce 167 + RETURN reduce 167 + ACTIONNAME reduce 167 -State 172: +State 206: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17371,31 +20572,86 @@ State 172: nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr - (164) constExpr ::= constExpr NE constExpr * + (163) constExpr ::= constExpr NE constExpr * constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 163 + COMMA reduce 163 + LOR reduce 163 + LAND reduce 163 EQ error + EQ reduce 163 LE error + LE reduce 163 LT error + LT reduce 163 GE error + GE reduce 163 GT error + GT reduce 163 NE error + NE reduce 163 BITOR shift 102 + BITOR reduce 163 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 163 -- dropped by precedence BITAND shift 103 + BITAND reduce 163 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 163 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 163 -- dropped by precedence PLUS shift 113 + PLUS reduce 163 -- dropped by precedence MINUS shift 112 + MINUS reduce 163 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 163 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 163 -- dropped by precedence MOD shift 106 - {default} reduce 164 + MOD reduce 163 -- dropped by precedence + BITNOT reduce 163 + LPAREN reduce 163 + LSQBRACKET reduce 163 + PERIOD reduce 163 + SEMICOLON reduce 163 + NAME reduce 163 + COLON reduce 163 + FUNCTION reduce 163 + RPAREN reduce 163 + LBRACKET reduce 163 + VAR reduce 163 + NUMBER reduce 163 + RSQBRACKET reduce 163 + KILLS reduce 163 + TRGCONST reduce 163 + L2V reduce 163 + MAPSTRING reduce 163 + UNIT reduce 163 + SWITCH reduce 163 + LOCATION reduce 163 + STATTXTTBL reduce 163 + VARRAY reduce 163 + STATIC reduce 163 + CONST reduce 163 + INC reduce 163 + DEC reduce 163 + ONCE reduce 163 + IF reduce 163 + SWITCHCASE reduce 163 + WHILE reduce 163 + FOR reduce 163 + FOREACH reduce 163 + CONTINUE reduce 163 + BREAK reduce 163 + RETURN reduce 163 + ACTIONNAME reduce 163 -State 173: +State 207: constExpr ::= constExpr * PLUS constExpr nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr @@ -17417,32 +20673,87 @@ State 173: constExpr ::= constExpr * BITXOR constExpr nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr - (160) constExpr ::= constExpr EQ constExpr * + (159) constExpr ::= constExpr EQ constExpr * constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 159 + COMMA reduce 159 + LOR reduce 159 + LAND reduce 159 EQ error + EQ reduce 159 LE error + LE reduce 159 LT error + LT reduce 159 GE error + GE reduce 159 GT error + GT reduce 159 NE error + NE reduce 159 BITOR shift 102 + BITOR reduce 159 -- dropped by precedence BITXOR shift 101 + BITXOR reduce 159 -- dropped by precedence BITAND shift 103 + BITAND reduce 159 -- dropped by precedence LSHIFT shift 105 + LSHIFT reduce 159 -- dropped by precedence RSHIFT shift 104 + RSHIFT reduce 159 -- dropped by precedence PLUS shift 113 + PLUS reduce 159 -- dropped by precedence MINUS shift 112 + MINUS reduce 159 -- dropped by precedence DIVIDE shift 107 + DIVIDE reduce 159 -- dropped by precedence MULTIPLY shift 108 + MULTIPLY reduce 159 -- dropped by precedence MOD shift 106 - {default} reduce 160 + MOD reduce 159 -- dropped by precedence + BITNOT reduce 159 + LPAREN reduce 159 + LSQBRACKET reduce 159 + PERIOD reduce 159 + SEMICOLON reduce 159 + NAME reduce 159 + COLON reduce 159 + FUNCTION reduce 159 + RPAREN reduce 159 + LBRACKET reduce 159 + VAR reduce 159 + NUMBER reduce 159 + RSQBRACKET reduce 159 + KILLS reduce 159 + TRGCONST reduce 159 + L2V reduce 159 + MAPSTRING reduce 159 + UNIT reduce 159 + SWITCH reduce 159 + LOCATION reduce 159 + STATTXTTBL reduce 159 + VARRAY reduce 159 + STATIC reduce 159 + CONST reduce 159 + INC reduce 159 + DEC reduce 159 + ONCE reduce 159 + IF reduce 159 + SWITCHCASE reduce 159 + WHILE reduce 159 + FOR reduce 159 + FOREACH reduce 159 + CONTINUE reduce 159 + BREAK reduce 159 + RETURN reduce 159 + ACTIONNAME reduce 159 -State 174: +State 208: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -17454,32 +20765,87 @@ State 174: constExpr ::= constExpr * BITOR constExpr constExpr ::= constExpr * BITXOR constExpr constExpr ::= constExpr * EQ constExpr - (160) constExpr ::= constExpr EQ constExpr * + (159) constExpr ::= constExpr EQ constExpr * constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 159 + COMMA reduce 159 + LOR reduce 159 + LAND reduce 159 EQ error + EQ reduce 159 LE error + LE reduce 159 LT error + LT reduce 159 GE error + GE reduce 159 GT error + GT reduce 159 NE error + NE reduce 159 BITOR shift 128 + BITOR reduce 159 -- dropped by precedence BITXOR shift 127 + BITXOR reduce 159 -- dropped by precedence BITAND shift 129 + BITAND reduce 159 -- dropped by precedence LSHIFT shift 131 + LSHIFT reduce 159 -- dropped by precedence RSHIFT shift 130 + RSHIFT reduce 159 -- dropped by precedence PLUS shift 136 + PLUS reduce 159 -- dropped by precedence MINUS shift 135 + MINUS reduce 159 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 159 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 159 -- dropped by precedence MOD shift 132 - {default} reduce 160 + MOD reduce 159 -- dropped by precedence + BITNOT reduce 159 + LPAREN reduce 159 + LSQBRACKET reduce 159 + PERIOD reduce 159 + SEMICOLON reduce 159 + NAME reduce 159 + COLON reduce 159 + FUNCTION reduce 159 + RPAREN reduce 159 + LBRACKET reduce 159 + VAR reduce 159 + NUMBER reduce 159 + RSQBRACKET reduce 159 + KILLS reduce 159 + TRGCONST reduce 159 + L2V reduce 159 + MAPSTRING reduce 159 + UNIT reduce 159 + SWITCH reduce 159 + LOCATION reduce 159 + STATTXTTBL reduce 159 + VARRAY reduce 159 + STATIC reduce 159 + CONST reduce 159 + INC reduce 159 + DEC reduce 159 + ONCE reduce 159 + IF reduce 159 + SWITCHCASE reduce 159 + WHILE reduce 159 + FOR reduce 159 + FOREACH reduce 159 + CONTINUE reduce 159 + BREAK reduce 159 + RETURN reduce 159 + ACTIONNAME reduce 159 -State 175: +State 209: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -17496,27 +20862,82 @@ State 175: constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - (180) constExpr ::= constExpr GT constExpr * + (179) constExpr ::= constExpr GT constExpr * + QMARK reduce 179 + COMMA reduce 179 + LOR reduce 179 + LAND reduce 179 EQ error + EQ reduce 179 LE error + LE reduce 179 LT error + LT reduce 179 GE error + GE reduce 179 GT error + GT reduce 179 NE error + NE reduce 179 BITOR shift 128 + BITOR reduce 179 -- dropped by precedence BITXOR shift 127 + BITXOR reduce 179 -- dropped by precedence BITAND shift 129 + BITAND reduce 179 -- dropped by precedence LSHIFT shift 131 + LSHIFT reduce 179 -- dropped by precedence RSHIFT shift 130 + RSHIFT reduce 179 -- dropped by precedence PLUS shift 136 + PLUS reduce 179 -- dropped by precedence MINUS shift 135 + MINUS reduce 179 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 179 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 179 -- dropped by precedence MOD shift 132 - {default} reduce 180 + MOD reduce 179 -- dropped by precedence + BITNOT reduce 179 + LPAREN reduce 179 + LSQBRACKET reduce 179 + PERIOD reduce 179 + SEMICOLON reduce 179 + NAME reduce 179 + COLON reduce 179 + FUNCTION reduce 179 + RPAREN reduce 179 + LBRACKET reduce 179 + VAR reduce 179 + NUMBER reduce 179 + RSQBRACKET reduce 179 + KILLS reduce 179 + TRGCONST reduce 179 + L2V reduce 179 + MAPSTRING reduce 179 + UNIT reduce 179 + SWITCH reduce 179 + LOCATION reduce 179 + STATTXTTBL reduce 179 + VARRAY reduce 179 + STATIC reduce 179 + CONST reduce 179 + INC reduce 179 + DEC reduce 179 + ONCE reduce 179 + IF reduce 179 + SWITCHCASE reduce 179 + WHILE reduce 179 + FOR reduce 179 + FOREACH reduce 179 + CONTINUE reduce 179 + BREAK reduce 179 + RETURN reduce 179 + ACTIONNAME reduce 179 -State 176: +State 210: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -17532,28 +20953,83 @@ State 176: constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr - (176) constExpr ::= constExpr LT constExpr * + (175) constExpr ::= constExpr LT constExpr * constExpr ::= constExpr * GT constExpr + QMARK reduce 175 + COMMA reduce 175 + LOR reduce 175 + LAND reduce 175 EQ error + EQ reduce 175 LE error + LE reduce 175 LT error + LT reduce 175 GE error + GE reduce 175 GT error + GT reduce 175 NE error + NE reduce 175 BITOR shift 128 + BITOR reduce 175 -- dropped by precedence BITXOR shift 127 + BITXOR reduce 175 -- dropped by precedence BITAND shift 129 + BITAND reduce 175 -- dropped by precedence LSHIFT shift 131 + LSHIFT reduce 175 -- dropped by precedence RSHIFT shift 130 + RSHIFT reduce 175 -- dropped by precedence PLUS shift 136 + PLUS reduce 175 -- dropped by precedence MINUS shift 135 + MINUS reduce 175 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 175 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 175 -- dropped by precedence MOD shift 132 - {default} reduce 176 + MOD reduce 175 -- dropped by precedence + BITNOT reduce 175 + LPAREN reduce 175 + LSQBRACKET reduce 175 + PERIOD reduce 175 + SEMICOLON reduce 175 + NAME reduce 175 + COLON reduce 175 + FUNCTION reduce 175 + RPAREN reduce 175 + LBRACKET reduce 175 + VAR reduce 175 + NUMBER reduce 175 + RSQBRACKET reduce 175 + KILLS reduce 175 + TRGCONST reduce 175 + L2V reduce 175 + MAPSTRING reduce 175 + UNIT reduce 175 + SWITCH reduce 175 + LOCATION reduce 175 + STATTXTTBL reduce 175 + VARRAY reduce 175 + STATIC reduce 175 + CONST reduce 175 + INC reduce 175 + DEC reduce 175 + ONCE reduce 175 + IF reduce 175 + SWITCHCASE reduce 175 + WHILE reduce 175 + FOR reduce 175 + FOREACH reduce 175 + CONTINUE reduce 175 + BREAK reduce 175 + RETURN reduce 175 + ACTIONNAME reduce 175 -State 177: +State 211: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -17568,29 +21044,84 @@ State 177: constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr - (172) constExpr ::= constExpr GE constExpr * + (171) constExpr ::= constExpr GE constExpr * constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 171 + COMMA reduce 171 + LOR reduce 171 + LAND reduce 171 EQ error + EQ reduce 171 LE error + LE reduce 171 LT error + LT reduce 171 GE error + GE reduce 171 GT error + GT reduce 171 NE error + NE reduce 171 BITOR shift 128 + BITOR reduce 171 -- dropped by precedence BITXOR shift 127 + BITXOR reduce 171 -- dropped by precedence BITAND shift 129 + BITAND reduce 171 -- dropped by precedence LSHIFT shift 131 + LSHIFT reduce 171 -- dropped by precedence RSHIFT shift 130 + RSHIFT reduce 171 -- dropped by precedence PLUS shift 136 + PLUS reduce 171 -- dropped by precedence MINUS shift 135 + MINUS reduce 171 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 171 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 171 -- dropped by precedence MOD shift 132 - {default} reduce 172 + MOD reduce 171 -- dropped by precedence + BITNOT reduce 171 + LPAREN reduce 171 + LSQBRACKET reduce 171 + PERIOD reduce 171 + SEMICOLON reduce 171 + NAME reduce 171 + COLON reduce 171 + FUNCTION reduce 171 + RPAREN reduce 171 + LBRACKET reduce 171 + VAR reduce 171 + NUMBER reduce 171 + RSQBRACKET reduce 171 + KILLS reduce 171 + TRGCONST reduce 171 + L2V reduce 171 + MAPSTRING reduce 171 + UNIT reduce 171 + SWITCH reduce 171 + LOCATION reduce 171 + STATTXTTBL reduce 171 + VARRAY reduce 171 + STATIC reduce 171 + CONST reduce 171 + INC reduce 171 + DEC reduce 171 + ONCE reduce 171 + IF reduce 171 + SWITCHCASE reduce 171 + WHILE reduce 171 + FOR reduce 171 + FOREACH reduce 171 + CONTINUE reduce 171 + BREAK reduce 171 + RETURN reduce 171 + ACTIONNAME reduce 171 -State 178: +State 212: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -17604,30 +21135,85 @@ State 178: constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr - (168) constExpr ::= constExpr LE constExpr * + (167) constExpr ::= constExpr LE constExpr * constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 167 + COMMA reduce 167 + LOR reduce 167 + LAND reduce 167 EQ error + EQ reduce 167 LE error + LE reduce 167 LT error + LT reduce 167 GE error + GE reduce 167 GT error + GT reduce 167 NE error + NE reduce 167 BITOR shift 128 + BITOR reduce 167 -- dropped by precedence BITXOR shift 127 + BITXOR reduce 167 -- dropped by precedence BITAND shift 129 + BITAND reduce 167 -- dropped by precedence LSHIFT shift 131 + LSHIFT reduce 167 -- dropped by precedence RSHIFT shift 130 + RSHIFT reduce 167 -- dropped by precedence PLUS shift 136 + PLUS reduce 167 -- dropped by precedence MINUS shift 135 + MINUS reduce 167 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 167 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 167 -- dropped by precedence MOD shift 132 - {default} reduce 168 + MOD reduce 167 -- dropped by precedence + BITNOT reduce 167 + LPAREN reduce 167 + LSQBRACKET reduce 167 + PERIOD reduce 167 + SEMICOLON reduce 167 + NAME reduce 167 + COLON reduce 167 + FUNCTION reduce 167 + RPAREN reduce 167 + LBRACKET reduce 167 + VAR reduce 167 + NUMBER reduce 167 + RSQBRACKET reduce 167 + KILLS reduce 167 + TRGCONST reduce 167 + L2V reduce 167 + MAPSTRING reduce 167 + UNIT reduce 167 + SWITCH reduce 167 + LOCATION reduce 167 + STATTXTTBL reduce 167 + VARRAY reduce 167 + STATIC reduce 167 + CONST reduce 167 + INC reduce 167 + DEC reduce 167 + ONCE reduce 167 + IF reduce 167 + SWITCHCASE reduce 167 + WHILE reduce 167 + FOR reduce 167 + FOREACH reduce 167 + CONTINUE reduce 167 + BREAK reduce 167 + RETURN reduce 167 + ACTIONNAME reduce 167 -State 179: +State 213: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -17640,304 +21226,206 @@ State 179: constExpr ::= constExpr * BITXOR constExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr - (164) constExpr ::= constExpr NE constExpr * + (163) constExpr ::= constExpr NE constExpr * constExpr ::= constExpr * LE constExpr constExpr ::= constExpr * GE constExpr constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 163 + COMMA reduce 163 + LOR reduce 163 + LAND reduce 163 EQ error + EQ reduce 163 LE error + LE reduce 163 LT error + LT reduce 163 GE error + GE reduce 163 GT error + GT reduce 163 NE error + NE reduce 163 BITOR shift 128 + BITOR reduce 163 -- dropped by precedence BITXOR shift 127 + BITXOR reduce 163 -- dropped by precedence BITAND shift 129 + BITAND reduce 163 -- dropped by precedence LSHIFT shift 131 + LSHIFT reduce 163 -- dropped by precedence RSHIFT shift 130 + RSHIFT reduce 163 -- dropped by precedence PLUS shift 136 + PLUS reduce 163 -- dropped by precedence MINUS shift 135 + MINUS reduce 163 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 163 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 163 -- dropped by precedence MOD shift 132 - {default} reduce 164 + MOD reduce 163 -- dropped by precedence + BITNOT reduce 163 + LPAREN reduce 163 + LSQBRACKET reduce 163 + PERIOD reduce 163 + SEMICOLON reduce 163 + NAME reduce 163 + COLON reduce 163 + FUNCTION reduce 163 + RPAREN reduce 163 + LBRACKET reduce 163 + VAR reduce 163 + NUMBER reduce 163 + RSQBRACKET reduce 163 + KILLS reduce 163 + TRGCONST reduce 163 + L2V reduce 163 + MAPSTRING reduce 163 + UNIT reduce 163 + SWITCH reduce 163 + LOCATION reduce 163 + STATTXTTBL reduce 163 + VARRAY reduce 163 + STATIC reduce 163 + CONST reduce 163 + INC reduce 163 + DEC reduce 163 + ONCE reduce 163 + IF reduce 163 + SWITCHCASE reduce 163 + WHILE reduce 163 + FOR reduce 163 + FOREACH reduce 163 + CONTINUE reduce 163 + BREAK reduce 163 + RETURN reduce 163 + ACTIONNAME reduce 163 -State 180: - (91) fConstArg ::= constExpr * - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr +State 214: + (271) logicExpr ::= KILLS LPAREN fArgs RPAREN * + + QMARK reduce 271 + COMMA reduce 271 + LOR reduce 271 + LAND reduce 271 + EQ reduce 271 + LE reduce 271 + LT reduce 271 + GE reduce 271 + GT reduce 271 + NE reduce 271 + BITOR reduce 271 + BITXOR reduce 271 + BITAND reduce 271 + LSHIFT reduce 271 + RSHIFT reduce 271 + PLUS reduce 271 + MINUS reduce 271 + DIVIDE reduce 271 + MULTIPLY reduce 271 + MOD reduce 271 + BITNOT reduce 271 + LPAREN reduce 271 + LSQBRACKET reduce 271 + PERIOD reduce 271 + SEMICOLON reduce 271 + NAME reduce 271 + COLON reduce 271 + FUNCTION reduce 271 + RPAREN reduce 271 + LBRACKET reduce 271 + VAR reduce 271 + NUMBER reduce 271 + RSQBRACKET reduce 271 + KILLS reduce 271 + TRGCONST reduce 271 + L2V reduce 271 + MAPSTRING reduce 271 + UNIT reduce 271 + SWITCH reduce 271 + LOCATION reduce 271 + STATTXTTBL reduce 271 + VARRAY reduce 271 + STATIC reduce 271 + CONST reduce 271 + INC reduce 271 + DEC reduce 271 + ONCE reduce 271 + IF reduce 271 + SWITCHCASE reduce 271 + WHILE reduce 271 + FOR reduce 271 + FOREACH reduce 271 + CONTINUE reduce 271 + BREAK reduce 271 + RETURN reduce 271 + ACTIONNAME reduce 271 - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 91 +State 215: + (106) funcexpr ::= NAME LPAREN fArgs RPAREN * -State 181: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr + QMARK reduce 106 + COMMA reduce 106 + LOR reduce 106 + LAND reduce 106 + EQ reduce 106 + LE reduce 106 + LT reduce 106 + GE reduce 106 + GT reduce 106 + NE reduce 106 + BITOR reduce 106 + BITXOR reduce 106 + BITAND reduce 106 + LSHIFT reduce 106 + RSHIFT reduce 106 + PLUS reduce 106 + MINUS reduce 106 + DIVIDE reduce 106 + MULTIPLY reduce 106 + MOD reduce 106 + BITNOT reduce 106 + LPAREN reduce 106 + LSQBRACKET reduce 106 + PERIOD reduce 106 + SEMICOLON reduce 106 + NAME reduce 106 + COLON reduce 106 + FUNCTION reduce 106 + RPAREN reduce 106 + LBRACKET reduce 106 + VAR reduce 106 + NUMBER reduce 106 + RSQBRACKET reduce 106 + KILLS reduce 106 + TRGCONST reduce 106 + L2V reduce 106 + MAPSTRING reduce 106 + UNIT reduce 106 + SWITCH reduce 106 + LOCATION reduce 106 + STATTXTTBL reduce 106 + VARRAY reduce 106 + STATIC reduce 106 + CONST reduce 106 + INC reduce 106 + DEC reduce 106 + ONCE reduce 106 + IF reduce 106 + SWITCHCASE reduce 106 + WHILE reduce 106 + FOR reduce 106 + FOREACH reduce 106 + CONTINUE reduce 106 + BREAK reduce 106 + RETURN reduce 106 + ACTIONNAME reduce 106 - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - -State 182: - (88) expr ::= constExpr * - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr - - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 88 - -State 183: - (85) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * - (195) lvalue ::= nonConstExpr LSQBRACKET expr RSQBRACKET * - - QMARK reduce 85 - BITOR reduce 85 - BITXOR reduce 85 - BITAND reduce 85 - LSHIFT reduce 85 - RSHIFT reduce 85 - PLUS reduce 85 - MINUS reduce 85 - DIVIDE reduce 85 - MULTIPLY reduce 85 - MOD reduce 85 - LPAREN reduce 85 - LSQBRACKET reduce 85 - PERIOD reduce 85 - {default} reduce 195 - -State 184: - (84) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * - (197) lvalue ::= nonConstExpr PERIOD TRGCONST * - - QMARK reduce 84 - BITOR reduce 84 - BITXOR reduce 84 - BITAND reduce 84 - LSHIFT reduce 84 - RSHIFT reduce 84 - PLUS reduce 84 - MINUS reduce 84 - DIVIDE reduce 84 - MULTIPLY reduce 84 - MOD reduce 84 - LPAREN reduce 84 - LSQBRACKET reduce 84 - PERIOD reduce 84 - {default} reduce 197 - -State 185: - (83) nonConstExpr ::= nonConstExpr PERIOD NAME * - (196) lvalue ::= nonConstExpr PERIOD NAME * - - QMARK reduce 83 - BITOR reduce 83 - BITXOR reduce 83 - BITAND reduce 83 - LSHIFT reduce 83 - RSHIFT reduce 83 - PLUS reduce 83 - MINUS reduce 83 - DIVIDE reduce 83 - MULTIPLY reduce 83 - MOD reduce 83 - LPAREN reduce 83 - LSQBRACKET reduce 83 - PERIOD reduce 83 - {default} reduce 196 - -State 186: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - lvalue ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - lvalue ::= nonConstExpr * PERIOD NAME - lvalue ::= nonConstExpr * PERIOD TRGCONST - - QMARK shift 76 - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 77 - PERIOD shift 246 - -State 187: - (82) nonConstExpr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN - (194) lvalue ::= NAME * - - QMARK reduce 82 - BITOR reduce 82 - BITXOR reduce 82 - BITAND reduce 82 - LSHIFT reduce 82 - RSHIFT reduce 82 - PLUS reduce 82 - MINUS reduce 82 - DIVIDE reduce 82 - MULTIPLY reduce 82 - MOD reduce 82 - LPAREN shift 25 - LSQBRACKET reduce 82 - PERIOD reduce 82 - {default} reduce 194 - -State 188: +State 216: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -17953,24 +21441,80 @@ State 188: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (183) logicExpr ::= nonConstExpr GT nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (182) logicExpr ::= nonConstExpr GT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 182 + COMMA reduce 182 + LOR reduce 182 + LAND reduce 182 + EQ reduce 182 + LE reduce 182 + LT reduce 182 + GE reduce 182 + GT reduce 182 + NE reduce 182 + BITOR shift 66 + BITOR reduce 182 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 182 -- dropped by precedence + BITAND shift 67 + BITAND reduce 182 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 182 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 182 -- dropped by precedence + PLUS shift 74 + PLUS reduce 182 -- dropped by precedence + MINUS shift 73 + MINUS reduce 182 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 182 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 182 -- dropped by precedence + MOD shift 70 + MOD reduce 182 -- dropped by precedence + BITNOT reduce 182 + LPAREN shift 23 + LPAREN reduce 182 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 183 + LSQBRACKET reduce 182 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 182 -- dropped by precedence + SEMICOLON reduce 182 + NAME reduce 182 + COLON reduce 182 + FUNCTION reduce 182 + RPAREN reduce 182 + LBRACKET reduce 182 + VAR reduce 182 + NUMBER reduce 182 + RSQBRACKET reduce 182 + KILLS reduce 182 + TRGCONST reduce 182 + L2V reduce 182 + MAPSTRING reduce 182 + UNIT reduce 182 + SWITCH reduce 182 + LOCATION reduce 182 + STATTXTTBL reduce 182 + VARRAY reduce 182 + STATIC reduce 182 + CONST reduce 182 + INC reduce 182 + DEC reduce 182 + ONCE reduce 182 + IF reduce 182 + SWITCHCASE reduce 182 + WHILE reduce 182 + FOR reduce 182 + FOREACH reduce 182 + CONTINUE reduce 182 + BREAK reduce 182 + RETURN reduce 182 + ACTIONNAME reduce 182 -State 189: +State 217: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -17986,24 +21530,80 @@ State 189: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (179) logicExpr ::= nonConstExpr LT nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (178) logicExpr ::= nonConstExpr LT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 178 + COMMA reduce 178 + LOR reduce 178 + LAND reduce 178 + EQ reduce 178 + LE reduce 178 + LT reduce 178 + GE reduce 178 + GT reduce 178 + NE reduce 178 + BITOR shift 66 + BITOR reduce 178 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 178 -- dropped by precedence + BITAND shift 67 + BITAND reduce 178 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 178 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 178 -- dropped by precedence + PLUS shift 74 + PLUS reduce 178 -- dropped by precedence + MINUS shift 73 + MINUS reduce 178 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 178 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 178 -- dropped by precedence + MOD shift 70 + MOD reduce 178 -- dropped by precedence + BITNOT reduce 178 + LPAREN shift 23 + LPAREN reduce 178 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 179 + LSQBRACKET reduce 178 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 178 -- dropped by precedence + SEMICOLON reduce 178 + NAME reduce 178 + COLON reduce 178 + FUNCTION reduce 178 + RPAREN reduce 178 + LBRACKET reduce 178 + VAR reduce 178 + NUMBER reduce 178 + RSQBRACKET reduce 178 + KILLS reduce 178 + TRGCONST reduce 178 + L2V reduce 178 + MAPSTRING reduce 178 + UNIT reduce 178 + SWITCH reduce 178 + LOCATION reduce 178 + STATTXTTBL reduce 178 + VARRAY reduce 178 + STATIC reduce 178 + CONST reduce 178 + INC reduce 178 + DEC reduce 178 + ONCE reduce 178 + IF reduce 178 + SWITCHCASE reduce 178 + WHILE reduce 178 + FOR reduce 178 + FOREACH reduce 178 + CONTINUE reduce 178 + BREAK reduce 178 + RETURN reduce 178 + ACTIONNAME reduce 178 -State 190: +State 218: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18019,24 +21619,80 @@ State 190: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (175) logicExpr ::= nonConstExpr GE nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (174) logicExpr ::= nonConstExpr GE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 174 + COMMA reduce 174 + LOR reduce 174 + LAND reduce 174 + EQ reduce 174 + LE reduce 174 + LT reduce 174 + GE reduce 174 + GT reduce 174 + NE reduce 174 + BITOR shift 66 + BITOR reduce 174 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 174 -- dropped by precedence + BITAND shift 67 + BITAND reduce 174 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 174 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 174 -- dropped by precedence + PLUS shift 74 + PLUS reduce 174 -- dropped by precedence + MINUS shift 73 + MINUS reduce 174 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 174 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 174 -- dropped by precedence + MOD shift 70 + MOD reduce 174 -- dropped by precedence + BITNOT reduce 174 + LPAREN shift 23 + LPAREN reduce 174 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 175 + LSQBRACKET reduce 174 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 174 -- dropped by precedence + SEMICOLON reduce 174 + NAME reduce 174 + COLON reduce 174 + FUNCTION reduce 174 + RPAREN reduce 174 + LBRACKET reduce 174 + VAR reduce 174 + NUMBER reduce 174 + RSQBRACKET reduce 174 + KILLS reduce 174 + TRGCONST reduce 174 + L2V reduce 174 + MAPSTRING reduce 174 + UNIT reduce 174 + SWITCH reduce 174 + LOCATION reduce 174 + STATTXTTBL reduce 174 + VARRAY reduce 174 + STATIC reduce 174 + CONST reduce 174 + INC reduce 174 + DEC reduce 174 + ONCE reduce 174 + IF reduce 174 + SWITCHCASE reduce 174 + WHILE reduce 174 + FOR reduce 174 + FOREACH reduce 174 + CONTINUE reduce 174 + BREAK reduce 174 + RETURN reduce 174 + ACTIONNAME reduce 174 -State 191: +State 219: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18052,24 +21708,80 @@ State 191: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (171) logicExpr ::= nonConstExpr LE nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (170) logicExpr ::= nonConstExpr LE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 170 + COMMA reduce 170 + LOR reduce 170 + LAND reduce 170 + EQ reduce 170 + LE reduce 170 + LT reduce 170 + GE reduce 170 + GT reduce 170 + NE reduce 170 + BITOR shift 66 + BITOR reduce 170 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 170 -- dropped by precedence + BITAND shift 67 + BITAND reduce 170 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 170 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 170 -- dropped by precedence + PLUS shift 74 + PLUS reduce 170 -- dropped by precedence + MINUS shift 73 + MINUS reduce 170 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 170 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 170 -- dropped by precedence + MOD shift 70 + MOD reduce 170 -- dropped by precedence + BITNOT reduce 170 + LPAREN shift 23 + LPAREN reduce 170 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 171 + LSQBRACKET reduce 170 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 170 -- dropped by precedence + SEMICOLON reduce 170 + NAME reduce 170 + COLON reduce 170 + FUNCTION reduce 170 + RPAREN reduce 170 + LBRACKET reduce 170 + VAR reduce 170 + NUMBER reduce 170 + RSQBRACKET reduce 170 + KILLS reduce 170 + TRGCONST reduce 170 + L2V reduce 170 + MAPSTRING reduce 170 + UNIT reduce 170 + SWITCH reduce 170 + LOCATION reduce 170 + STATTXTTBL reduce 170 + VARRAY reduce 170 + STATIC reduce 170 + CONST reduce 170 + INC reduce 170 + DEC reduce 170 + ONCE reduce 170 + IF reduce 170 + SWITCHCASE reduce 170 + WHILE reduce 170 + FOR reduce 170 + FOREACH reduce 170 + CONTINUE reduce 170 + BREAK reduce 170 + RETURN reduce 170 + ACTIONNAME reduce 170 -State 192: +State 220: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18085,24 +21797,80 @@ State 192: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (167) logicExpr ::= nonConstExpr NE nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (166) logicExpr ::= nonConstExpr NE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 166 + COMMA reduce 166 + LOR reduce 166 + LAND reduce 166 + EQ reduce 166 + LE reduce 166 + LT reduce 166 + GE reduce 166 + GT reduce 166 + NE reduce 166 + BITOR shift 66 + BITOR reduce 166 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 166 -- dropped by precedence + BITAND shift 67 + BITAND reduce 166 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 166 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 166 -- dropped by precedence + PLUS shift 74 + PLUS reduce 166 -- dropped by precedence + MINUS shift 73 + MINUS reduce 166 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 166 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 166 -- dropped by precedence + MOD shift 70 + MOD reduce 166 -- dropped by precedence + BITNOT reduce 166 + LPAREN shift 23 + LPAREN reduce 166 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 167 + LSQBRACKET reduce 166 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 166 -- dropped by precedence + SEMICOLON reduce 166 + NAME reduce 166 + COLON reduce 166 + FUNCTION reduce 166 + RPAREN reduce 166 + LBRACKET reduce 166 + VAR reduce 166 + NUMBER reduce 166 + RSQBRACKET reduce 166 + KILLS reduce 166 + TRGCONST reduce 166 + L2V reduce 166 + MAPSTRING reduce 166 + UNIT reduce 166 + SWITCH reduce 166 + LOCATION reduce 166 + STATTXTTBL reduce 166 + VARRAY reduce 166 + STATIC reduce 166 + CONST reduce 166 + INC reduce 166 + DEC reduce 166 + ONCE reduce 166 + IF reduce 166 + SWITCHCASE reduce 166 + WHILE reduce 166 + FOR reduce 166 + FOREACH reduce 166 + CONTINUE reduce 166 + BREAK reduce 166 + RETURN reduce 166 + ACTIONNAME reduce 166 -State 193: +State 221: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18118,154 +21886,1244 @@ State 193: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (163) logicExpr ::= nonConstExpr EQ nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (162) logicExpr ::= nonConstExpr EQ nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 162 + COMMA reduce 162 + LOR reduce 162 + LAND reduce 162 + EQ reduce 162 + LE reduce 162 + LT reduce 162 + GE reduce 162 + GT reduce 162 + NE reduce 162 + BITOR shift 66 + BITOR reduce 162 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 162 -- dropped by precedence + BITAND shift 67 + BITAND reduce 162 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 162 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 162 -- dropped by precedence + PLUS shift 74 + PLUS reduce 162 -- dropped by precedence + MINUS shift 73 + MINUS reduce 162 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 162 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 162 -- dropped by precedence + MOD shift 70 + MOD reduce 162 -- dropped by precedence + BITNOT reduce 162 + LPAREN shift 23 + LPAREN reduce 162 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 163 + LSQBRACKET reduce 162 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 162 -- dropped by precedence + SEMICOLON reduce 162 + NAME reduce 162 + COLON reduce 162 + FUNCTION reduce 162 + RPAREN reduce 162 + LBRACKET reduce 162 + VAR reduce 162 + NUMBER reduce 162 + RSQBRACKET reduce 162 + KILLS reduce 162 + TRGCONST reduce 162 + L2V reduce 162 + MAPSTRING reduce 162 + UNIT reduce 162 + SWITCH reduce 162 + LOCATION reduce 162 + STATTXTTBL reduce 162 + VARRAY reduce 162 + STATIC reduce 162 + CONST reduce 162 + INC reduce 162 + DEC reduce 162 + ONCE reduce 162 + IF reduce 162 + SWITCHCASE reduce 162 + WHILE reduce 162 + FOR reduce 162 + FOREACH reduce 162 + CONTINUE reduce 162 + BREAK reduce 162 + RETURN reduce 162 + ACTIONNAME reduce 162 -State 194: - (198) lvalueList_nonEmpty ::= lvalue * - assign_stmt ::= lvalue * ASSIGN expr - assign_stmt ::= lvalue * INC - assign_stmt ::= lvalue * DEC - assign_stmt ::= lvalue * IADD expr - assign_stmt ::= lvalue * ISUB expr - assign_stmt ::= lvalue * IMUL expr - assign_stmt ::= lvalue * IDIV expr - assign_stmt ::= lvalue * IMOD expr - assign_stmt ::= lvalue * ILSH expr - assign_stmt ::= lvalue * IRSH expr - assign_stmt ::= lvalue * IBND expr - assign_stmt ::= lvalue * IBOR expr - assign_stmt ::= lvalue * IBXR expr +State 222: + (86) constExpr ::= lambdaExprStart stmt * + + QMARK reduce 86 + COMMA reduce 86 + LOR reduce 86 + LAND reduce 86 + EQ reduce 86 + LE reduce 86 + LT reduce 86 + GE reduce 86 + GT reduce 86 + NE reduce 86 + BITOR reduce 86 + BITXOR reduce 86 + BITAND reduce 86 + LSHIFT reduce 86 + RSHIFT reduce 86 + PLUS reduce 86 + MINUS reduce 86 + DIVIDE reduce 86 + MULTIPLY reduce 86 + MOD reduce 86 + BITNOT reduce 86 + LPAREN reduce 86 + LSQBRACKET reduce 86 + PERIOD reduce 86 + SEMICOLON reduce 86 + NAME reduce 86 + COLON reduce 86 + FUNCTION reduce 86 + RPAREN reduce 86 + LBRACKET reduce 86 + VAR reduce 86 + NUMBER reduce 86 + RSQBRACKET reduce 86 + KILLS reduce 86 + TRGCONST reduce 86 + L2V reduce 86 + MAPSTRING reduce 86 + UNIT reduce 86 + SWITCH reduce 86 + LOCATION reduce 86 + STATTXTTBL reduce 86 + VARRAY reduce 86 + STATIC reduce 86 + CONST reduce 86 + INC reduce 86 + DEC reduce 86 + ONCE reduce 86 + IF reduce 86 + SWITCHCASE reduce 86 + WHILE reduce 86 + FOR reduce 86 + FOREACH reduce 86 + CONTINUE reduce 86 + BREAK reduce 86 + RETURN reduce 86 + ACTIONNAME reduce 86 - ASSIGN shift 62 - INC shift 450 - DEC shift 449 - IADD shift 61 - ISUB shift 60 - IMUL shift 59 - IDIV shift 58 - IMOD shift 57 - ILSH shift 56 - IRSH shift 55 - IBND shift 54 - IBOR shift 53 - IBXR shift 52 - {default} reduce 198 +State 223: + constExpr ::= constExpr * PLUS constExpr + (123) constExpr ::= constExpr PLUS constExpr * + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr -State 195: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (181) logicExpr ::= constExpr GT nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 181 + QMARK reduce 123 + COMMA reduce 123 + LOR reduce 123 + LAND reduce 123 + EQ shift 138 -- dropped by precedence + EQ reduce 123 + LE shift 125 -- dropped by precedence + LE reduce 123 + LT shift 123 -- dropped by precedence + LT reduce 123 + GE shift 124 -- dropped by precedence + GE reduce 123 + GT shift 122 -- dropped by precedence + GT reduce 123 + NE shift 126 -- dropped by precedence + NE reduce 123 + BITOR shift 102 -- dropped by precedence + BITOR reduce 123 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 123 + BITAND shift 103 -- dropped by precedence + BITAND reduce 123 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 123 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 123 + PLUS shift 113 -- dropped by precedence + PLUS reduce 123 + MINUS shift 112 -- dropped by precedence + MINUS reduce 123 + DIVIDE shift 107 + DIVIDE reduce 123 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 123 -- dropped by precedence + MOD shift 106 + MOD reduce 123 -- dropped by precedence + BITNOT reduce 123 + LPAREN reduce 123 + LSQBRACKET reduce 123 + PERIOD reduce 123 + SEMICOLON reduce 123 + NAME reduce 123 + COLON reduce 123 + FUNCTION reduce 123 + RPAREN reduce 123 + LBRACKET reduce 123 + VAR reduce 123 + NUMBER reduce 123 + RSQBRACKET reduce 123 + KILLS reduce 123 + TRGCONST reduce 123 + L2V reduce 123 + MAPSTRING reduce 123 + UNIT reduce 123 + SWITCH reduce 123 + LOCATION reduce 123 + STATTXTTBL reduce 123 + VARRAY reduce 123 + STATIC reduce 123 + CONST reduce 123 + INC reduce 123 + DEC reduce 123 + ONCE reduce 123 + IF reduce 123 + SWITCHCASE reduce 123 + WHILE reduce 123 + FOR reduce 123 + FOREACH reduce 123 + CONTINUE reduce 123 + BREAK reduce 123 + RETURN reduce 123 + ACTIONNAME reduce 123 -State 196: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (177) logicExpr ::= constExpr LT nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 177 +State 224: + (107) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * + + QMARK reduce 107 + COMMA reduce 107 + LOR reduce 107 + LAND reduce 107 + EQ reduce 107 + LE reduce 107 + LT reduce 107 + GE reduce 107 + GT reduce 107 + NE reduce 107 + BITOR reduce 107 + BITXOR reduce 107 + BITAND reduce 107 + LSHIFT reduce 107 + RSHIFT reduce 107 + PLUS reduce 107 + MINUS reduce 107 + DIVIDE reduce 107 + MULTIPLY reduce 107 + MOD reduce 107 + BITNOT reduce 107 + LPAREN reduce 107 + LSQBRACKET reduce 107 + PERIOD reduce 107 + SEMICOLON reduce 107 + NAME reduce 107 + COLON reduce 107 + FUNCTION reduce 107 + RPAREN reduce 107 + LBRACKET reduce 107 + VAR reduce 107 + NUMBER reduce 107 + RSQBRACKET reduce 107 + KILLS reduce 107 + TRGCONST reduce 107 + L2V reduce 107 + MAPSTRING reduce 107 + UNIT reduce 107 + SWITCH reduce 107 + LOCATION reduce 107 + STATTXTTBL reduce 107 + VARRAY reduce 107 + STATIC reduce 107 + CONST reduce 107 + INC reduce 107 + DEC reduce 107 + ONCE reduce 107 + IF reduce 107 + SWITCHCASE reduce 107 + WHILE reduce 107 + FOR reduce 107 + FOREACH reduce 107 + CONTINUE reduce 107 + BREAK reduce 107 + RETURN reduce 107 + ACTIONNAME reduce 107 -State 197: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (173) logicExpr ::= constExpr GE nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 173 +State 225: + logicExpr ::= logicExpr * LAND logicExpr + (184) logicExpr ::= logicExpr LAND logicExpr * + logicExpr ::= logicExpr * LOR logicExpr -State 198: + QMARK reduce 184 + COMMA reduce 184 + LOR shift 82 -- dropped by precedence + LOR reduce 184 + LAND shift 84 -- dropped by precedence + LAND reduce 184 + EQ reduce 184 + LE reduce 184 + LT reduce 184 + GE reduce 184 + GT reduce 184 + NE reduce 184 + BITOR reduce 184 + BITXOR reduce 184 + BITAND reduce 184 + LSHIFT reduce 184 + RSHIFT reduce 184 + PLUS reduce 184 + MINUS reduce 184 + DIVIDE reduce 184 + MULTIPLY reduce 184 + MOD reduce 184 + BITNOT reduce 184 + LPAREN reduce 184 + LSQBRACKET reduce 184 + PERIOD reduce 184 + SEMICOLON reduce 184 + NAME reduce 184 + COLON reduce 184 + FUNCTION reduce 184 + RPAREN reduce 184 + LBRACKET reduce 184 + VAR reduce 184 + NUMBER reduce 184 + RSQBRACKET reduce 184 + KILLS reduce 184 + TRGCONST reduce 184 + L2V reduce 184 + MAPSTRING reduce 184 + UNIT reduce 184 + SWITCH reduce 184 + LOCATION reduce 184 + STATTXTTBL reduce 184 + VARRAY reduce 184 + STATIC reduce 184 + CONST reduce 184 + INC reduce 184 + DEC reduce 184 + ONCE reduce 184 + IF reduce 184 + SWITCHCASE reduce 184 + WHILE reduce 184 + FOR reduce 184 + FOREACH reduce 184 + CONTINUE reduce 184 + BREAK reduce 184 + RETURN reduce 184 + ACTIONNAME reduce 184 + +State 226: + (110) nonConstExpr ::= LPAREN logicExpr RPAREN * + + QMARK reduce 110 + COMMA reduce 110 + LOR reduce 110 + LAND reduce 110 + EQ reduce 110 + LE reduce 110 + LT reduce 110 + GE reduce 110 + GT reduce 110 + NE reduce 110 + BITOR reduce 110 + BITXOR reduce 110 + BITAND reduce 110 + LSHIFT reduce 110 + RSHIFT reduce 110 + PLUS reduce 110 + MINUS reduce 110 + DIVIDE reduce 110 + MULTIPLY reduce 110 + MOD reduce 110 + BITNOT reduce 110 + LPAREN reduce 110 + LSQBRACKET reduce 110 + PERIOD reduce 110 + SEMICOLON reduce 110 + NAME reduce 110 + COLON reduce 110 + FUNCTION reduce 110 + RPAREN reduce 110 + LBRACKET reduce 110 + VAR reduce 110 + NUMBER reduce 110 + RSQBRACKET reduce 110 + KILLS reduce 110 + TRGCONST reduce 110 + L2V reduce 110 + MAPSTRING reduce 110 + UNIT reduce 110 + SWITCH reduce 110 + LOCATION reduce 110 + STATTXTTBL reduce 110 + VARRAY reduce 110 + STATIC reduce 110 + CONST reduce 110 + INC reduce 110 + DEC reduce 110 + ONCE reduce 110 + IF reduce 110 + SWITCHCASE reduce 110 + WHILE reduce 110 + FOR reduce 110 + FOREACH reduce 110 + CONTINUE reduce 110 + BREAK reduce 110 + RETURN reduce 110 + ACTIONNAME reduce 110 + +State 227: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + (126) constExpr ::= constExpr MINUS constExpr * + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 126 + COMMA reduce 126 + LOR reduce 126 + LAND reduce 126 + EQ shift 138 -- dropped by precedence + EQ reduce 126 + LE shift 125 -- dropped by precedence + LE reduce 126 + LT shift 123 -- dropped by precedence + LT reduce 126 + GE shift 124 -- dropped by precedence + GE reduce 126 + GT shift 122 -- dropped by precedence + GT reduce 126 + NE shift 126 -- dropped by precedence + NE reduce 126 + BITOR shift 102 -- dropped by precedence + BITOR reduce 126 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 126 + BITAND shift 103 -- dropped by precedence + BITAND reduce 126 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 126 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 126 + PLUS shift 113 -- dropped by precedence + PLUS reduce 126 + MINUS shift 112 -- dropped by precedence + MINUS reduce 126 + DIVIDE shift 107 + DIVIDE reduce 126 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 126 -- dropped by precedence + MOD shift 106 + MOD reduce 126 -- dropped by precedence + BITNOT reduce 126 + LPAREN reduce 126 + LSQBRACKET reduce 126 + PERIOD reduce 126 + SEMICOLON reduce 126 + NAME reduce 126 + COLON reduce 126 + FUNCTION reduce 126 + RPAREN reduce 126 + LBRACKET reduce 126 + VAR reduce 126 + NUMBER reduce 126 + RSQBRACKET reduce 126 + KILLS reduce 126 + TRGCONST reduce 126 + L2V reduce 126 + MAPSTRING reduce 126 + UNIT reduce 126 + SWITCH reduce 126 + LOCATION reduce 126 + STATTXTTBL reduce 126 + VARRAY reduce 126 + STATIC reduce 126 + CONST reduce 126 + INC reduce 126 + DEC reduce 126 + ONCE reduce 126 + IF reduce 126 + SWITCHCASE reduce 126 + WHILE reduce 126 + FOR reduce 126 + FOREACH reduce 126 + CONTINUE reduce 126 + BREAK reduce 126 + RETURN reduce 126 + ACTIONNAME reduce 126 + +State 228: + (122) nonConstExpr ::= nonConstExpr QMARK expr COLON expr * + + QMARK reduce 122 + COMMA reduce 122 + LOR reduce 122 + LAND reduce 122 + EQ reduce 122 + LE reduce 122 + LT reduce 122 + GE reduce 122 + GT reduce 122 + NE reduce 122 + BITOR reduce 122 + BITXOR reduce 122 + BITAND reduce 122 + LSHIFT reduce 122 + RSHIFT reduce 122 + PLUS reduce 122 + MINUS reduce 122 + DIVIDE reduce 122 + MULTIPLY reduce 122 + MOD reduce 122 + BITNOT reduce 122 + LPAREN reduce 122 + LSQBRACKET reduce 122 + PERIOD reduce 122 + SEMICOLON reduce 122 + NAME reduce 122 + COLON reduce 122 + FUNCTION reduce 122 + RPAREN reduce 122 + LBRACKET reduce 122 + VAR reduce 122 + NUMBER reduce 122 + RSQBRACKET reduce 122 + KILLS reduce 122 + TRGCONST reduce 122 + L2V reduce 122 + MAPSTRING reduce 122 + UNIT reduce 122 + SWITCH reduce 122 + LOCATION reduce 122 + STATTXTTBL reduce 122 + VARRAY reduce 122 + STATIC reduce 122 + CONST reduce 122 + INC reduce 122 + DEC reduce 122 + ONCE reduce 122 + IF reduce 122 + SWITCHCASE reduce 122 + WHILE reduce 122 + FOR reduce 122 + FOREACH reduce 122 + CONTINUE reduce 122 + BREAK reduce 122 + RETURN reduce 122 + ACTIONNAME reduce 122 + +State 229: + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr + (185) logicExpr ::= logicExpr LOR logicExpr * + + QMARK reduce 185 + COMMA reduce 185 + LOR shift 82 -- dropped by precedence + LOR reduce 185 + LAND shift 84 + LAND reduce 185 -- dropped by precedence + EQ reduce 185 + LE reduce 185 + LT reduce 185 + GE reduce 185 + GT reduce 185 + NE reduce 185 + BITOR reduce 185 + BITXOR reduce 185 + BITAND reduce 185 + LSHIFT reduce 185 + RSHIFT reduce 185 + PLUS reduce 185 + MINUS reduce 185 + DIVIDE reduce 185 + MULTIPLY reduce 185 + MOD reduce 185 + BITNOT reduce 185 + LPAREN reduce 185 + LSQBRACKET reduce 185 + PERIOD reduce 185 + SEMICOLON reduce 185 + NAME reduce 185 + COLON reduce 185 + FUNCTION reduce 185 + RPAREN reduce 185 + LBRACKET reduce 185 + VAR reduce 185 + NUMBER reduce 185 + RSQBRACKET reduce 185 + KILLS reduce 185 + TRGCONST reduce 185 + L2V reduce 185 + MAPSTRING reduce 185 + UNIT reduce 185 + SWITCH reduce 185 + LOCATION reduce 185 + STATTXTTBL reduce 185 + VARRAY reduce 185 + STATIC reduce 185 + CONST reduce 185 + INC reduce 185 + DEC reduce 185 + ONCE reduce 185 + IF reduce 185 + SWITCHCASE reduce 185 + WHILE reduce 185 + FOR reduce 185 + FOREACH reduce 185 + CONTINUE reduce 185 + BREAK reduce 185 + RETURN reduce 185 + ACTIONNAME reduce 185 + +State 230: + (113) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * + + QMARK reduce 113 + COMMA reduce 113 + LOR reduce 113 + LAND reduce 113 + EQ reduce 113 + LE reduce 113 + LT reduce 113 + GE reduce 113 + GT reduce 113 + NE reduce 113 + BITOR reduce 113 + BITXOR reduce 113 + BITAND reduce 113 + LSHIFT reduce 113 + RSHIFT reduce 113 + PLUS reduce 113 + MINUS reduce 113 + DIVIDE reduce 113 + MULTIPLY reduce 113 + MOD reduce 113 + BITNOT reduce 113 + LPAREN reduce 113 + LSQBRACKET reduce 113 + PERIOD reduce 113 + SEMICOLON reduce 113 + NAME reduce 113 + COLON reduce 113 + FUNCTION reduce 113 + RPAREN reduce 113 + LBRACKET reduce 113 + VAR reduce 113 + NUMBER reduce 113 + RSQBRACKET reduce 113 + KILLS reduce 113 + TRGCONST reduce 113 + L2V reduce 113 + MAPSTRING reduce 113 + UNIT reduce 113 + SWITCH reduce 113 + LOCATION reduce 113 + STATTXTTBL reduce 113 + VARRAY reduce 113 + STATIC reduce 113 + CONST reduce 113 + INC reduce 113 + DEC reduce 113 + ONCE reduce 113 + IF reduce 113 + SWITCHCASE reduce 113 + WHILE reduce 113 + FOR reduce 113 + FOREACH reduce 113 + CONTINUE reduce 113 + BREAK reduce 113 + RETURN reduce 113 + ACTIONNAME reduce 113 + +State 231: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (153) constExpr ::= PLUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 153 + COMMA reduce 153 + LOR reduce 153 + LAND reduce 153 + EQ shift 138 -- dropped by precedence + EQ reduce 153 + LE shift 125 -- dropped by precedence + LE reduce 153 + LT shift 123 -- dropped by precedence + LT reduce 153 + GE shift 124 -- dropped by precedence + GE reduce 153 + GT shift 122 -- dropped by precedence + GT reduce 153 + NE shift 126 -- dropped by precedence + NE reduce 153 + BITOR shift 102 -- dropped by precedence + BITOR reduce 153 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 153 + BITAND shift 103 -- dropped by precedence + BITAND reduce 153 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 153 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 153 + PLUS shift 113 -- dropped by precedence + PLUS reduce 153 + MINUS shift 112 -- dropped by precedence + MINUS reduce 153 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 153 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 153 + MOD shift 106 -- dropped by precedence + MOD reduce 153 + BITNOT reduce 153 + LPAREN reduce 153 + LSQBRACKET reduce 153 + PERIOD reduce 153 + SEMICOLON reduce 153 + NAME reduce 153 + COLON reduce 153 + FUNCTION reduce 153 + RPAREN reduce 153 + LBRACKET reduce 153 + VAR reduce 153 + NUMBER reduce 153 + RSQBRACKET reduce 153 + KILLS reduce 153 + TRGCONST reduce 153 + L2V reduce 153 + MAPSTRING reduce 153 + UNIT reduce 153 + SWITCH reduce 153 + LOCATION reduce 153 + STATTXTTBL reduce 153 + VARRAY reduce 153 + STATIC reduce 153 + CONST reduce 153 + INC reduce 153 + DEC reduce 153 + ONCE reduce 153 + IF reduce 153 + SWITCHCASE reduce 153 + WHILE reduce 153 + FOR reduce 153 + FOREACH reduce 153 + CONTINUE reduce 153 + BREAK reduce 153 + RETURN reduce 153 + ACTIONNAME reduce 153 + +State 232: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (155) constExpr ::= MINUS constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 155 + COMMA reduce 155 + LOR reduce 155 + LAND reduce 155 + EQ shift 138 -- dropped by precedence + EQ reduce 155 + LE shift 125 -- dropped by precedence + LE reduce 155 + LT shift 123 -- dropped by precedence + LT reduce 155 + GE shift 124 -- dropped by precedence + GE reduce 155 + GT shift 122 -- dropped by precedence + GT reduce 155 + NE shift 126 -- dropped by precedence + NE reduce 155 + BITOR shift 102 -- dropped by precedence + BITOR reduce 155 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 155 + BITAND shift 103 -- dropped by precedence + BITAND reduce 155 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 155 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 155 + PLUS shift 113 -- dropped by precedence + PLUS reduce 155 + MINUS shift 112 -- dropped by precedence + MINUS reduce 155 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 155 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 155 + MOD shift 106 -- dropped by precedence + MOD reduce 155 + BITNOT reduce 155 + LPAREN reduce 155 + LSQBRACKET reduce 155 + PERIOD reduce 155 + SEMICOLON reduce 155 + NAME reduce 155 + COLON reduce 155 + FUNCTION reduce 155 + RPAREN reduce 155 + LBRACKET reduce 155 + VAR reduce 155 + NUMBER reduce 155 + RSQBRACKET reduce 155 + KILLS reduce 155 + TRGCONST reduce 155 + L2V reduce 155 + MAPSTRING reduce 155 + UNIT reduce 155 + SWITCH reduce 155 + LOCATION reduce 155 + STATTXTTBL reduce 155 + VARRAY reduce 155 + STATIC reduce 155 + CONST reduce 155 + INC reduce 155 + DEC reduce 155 + ONCE reduce 155 + IF reduce 155 + SWITCHCASE reduce 155 + WHILE reduce 155 + FOR reduce 155 + FOREACH reduce 155 + CONTINUE reduce 155 + BREAK reduce 155 + RETURN reduce 155 + ACTIONNAME reduce 155 + +State 233: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + (157) constExpr ::= BITNOT constExpr * + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 157 + COMMA reduce 157 + LOR reduce 157 + LAND reduce 157 + EQ shift 138 -- dropped by precedence + EQ reduce 157 + LE shift 125 -- dropped by precedence + LE reduce 157 + LT shift 123 -- dropped by precedence + LT reduce 157 + GE shift 124 -- dropped by precedence + GE reduce 157 + GT shift 122 -- dropped by precedence + GT reduce 157 + NE shift 126 -- dropped by precedence + NE reduce 157 + BITOR shift 102 -- dropped by precedence + BITOR reduce 157 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 157 + BITAND shift 103 -- dropped by precedence + BITAND reduce 157 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 157 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 157 + PLUS shift 113 -- dropped by precedence + PLUS reduce 157 + MINUS shift 112 -- dropped by precedence + MINUS reduce 157 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 157 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 157 + MOD shift 106 -- dropped by precedence + MOD reduce 157 + BITNOT reduce 157 + LPAREN reduce 157 + LSQBRACKET reduce 157 + PERIOD reduce 157 + SEMICOLON reduce 157 + NAME reduce 157 + COLON reduce 157 + FUNCTION reduce 157 + RPAREN reduce 157 + LBRACKET reduce 157 + VAR reduce 157 + NUMBER reduce 157 + RSQBRACKET reduce 157 + KILLS reduce 157 + TRGCONST reduce 157 + L2V reduce 157 + MAPSTRING reduce 157 + UNIT reduce 157 + SWITCH reduce 157 + LOCATION reduce 157 + STATTXTTBL reduce 157 + VARRAY reduce 157 + STATIC reduce 157 + CONST reduce 157 + INC reduce 157 + DEC reduce 157 + ONCE reduce 157 + IF reduce 157 + SWITCHCASE reduce 157 + WHILE reduce 157 + FOR reduce 157 + FOREACH reduce 157 + CONTINUE reduce 157 + BREAK reduce 157 + RETURN reduce 157 + ACTIONNAME reduce 157 + +State 234: + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr + (186) logicExpr ::= LNOT logicExpr * + + QMARK reduce 186 + COMMA reduce 186 + LOR shift 82 -- dropped by precedence + LOR reduce 186 + LAND shift 84 -- dropped by precedence + LAND reduce 186 + EQ reduce 186 + LE reduce 186 + LT reduce 186 + GE reduce 186 + GT reduce 186 + NE reduce 186 + BITOR reduce 186 + BITXOR reduce 186 + BITAND reduce 186 + LSHIFT reduce 186 + RSHIFT reduce 186 + PLUS reduce 186 + MINUS reduce 186 + DIVIDE reduce 186 + MULTIPLY reduce 186 + MOD reduce 186 + BITNOT reduce 186 + LPAREN reduce 186 + LSQBRACKET reduce 186 + PERIOD reduce 186 + SEMICOLON reduce 186 + NAME reduce 186 + COLON reduce 186 + FUNCTION reduce 186 + RPAREN reduce 186 + LBRACKET reduce 186 + VAR reduce 186 + NUMBER reduce 186 + RSQBRACKET reduce 186 + KILLS reduce 186 + TRGCONST reduce 186 + L2V reduce 186 + MAPSTRING reduce 186 + UNIT reduce 186 + SWITCH reduce 186 + LOCATION reduce 186 + STATTXTTBL reduce 186 + VARRAY reduce 186 + STATIC reduce 186 + CONST reduce 186 + INC reduce 186 + DEC reduce 186 + ONCE reduce 186 + IF reduce 186 + SWITCHCASE reduce 186 + WHILE reduce 186 + FOR reduce 186 + FOREACH reduce 186 + CONTINUE reduce 186 + BREAK reduce 186 + RETURN reduce 186 + ACTIONNAME reduce 186 + +State 235: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + (129) constExpr ::= constExpr MULTIPLY constExpr * + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 129 + COMMA reduce 129 + LOR reduce 129 + LAND reduce 129 + EQ shift 138 -- dropped by precedence + EQ reduce 129 + LE shift 125 -- dropped by precedence + LE reduce 129 + LT shift 123 -- dropped by precedence + LT reduce 129 + GE shift 124 -- dropped by precedence + GE reduce 129 + GT shift 122 -- dropped by precedence + GT reduce 129 + NE shift 126 -- dropped by precedence + NE reduce 129 + BITOR shift 102 -- dropped by precedence + BITOR reduce 129 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 129 + BITAND shift 103 -- dropped by precedence + BITAND reduce 129 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 129 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 129 + PLUS shift 113 -- dropped by precedence + PLUS reduce 129 + MINUS shift 112 -- dropped by precedence + MINUS reduce 129 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 129 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 129 + MOD shift 106 -- dropped by precedence + MOD reduce 129 + BITNOT reduce 129 + LPAREN reduce 129 + LSQBRACKET reduce 129 + PERIOD reduce 129 + SEMICOLON reduce 129 + NAME reduce 129 + COLON reduce 129 + FUNCTION reduce 129 + RPAREN reduce 129 + LBRACKET reduce 129 + VAR reduce 129 + NUMBER reduce 129 + RSQBRACKET reduce 129 + KILLS reduce 129 + TRGCONST reduce 129 + L2V reduce 129 + MAPSTRING reduce 129 + UNIT reduce 129 + SWITCH reduce 129 + LOCATION reduce 129 + STATTXTTBL reduce 129 + VARRAY reduce 129 + STATIC reduce 129 + CONST reduce 129 + INC reduce 129 + DEC reduce 129 + ONCE reduce 129 + IF reduce 129 + SWITCHCASE reduce 129 + WHILE reduce 129 + FOR reduce 129 + FOREACH reduce 129 + CONTINUE reduce 129 + BREAK reduce 129 + RETURN reduce 129 + ACTIONNAME reduce 129 + +State 236: + (270) logicExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * + + QMARK reduce 270 + COMMA reduce 270 + LOR reduce 270 + LAND reduce 270 + EQ reduce 270 + LE reduce 270 + LT reduce 270 + GE reduce 270 + GT reduce 270 + NE reduce 270 + BITOR reduce 270 + BITXOR reduce 270 + BITAND reduce 270 + LSHIFT reduce 270 + RSHIFT reduce 270 + PLUS reduce 270 + MINUS reduce 270 + DIVIDE reduce 270 + MULTIPLY reduce 270 + MOD reduce 270 + BITNOT reduce 270 + LPAREN reduce 270 + LSQBRACKET reduce 270 + PERIOD reduce 270 + SEMICOLON reduce 270 + NAME reduce 270 + COLON reduce 270 + FUNCTION reduce 270 + RPAREN reduce 270 + LBRACKET reduce 270 + VAR reduce 270 + NUMBER reduce 270 + RSQBRACKET reduce 270 + KILLS reduce 270 + TRGCONST reduce 270 + L2V reduce 270 + MAPSTRING reduce 270 + UNIT reduce 270 + SWITCH reduce 270 + LOCATION reduce 270 + STATTXTTBL reduce 270 + VARRAY reduce 270 + STATIC reduce 270 + CONST reduce 270 + INC reduce 270 + DEC reduce 270 + ONCE reduce 270 + IF reduce 270 + SWITCHCASE reduce 270 + WHILE reduce 270 + FOR reduce 270 + FOREACH reduce 270 + CONTINUE reduce 270 + BREAK reduce 270 + RETURN reduce 270 + ACTIONNAME reduce 270 + +State 237: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18281,24 +23139,80 @@ State 198: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (169) logicExpr ::= constExpr LE nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (180) logicExpr ::= constExpr GT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 180 + COMMA reduce 180 + LOR reduce 180 + LAND reduce 180 + EQ reduce 180 + LE reduce 180 + LT reduce 180 + GE reduce 180 + GT reduce 180 + NE reduce 180 + BITOR shift 66 + BITOR reduce 180 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 180 -- dropped by precedence + BITAND shift 67 + BITAND reduce 180 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 180 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 180 -- dropped by precedence + PLUS shift 74 + PLUS reduce 180 -- dropped by precedence + MINUS shift 73 + MINUS reduce 180 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 180 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 180 -- dropped by precedence + MOD shift 70 + MOD reduce 180 -- dropped by precedence + BITNOT reduce 180 + LPAREN shift 23 + LPAREN reduce 180 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 169 + LSQBRACKET reduce 180 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 180 -- dropped by precedence + SEMICOLON reduce 180 + NAME reduce 180 + COLON reduce 180 + FUNCTION reduce 180 + RPAREN reduce 180 + LBRACKET reduce 180 + VAR reduce 180 + NUMBER reduce 180 + RSQBRACKET reduce 180 + KILLS reduce 180 + TRGCONST reduce 180 + L2V reduce 180 + MAPSTRING reduce 180 + UNIT reduce 180 + SWITCH reduce 180 + LOCATION reduce 180 + STATTXTTBL reduce 180 + VARRAY reduce 180 + STATIC reduce 180 + CONST reduce 180 + INC reduce 180 + DEC reduce 180 + ONCE reduce 180 + IF reduce 180 + SWITCHCASE reduce 180 + WHILE reduce 180 + FOR reduce 180 + FOREACH reduce 180 + CONTINUE reduce 180 + BREAK reduce 180 + RETURN reduce 180 + ACTIONNAME reduce 180 -State 199: +State 238: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18314,24 +23228,80 @@ State 199: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (165) logicExpr ::= constExpr NE nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (176) logicExpr ::= constExpr LT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 176 + COMMA reduce 176 + LOR reduce 176 + LAND reduce 176 + EQ reduce 176 + LE reduce 176 + LT reduce 176 + GE reduce 176 + GT reduce 176 + NE reduce 176 + BITOR shift 66 + BITOR reduce 176 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 176 -- dropped by precedence + BITAND shift 67 + BITAND reduce 176 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 176 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 176 -- dropped by precedence + PLUS shift 74 + PLUS reduce 176 -- dropped by precedence + MINUS shift 73 + MINUS reduce 176 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 176 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 176 -- dropped by precedence + MOD shift 70 + MOD reduce 176 -- dropped by precedence + BITNOT reduce 176 + LPAREN shift 23 + LPAREN reduce 176 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 165 + LSQBRACKET reduce 176 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 176 -- dropped by precedence + SEMICOLON reduce 176 + NAME reduce 176 + COLON reduce 176 + FUNCTION reduce 176 + RPAREN reduce 176 + LBRACKET reduce 176 + VAR reduce 176 + NUMBER reduce 176 + RSQBRACKET reduce 176 + KILLS reduce 176 + TRGCONST reduce 176 + L2V reduce 176 + MAPSTRING reduce 176 + UNIT reduce 176 + SWITCH reduce 176 + LOCATION reduce 176 + STATTXTTBL reduce 176 + VARRAY reduce 176 + STATIC reduce 176 + CONST reduce 176 + INC reduce 176 + DEC reduce 176 + ONCE reduce 176 + IF reduce 176 + SWITCHCASE reduce 176 + WHILE reduce 176 + FOR reduce 176 + FOREACH reduce 176 + CONTINUE reduce 176 + BREAK reduce 176 + RETURN reduce 176 + ACTIONNAME reduce 176 -State 200: +State 239: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18347,24 +23317,80 @@ State 200: nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (161) logicExpr ::= constExpr EQ nonConstExpr * - - BITOR shift 65 - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (172) logicExpr ::= constExpr GE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 172 + COMMA reduce 172 + LOR reduce 172 + LAND reduce 172 + EQ reduce 172 + LE reduce 172 + LT reduce 172 + GE reduce 172 + GT reduce 172 + NE reduce 172 + BITOR shift 66 + BITOR reduce 172 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 172 -- dropped by precedence + BITAND shift 67 + BITAND reduce 172 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 172 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 172 -- dropped by precedence + PLUS shift 74 + PLUS reduce 172 -- dropped by precedence + MINUS shift 73 + MINUS reduce 172 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 172 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 172 -- dropped by precedence + MOD shift 70 + MOD reduce 172 -- dropped by precedence + BITNOT reduce 172 + LPAREN shift 23 + LPAREN reduce 172 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 161 + LSQBRACKET reduce 172 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 172 -- dropped by precedence + SEMICOLON reduce 172 + NAME reduce 172 + COLON reduce 172 + FUNCTION reduce 172 + RPAREN reduce 172 + LBRACKET reduce 172 + VAR reduce 172 + NUMBER reduce 172 + RSQBRACKET reduce 172 + KILLS reduce 172 + TRGCONST reduce 172 + L2V reduce 172 + MAPSTRING reduce 172 + UNIT reduce 172 + SWITCH reduce 172 + LOCATION reduce 172 + STATTXTTBL reduce 172 + VARRAY reduce 172 + STATIC reduce 172 + CONST reduce 172 + INC reduce 172 + DEC reduce 172 + ONCE reduce 172 + IF reduce 172 + SWITCHCASE reduce 172 + WHILE reduce 172 + FOR reduce 172 + FOREACH reduce 172 + CONTINUE reduce 172 + BREAK reduce 172 + RETURN reduce 172 + ACTIONNAME reduce 172 -State 201: +State 240: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18378,25 +23404,82 @@ State 201: nonConstExpr ::= nonConstExpr * LSHIFT expr nonConstExpr ::= nonConstExpr * RSHIFT expr nonConstExpr ::= nonConstExpr * BITAND expr - (149) nonConstExpr ::= constExpr BITOR nonConstExpr * nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - - BITXOR shift 64 - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (168) logicExpr ::= constExpr LE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 168 + COMMA reduce 168 + LOR reduce 168 + LAND reduce 168 + EQ reduce 168 + LE reduce 168 + LT reduce 168 + GE reduce 168 + GT reduce 168 + NE reduce 168 + BITOR shift 66 + BITOR reduce 168 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 168 -- dropped by precedence + BITAND shift 67 + BITAND reduce 168 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 168 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 168 -- dropped by precedence + PLUS shift 74 + PLUS reduce 168 -- dropped by precedence + MINUS shift 73 + MINUS reduce 168 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 168 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 168 -- dropped by precedence + MOD shift 70 + MOD reduce 168 -- dropped by precedence + BITNOT reduce 168 + LPAREN shift 23 + LPAREN reduce 168 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 149 + LSQBRACKET reduce 168 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 168 -- dropped by precedence + SEMICOLON reduce 168 + NAME reduce 168 + COLON reduce 168 + FUNCTION reduce 168 + RPAREN reduce 168 + LBRACKET reduce 168 + VAR reduce 168 + NUMBER reduce 168 + RSQBRACKET reduce 168 + KILLS reduce 168 + TRGCONST reduce 168 + L2V reduce 168 + MAPSTRING reduce 168 + UNIT reduce 168 + SWITCH reduce 168 + LOCATION reduce 168 + STATTXTTBL reduce 168 + VARRAY reduce 168 + STATIC reduce 168 + CONST reduce 168 + INC reduce 168 + DEC reduce 168 + ONCE reduce 168 + IF reduce 168 + SWITCHCASE reduce 168 + WHILE reduce 168 + FOR reduce 168 + FOREACH reduce 168 + CONTINUE reduce 168 + BREAK reduce 168 + RETURN reduce 168 + ACTIONNAME reduce 168 -State 202: +State 241: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18411,23 +23494,81 @@ State 202: nonConstExpr ::= nonConstExpr * RSHIFT expr nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr - (152) nonConstExpr ::= constExpr BITXOR nonConstExpr * nonConstExpr ::= nonConstExpr * BITXOR expr - - BITAND shift 66 - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (164) logicExpr ::= constExpr NE nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 164 + COMMA reduce 164 + LOR reduce 164 + LAND reduce 164 + EQ reduce 164 + LE reduce 164 + LT reduce 164 + GE reduce 164 + GT reduce 164 + NE reduce 164 + BITOR shift 66 + BITOR reduce 164 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 164 -- dropped by precedence + BITAND shift 67 + BITAND reduce 164 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 164 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 164 -- dropped by precedence + PLUS shift 74 + PLUS reduce 164 -- dropped by precedence + MINUS shift 73 + MINUS reduce 164 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 164 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 164 -- dropped by precedence + MOD shift 70 + MOD reduce 164 -- dropped by precedence + BITNOT reduce 164 + LPAREN shift 23 + LPAREN reduce 164 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 152 + LSQBRACKET reduce 164 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 164 -- dropped by precedence + SEMICOLON reduce 164 + NAME reduce 164 + COLON reduce 164 + FUNCTION reduce 164 + RPAREN reduce 164 + LBRACKET reduce 164 + VAR reduce 164 + NUMBER reduce 164 + RSQBRACKET reduce 164 + KILLS reduce 164 + TRGCONST reduce 164 + L2V reduce 164 + MAPSTRING reduce 164 + UNIT reduce 164 + SWITCH reduce 164 + LOCATION reduce 164 + STATTXTTBL reduce 164 + VARRAY reduce 164 + STATIC reduce 164 + CONST reduce 164 + INC reduce 164 + DEC reduce 164 + ONCE reduce 164 + IF reduce 164 + SWITCHCASE reduce 164 + WHILE reduce 164 + FOR reduce 164 + FOREACH reduce 164 + CONTINUE reduce 164 + BREAK reduce 164 + RETURN reduce 164 + ACTIONNAME reduce 164 -State 203: +State 242: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -18440,24 +23581,83 @@ State 203: nonConstExpr ::= nonConstExpr * MOD expr nonConstExpr ::= nonConstExpr * LSHIFT expr nonConstExpr ::= nonConstExpr * RSHIFT expr - (146) nonConstExpr ::= constExpr BITAND nonConstExpr * nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - - LSHIFT shift 68 - RSHIFT shift 67 - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 + (160) logicExpr ::= constExpr EQ nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 160 + COMMA reduce 160 + LOR reduce 160 + LAND reduce 160 + EQ reduce 160 + LE reduce 160 + LT reduce 160 + GE reduce 160 + GT reduce 160 + NE reduce 160 + BITOR shift 66 + BITOR reduce 160 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 160 -- dropped by precedence + BITAND shift 67 + BITAND reduce 160 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 160 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 160 -- dropped by precedence + PLUS shift 74 + PLUS reduce 160 -- dropped by precedence + MINUS shift 73 + MINUS reduce 160 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 160 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 160 -- dropped by precedence + MOD shift 70 + MOD reduce 160 -- dropped by precedence + BITNOT reduce 160 + LPAREN shift 23 + LPAREN reduce 160 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 146 + LSQBRACKET reduce 160 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 160 -- dropped by precedence + SEMICOLON reduce 160 + NAME reduce 160 + COLON reduce 160 + FUNCTION reduce 160 + RPAREN reduce 160 + LBRACKET reduce 160 + VAR reduce 160 + NUMBER reduce 160 + RSQBRACKET reduce 160 + KILLS reduce 160 + TRGCONST reduce 160 + L2V reduce 160 + MAPSTRING reduce 160 + UNIT reduce 160 + SWITCH reduce 160 + LOCATION reduce 160 + STATTXTTBL reduce 160 + VARRAY reduce 160 + STATIC reduce 160 + CONST reduce 160 + INC reduce 160 + DEC reduce 160 + ONCE reduce 160 + IF reduce 160 + SWITCHCASE reduce 160 + WHILE reduce 160 + FOR reduce 160 + FOREACH reduce 160 + CONTINUE reduce 160 + BREAK reduce 160 + RETURN reduce 160 + ACTIONNAME reduce 160 -State 204: +State 243: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -18467,8 +23667,8 @@ State 204: constExpr ::= constExpr * RSHIFT constExpr constExpr ::= constExpr * BITAND constExpr constExpr ::= constExpr * BITOR constExpr - (148) constExpr ::= constExpr BITOR constExpr * constExpr ::= constExpr * BITXOR constExpr + (157) constExpr ::= BITNOT constExpr * constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18476,39 +23676,91 @@ State 204: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - BITXOR shift 127 - BITAND shift 129 - LSHIFT shift 131 - RSHIFT shift 130 - PLUS shift 136 - MINUS shift 135 - DIVIDE shift 133 - MULTIPLY shift 134 - MOD shift 132 - {default} reduce 148 + QMARK reduce 157 + COMMA reduce 157 + LOR reduce 157 + LAND reduce 157 + EQ shift 138 -- dropped by precedence + EQ reduce 157 + LE shift 125 -- dropped by precedence + LE reduce 157 + LT shift 123 -- dropped by precedence + LT reduce 157 + GE shift 124 -- dropped by precedence + GE reduce 157 + GT shift 122 -- dropped by precedence + GT reduce 157 + NE shift 126 -- dropped by precedence + NE reduce 157 + BITOR shift 128 -- dropped by precedence + BITOR reduce 157 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 157 + BITAND shift 129 -- dropped by precedence + BITAND reduce 157 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 157 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 157 + PLUS shift 136 -- dropped by precedence + PLUS reduce 157 + MINUS shift 135 -- dropped by precedence + MINUS reduce 157 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 157 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 157 + MOD shift 132 -- dropped by precedence + MOD reduce 157 + BITNOT reduce 157 + LPAREN reduce 157 + LSQBRACKET reduce 157 + PERIOD reduce 157 + SEMICOLON reduce 157 + NAME reduce 157 + COLON reduce 157 + FUNCTION reduce 157 + RPAREN reduce 157 + LBRACKET reduce 157 + VAR reduce 157 + NUMBER reduce 157 + RSQBRACKET reduce 157 + KILLS reduce 157 + TRGCONST reduce 157 + L2V reduce 157 + MAPSTRING reduce 157 + UNIT reduce 157 + SWITCH reduce 157 + LOCATION reduce 157 + STATTXTTBL reduce 157 + VARRAY reduce 157 + STATIC reduce 157 + CONST reduce 157 + INC reduce 157 + DEC reduce 157 + ONCE reduce 157 + IF reduce 157 + SWITCHCASE reduce 157 + WHILE reduce 157 + FOR reduce 157 + FOREACH reduce 157 + CONTINUE reduce 157 + BREAK reduce 157 + RETURN reduce 157 + ACTIONNAME reduce 157 -State 205: +State 244: constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - (148) constExpr ::= constExpr BITOR constExpr * - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr + (155) constExpr ::= MINUS constExpr * constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18516,18 +23768,80 @@ State 205: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 148 + QMARK reduce 155 + COMMA reduce 155 + LOR reduce 155 + LAND reduce 155 + EQ shift 138 -- dropped by precedence + EQ reduce 155 + LE shift 125 -- dropped by precedence + LE reduce 155 + LT shift 123 -- dropped by precedence + LT reduce 155 + GE shift 124 -- dropped by precedence + GE reduce 155 + GT shift 122 -- dropped by precedence + GT reduce 155 + NE shift 126 -- dropped by precedence + NE reduce 155 + BITOR shift 128 -- dropped by precedence + BITOR reduce 155 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 155 + BITAND shift 129 -- dropped by precedence + BITAND reduce 155 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 155 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 155 + PLUS shift 136 -- dropped by precedence + PLUS reduce 155 + MINUS shift 135 -- dropped by precedence + MINUS reduce 155 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 155 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 155 + MOD shift 132 -- dropped by precedence + MOD reduce 155 + BITNOT reduce 155 + LPAREN reduce 155 + LSQBRACKET reduce 155 + PERIOD reduce 155 + SEMICOLON reduce 155 + NAME reduce 155 + COLON reduce 155 + FUNCTION reduce 155 + RPAREN reduce 155 + LBRACKET reduce 155 + VAR reduce 155 + NUMBER reduce 155 + RSQBRACKET reduce 155 + KILLS reduce 155 + TRGCONST reduce 155 + L2V reduce 155 + MAPSTRING reduce 155 + UNIT reduce 155 + SWITCH reduce 155 + LOCATION reduce 155 + STATTXTTBL reduce 155 + VARRAY reduce 155 + STATIC reduce 155 + CONST reduce 155 + INC reduce 155 + DEC reduce 155 + ONCE reduce 155 + IF reduce 155 + SWITCHCASE reduce 155 + WHILE reduce 155 + FOR reduce 155 + FOREACH reduce 155 + CONTINUE reduce 155 + BREAK reduce 155 + RETURN reduce 155 + ACTIONNAME reduce 155 -State 206: +State 245: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -18538,7 +23852,7 @@ State 206: constExpr ::= constExpr * BITAND constExpr constExpr ::= constExpr * BITOR constExpr constExpr ::= constExpr * BITXOR constExpr - (151) constExpr ::= constExpr BITXOR constExpr * + (153) constExpr ::= PLUS constExpr * constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18546,38 +23860,91 @@ State 206: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - BITAND shift 129 - LSHIFT shift 131 - RSHIFT shift 130 - PLUS shift 136 - MINUS shift 135 - DIVIDE shift 133 - MULTIPLY shift 134 - MOD shift 132 - {default} reduce 151 + QMARK reduce 153 + COMMA reduce 153 + LOR reduce 153 + LAND reduce 153 + EQ shift 138 -- dropped by precedence + EQ reduce 153 + LE shift 125 -- dropped by precedence + LE reduce 153 + LT shift 123 -- dropped by precedence + LT reduce 153 + GE shift 124 -- dropped by precedence + GE reduce 153 + GT shift 122 -- dropped by precedence + GT reduce 153 + NE shift 126 -- dropped by precedence + NE reduce 153 + BITOR shift 128 -- dropped by precedence + BITOR reduce 153 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 153 + BITAND shift 129 -- dropped by precedence + BITAND reduce 153 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 153 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 153 + PLUS shift 136 -- dropped by precedence + PLUS reduce 153 + MINUS shift 135 -- dropped by precedence + MINUS reduce 153 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 153 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 153 + MOD shift 132 -- dropped by precedence + MOD reduce 153 + BITNOT reduce 153 + LPAREN reduce 153 + LSQBRACKET reduce 153 + PERIOD reduce 153 + SEMICOLON reduce 153 + NAME reduce 153 + COLON reduce 153 + FUNCTION reduce 153 + RPAREN reduce 153 + LBRACKET reduce 153 + VAR reduce 153 + NUMBER reduce 153 + RSQBRACKET reduce 153 + KILLS reduce 153 + TRGCONST reduce 153 + L2V reduce 153 + MAPSTRING reduce 153 + UNIT reduce 153 + SWITCH reduce 153 + LOCATION reduce 153 + STATTXTTBL reduce 153 + VARRAY reduce 153 + STATIC reduce 153 + CONST reduce 153 + INC reduce 153 + DEC reduce 153 + ONCE reduce 153 + IF reduce 153 + SWITCHCASE reduce 153 + WHILE reduce 153 + FOR reduce 153 + FOREACH reduce 153 + CONTINUE reduce 153 + BREAK reduce 153 + RETURN reduce 153 + ACTIONNAME reduce 153 -State 207: +State 246: constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - (151) constExpr ::= constExpr BITXOR constExpr * - nonConstExpr ::= constExpr * BITXOR nonConstExpr + (150) constExpr ::= constExpr BITXOR constExpr * constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18585,73 +23952,80 @@ State 207: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 151 - -State 208: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - (143) nonConstExpr ::= constExpr RSHIFT nonConstExpr * - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 143 - -State 209: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - (140) nonConstExpr ::= constExpr LSHIFT nonConstExpr * - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - PLUS shift 73 - MINUS shift 72 - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 140 + QMARK reduce 150 + COMMA reduce 150 + LOR reduce 150 + LAND reduce 150 + EQ shift 138 -- dropped by precedence + EQ reduce 150 + LE shift 125 -- dropped by precedence + LE reduce 150 + LT shift 123 -- dropped by precedence + LT reduce 150 + GE shift 124 -- dropped by precedence + GE reduce 150 + GT shift 122 -- dropped by precedence + GT reduce 150 + NE shift 126 -- dropped by precedence + NE reduce 150 + BITOR shift 128 -- dropped by precedence + BITOR reduce 150 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 150 + BITAND shift 129 + BITAND reduce 150 -- dropped by precedence + LSHIFT shift 131 + LSHIFT reduce 150 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 150 -- dropped by precedence + PLUS shift 136 + PLUS reduce 150 -- dropped by precedence + MINUS shift 135 + MINUS reduce 150 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 150 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 150 -- dropped by precedence + MOD shift 132 + MOD reduce 150 -- dropped by precedence + BITNOT reduce 150 + LPAREN reduce 150 + LSQBRACKET reduce 150 + PERIOD reduce 150 + SEMICOLON reduce 150 + NAME reduce 150 + COLON reduce 150 + FUNCTION reduce 150 + RPAREN reduce 150 + LBRACKET reduce 150 + VAR reduce 150 + NUMBER reduce 150 + RSQBRACKET reduce 150 + KILLS reduce 150 + TRGCONST reduce 150 + L2V reduce 150 + MAPSTRING reduce 150 + UNIT reduce 150 + SWITCH reduce 150 + LOCATION reduce 150 + STATTXTTBL reduce 150 + VARRAY reduce 150 + STATIC reduce 150 + CONST reduce 150 + INC reduce 150 + DEC reduce 150 + ONCE reduce 150 + IF reduce 150 + SWITCHCASE reduce 150 + WHILE reduce 150 + FOR reduce 150 + FOREACH reduce 150 + CONTINUE reduce 150 + BREAK reduce 150 + RETURN reduce 150 + ACTIONNAME reduce 150 -State 210: +State 247: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -18660,8 +24034,8 @@ State 210: constExpr ::= constExpr * LSHIFT constExpr constExpr ::= constExpr * RSHIFT constExpr constExpr ::= constExpr * BITAND constExpr - (145) constExpr ::= constExpr BITAND constExpr * constExpr ::= constExpr * BITOR constExpr + (147) constExpr ::= constExpr BITOR constExpr * constExpr ::= constExpr * BITXOR constExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr @@ -18670,37 +24044,91 @@ State 210: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 147 + COMMA reduce 147 + LOR reduce 147 + LAND reduce 147 + EQ shift 138 -- dropped by precedence + EQ reduce 147 + LE shift 125 -- dropped by precedence + LE reduce 147 + LT shift 123 -- dropped by precedence + LT reduce 147 + GE shift 124 -- dropped by precedence + GE reduce 147 + GT shift 122 -- dropped by precedence + GT reduce 147 + NE shift 126 -- dropped by precedence + NE reduce 147 + BITOR shift 128 -- dropped by precedence + BITOR reduce 147 + BITXOR shift 127 + BITXOR reduce 147 -- dropped by precedence + BITAND shift 129 + BITAND reduce 147 -- dropped by precedence LSHIFT shift 131 + LSHIFT reduce 147 -- dropped by precedence RSHIFT shift 130 + RSHIFT reduce 147 -- dropped by precedence PLUS shift 136 + PLUS reduce 147 -- dropped by precedence MINUS shift 135 + MINUS reduce 147 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 147 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 147 -- dropped by precedence MOD shift 132 - {default} reduce 145 + MOD reduce 147 -- dropped by precedence + BITNOT reduce 147 + LPAREN reduce 147 + LSQBRACKET reduce 147 + PERIOD reduce 147 + SEMICOLON reduce 147 + NAME reduce 147 + COLON reduce 147 + FUNCTION reduce 147 + RPAREN reduce 147 + LBRACKET reduce 147 + VAR reduce 147 + NUMBER reduce 147 + RSQBRACKET reduce 147 + KILLS reduce 147 + TRGCONST reduce 147 + L2V reduce 147 + MAPSTRING reduce 147 + UNIT reduce 147 + SWITCH reduce 147 + LOCATION reduce 147 + STATTXTTBL reduce 147 + VARRAY reduce 147 + STATIC reduce 147 + CONST reduce 147 + INC reduce 147 + DEC reduce 147 + ONCE reduce 147 + IF reduce 147 + SWITCHCASE reduce 147 + WHILE reduce 147 + FOR reduce 147 + FOREACH reduce 147 + CONTINUE reduce 147 + BREAK reduce 147 + RETURN reduce 147 + ACTIONNAME reduce 147 -State 211: +State 248: constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - (145) constExpr ::= constExpr BITAND constExpr * - nonConstExpr ::= constExpr * BITAND nonConstExpr + (144) constExpr ::= constExpr BITAND constExpr * constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18708,68 +24136,80 @@ State 211: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 145 - -State 212: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - (128) nonConstExpr ::= constExpr MINUS nonConstExpr * - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 128 - -State 213: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - (125) nonConstExpr ::= constExpr PLUS nonConstExpr * - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - DIVIDE shift 70 - MULTIPLY shift 71 - MOD shift 69 - LPAREN shift 24 - LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 125 + QMARK reduce 144 + COMMA reduce 144 + LOR reduce 144 + LAND reduce 144 + EQ shift 138 -- dropped by precedence + EQ reduce 144 + LE shift 125 -- dropped by precedence + LE reduce 144 + LT shift 123 -- dropped by precedence + LT reduce 144 + GE shift 124 -- dropped by precedence + GE reduce 144 + GT shift 122 -- dropped by precedence + GT reduce 144 + NE shift 126 -- dropped by precedence + NE reduce 144 + BITOR shift 128 -- dropped by precedence + BITOR reduce 144 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 144 + BITAND shift 129 -- dropped by precedence + BITAND reduce 144 + LSHIFT shift 131 + LSHIFT reduce 144 -- dropped by precedence + RSHIFT shift 130 + RSHIFT reduce 144 -- dropped by precedence + PLUS shift 136 + PLUS reduce 144 -- dropped by precedence + MINUS shift 135 + MINUS reduce 144 -- dropped by precedence + DIVIDE shift 133 + DIVIDE reduce 144 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 144 -- dropped by precedence + MOD shift 132 + MOD reduce 144 -- dropped by precedence + BITNOT reduce 144 + LPAREN reduce 144 + LSQBRACKET reduce 144 + PERIOD reduce 144 + SEMICOLON reduce 144 + NAME reduce 144 + COLON reduce 144 + FUNCTION reduce 144 + RPAREN reduce 144 + LBRACKET reduce 144 + VAR reduce 144 + NUMBER reduce 144 + RSQBRACKET reduce 144 + KILLS reduce 144 + TRGCONST reduce 144 + L2V reduce 144 + MAPSTRING reduce 144 + UNIT reduce 144 + SWITCH reduce 144 + LOCATION reduce 144 + STATTXTTBL reduce 144 + VARRAY reduce 144 + STATIC reduce 144 + CONST reduce 144 + INC reduce 144 + DEC reduce 144 + ONCE reduce 144 + IF reduce 144 + SWITCHCASE reduce 144 + WHILE reduce 144 + FOR reduce 144 + FOREACH reduce 144 + CONTINUE reduce 144 + BREAK reduce 144 + RETURN reduce 144 + ACTIONNAME reduce 144 -State 214: +State 249: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr @@ -18777,7 +24217,7 @@ State 214: constExpr ::= constExpr * MOD constExpr constExpr ::= constExpr * LSHIFT constExpr constExpr ::= constExpr * RSHIFT constExpr - (142) constExpr ::= constExpr RSHIFT constExpr * + (141) constExpr ::= constExpr RSHIFT constExpr * constExpr ::= constExpr * BITAND constExpr constExpr ::= constExpr * BITOR constExpr constExpr ::= constExpr * BITXOR constExpr @@ -18788,21 +24228,87 @@ State 214: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 141 + COMMA reduce 141 + LOR reduce 141 + LAND reduce 141 + EQ shift 138 -- dropped by precedence + EQ reduce 141 + LE shift 125 -- dropped by precedence + LE reduce 141 + LT shift 123 -- dropped by precedence + LT reduce 141 + GE shift 124 -- dropped by precedence + GE reduce 141 + GT shift 122 -- dropped by precedence + GT reduce 141 + NE shift 126 -- dropped by precedence + NE reduce 141 + BITOR shift 128 -- dropped by precedence + BITOR reduce 141 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 141 + BITAND shift 129 -- dropped by precedence + BITAND reduce 141 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 141 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 141 PLUS shift 136 + PLUS reduce 141 -- dropped by precedence MINUS shift 135 + MINUS reduce 141 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 141 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 141 -- dropped by precedence MOD shift 132 - {default} reduce 142 + MOD reduce 141 -- dropped by precedence + BITNOT reduce 141 + LPAREN reduce 141 + LSQBRACKET reduce 141 + PERIOD reduce 141 + SEMICOLON reduce 141 + NAME reduce 141 + COLON reduce 141 + FUNCTION reduce 141 + RPAREN reduce 141 + LBRACKET reduce 141 + VAR reduce 141 + NUMBER reduce 141 + RSQBRACKET reduce 141 + KILLS reduce 141 + TRGCONST reduce 141 + L2V reduce 141 + MAPSTRING reduce 141 + UNIT reduce 141 + SWITCH reduce 141 + LOCATION reduce 141 + STATTXTTBL reduce 141 + VARRAY reduce 141 + STATIC reduce 141 + CONST reduce 141 + INC reduce 141 + DEC reduce 141 + ONCE reduce 141 + IF reduce 141 + SWITCHCASE reduce 141 + WHILE reduce 141 + FOR reduce 141 + FOREACH reduce 141 + CONTINUE reduce 141 + BREAK reduce 141 + RETURN reduce 141 + ACTIONNAME reduce 141 -State 215: +State 250: constExpr ::= constExpr * PLUS constExpr constExpr ::= constExpr * MINUS constExpr constExpr ::= constExpr * MULTIPLY constExpr constExpr ::= constExpr * DIVIDE constExpr constExpr ::= constExpr * MOD constExpr constExpr ::= constExpr * LSHIFT constExpr - (139) constExpr ::= constExpr LSHIFT constExpr * + (138) constExpr ::= constExpr LSHIFT constExpr * constExpr ::= constExpr * RSHIFT constExpr constExpr ::= constExpr * BITAND constExpr constExpr ::= constExpr * BITOR constExpr @@ -18814,35 +24320,91 @@ State 215: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 138 + COMMA reduce 138 + LOR reduce 138 + LAND reduce 138 + EQ shift 138 -- dropped by precedence + EQ reduce 138 + LE shift 125 -- dropped by precedence + LE reduce 138 + LT shift 123 -- dropped by precedence + LT reduce 138 + GE shift 124 -- dropped by precedence + GE reduce 138 + GT shift 122 -- dropped by precedence + GT reduce 138 + NE shift 126 -- dropped by precedence + NE reduce 138 + BITOR shift 128 -- dropped by precedence + BITOR reduce 138 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 138 + BITAND shift 129 -- dropped by precedence + BITAND reduce 138 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 138 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 138 PLUS shift 136 + PLUS reduce 138 -- dropped by precedence MINUS shift 135 + MINUS reduce 138 -- dropped by precedence DIVIDE shift 133 + DIVIDE reduce 138 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 138 -- dropped by precedence MOD shift 132 - {default} reduce 139 + MOD reduce 138 -- dropped by precedence + BITNOT reduce 138 + LPAREN reduce 138 + LSQBRACKET reduce 138 + PERIOD reduce 138 + SEMICOLON reduce 138 + NAME reduce 138 + COLON reduce 138 + FUNCTION reduce 138 + RPAREN reduce 138 + LBRACKET reduce 138 + VAR reduce 138 + NUMBER reduce 138 + RSQBRACKET reduce 138 + KILLS reduce 138 + TRGCONST reduce 138 + L2V reduce 138 + MAPSTRING reduce 138 + UNIT reduce 138 + SWITCH reduce 138 + LOCATION reduce 138 + STATTXTTBL reduce 138 + VARRAY reduce 138 + STATIC reduce 138 + CONST reduce 138 + INC reduce 138 + DEC reduce 138 + ONCE reduce 138 + IF reduce 138 + SWITCHCASE reduce 138 + WHILE reduce 138 + FOR reduce 138 + FOREACH reduce 138 + CONTINUE reduce 138 + BREAK reduce 138 + RETURN reduce 138 + ACTIONNAME reduce 138 -State 216: +State 251: constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr + (135) constExpr ::= constExpr MOD constExpr * constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - (142) constExpr ::= constExpr RSHIFT constExpr * - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18850,35 +24412,91 @@ State 216: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 142 + QMARK reduce 135 + COMMA reduce 135 + LOR reduce 135 + LAND reduce 135 + EQ shift 138 -- dropped by precedence + EQ reduce 135 + LE shift 125 -- dropped by precedence + LE reduce 135 + LT shift 123 -- dropped by precedence + LT reduce 135 + GE shift 124 -- dropped by precedence + GE reduce 135 + GT shift 122 -- dropped by precedence + GT reduce 135 + NE shift 126 -- dropped by precedence + NE reduce 135 + BITOR shift 128 -- dropped by precedence + BITOR reduce 135 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 135 + BITAND shift 129 -- dropped by precedence + BITAND reduce 135 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 135 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 135 + PLUS shift 136 -- dropped by precedence + PLUS reduce 135 + MINUS shift 135 -- dropped by precedence + MINUS reduce 135 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 135 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 135 + MOD shift 132 -- dropped by precedence + MOD reduce 135 + BITNOT reduce 135 + LPAREN reduce 135 + LSQBRACKET reduce 135 + PERIOD reduce 135 + SEMICOLON reduce 135 + NAME reduce 135 + COLON reduce 135 + FUNCTION reduce 135 + RPAREN reduce 135 + LBRACKET reduce 135 + VAR reduce 135 + NUMBER reduce 135 + RSQBRACKET reduce 135 + KILLS reduce 135 + TRGCONST reduce 135 + L2V reduce 135 + MAPSTRING reduce 135 + UNIT reduce 135 + SWITCH reduce 135 + LOCATION reduce 135 + STATTXTTBL reduce 135 + VARRAY reduce 135 + STATIC reduce 135 + CONST reduce 135 + INC reduce 135 + DEC reduce 135 + ONCE reduce 135 + IF reduce 135 + SWITCHCASE reduce 135 + WHILE reduce 135 + FOR reduce 135 + FOREACH reduce 135 + CONTINUE reduce 135 + BREAK reduce 135 + RETURN reduce 135 + ACTIONNAME reduce 135 -State 217: +State 252: constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr + (132) constExpr ::= constExpr DIVIDE constExpr * constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - (139) constExpr ::= constExpr LSHIFT constExpr * - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18886,46 +24504,91 @@ State 217: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 139 - -State 218: - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (106) funcexprStmt ::= funcexpr * - (109) nonConstExpr ::= funcexpr * - - COMMA reduce 106 - LSQBRACKET shift 356 - SEMICOLON reduce 106 - RPAREN reduce 106 - {default} reduce 109 + QMARK reduce 132 + COMMA reduce 132 + LOR reduce 132 + LAND reduce 132 + EQ shift 138 -- dropped by precedence + EQ reduce 132 + LE shift 125 -- dropped by precedence + LE reduce 132 + LT shift 123 -- dropped by precedence + LT reduce 132 + GE shift 124 -- dropped by precedence + GE reduce 132 + GT shift 122 -- dropped by precedence + GT reduce 132 + NE shift 126 -- dropped by precedence + NE reduce 132 + BITOR shift 128 -- dropped by precedence + BITOR reduce 132 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 132 + BITAND shift 129 -- dropped by precedence + BITAND reduce 132 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 132 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 132 + PLUS shift 136 -- dropped by precedence + PLUS reduce 132 + MINUS shift 135 -- dropped by precedence + MINUS reduce 132 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 132 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 132 + MOD shift 132 -- dropped by precedence + MOD reduce 132 + BITNOT reduce 132 + LPAREN reduce 132 + LSQBRACKET reduce 132 + PERIOD reduce 132 + SEMICOLON reduce 132 + NAME reduce 132 + COLON reduce 132 + FUNCTION reduce 132 + RPAREN reduce 132 + LBRACKET reduce 132 + VAR reduce 132 + NUMBER reduce 132 + RSQBRACKET reduce 132 + KILLS reduce 132 + TRGCONST reduce 132 + L2V reduce 132 + MAPSTRING reduce 132 + UNIT reduce 132 + SWITCH reduce 132 + LOCATION reduce 132 + STATTXTTBL reduce 132 + VARRAY reduce 132 + STATIC reduce 132 + CONST reduce 132 + INC reduce 132 + DEC reduce 132 + ONCE reduce 132 + IF reduce 132 + SWITCHCASE reduce 132 + WHILE reduce 132 + FOR reduce 132 + FOREACH reduce 132 + CONTINUE reduce 132 + BREAK reduce 132 + RETURN reduce 132 + ACTIONNAME reduce 132 -State 219: +State 253: constExpr ::= constExpr * PLUS constExpr - (124) constExpr ::= constExpr PLUS constExpr * - nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + (129) constExpr ::= constExpr MULTIPLY constExpr * constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18933,42 +24596,91 @@ State 219: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 124 - -State 220: - nonConstExpr ::= LPAREN logicExpr * RPAREN - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr - - LOR shift 82 - LAND shift 84 - RPAREN shift 456 + QMARK reduce 129 + COMMA reduce 129 + LOR reduce 129 + LAND reduce 129 + EQ shift 138 -- dropped by precedence + EQ reduce 129 + LE shift 125 -- dropped by precedence + LE reduce 129 + LT shift 123 -- dropped by precedence + LT reduce 129 + GE shift 124 -- dropped by precedence + GE reduce 129 + GT shift 122 -- dropped by precedence + GT reduce 129 + NE shift 126 -- dropped by precedence + NE reduce 129 + BITOR shift 128 -- dropped by precedence + BITOR reduce 129 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 129 + BITAND shift 129 -- dropped by precedence + BITAND reduce 129 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 129 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 129 + PLUS shift 136 -- dropped by precedence + PLUS reduce 129 + MINUS shift 135 -- dropped by precedence + MINUS reduce 129 + DIVIDE shift 133 -- dropped by precedence + DIVIDE reduce 129 + MULTIPLY shift 134 -- dropped by precedence + MULTIPLY reduce 129 + MOD shift 132 -- dropped by precedence + MOD reduce 129 + BITNOT reduce 129 + LPAREN reduce 129 + LSQBRACKET reduce 129 + PERIOD reduce 129 + SEMICOLON reduce 129 + NAME reduce 129 + COLON reduce 129 + FUNCTION reduce 129 + RPAREN reduce 129 + LBRACKET reduce 129 + VAR reduce 129 + NUMBER reduce 129 + RSQBRACKET reduce 129 + KILLS reduce 129 + TRGCONST reduce 129 + L2V reduce 129 + MAPSTRING reduce 129 + UNIT reduce 129 + SWITCH reduce 129 + LOCATION reduce 129 + STATTXTTBL reduce 129 + VARRAY reduce 129 + STATIC reduce 129 + CONST reduce 129 + INC reduce 129 + DEC reduce 129 + ONCE reduce 129 + IF reduce 129 + SWITCHCASE reduce 129 + WHILE reduce 129 + FOR reduce 129 + FOREACH reduce 129 + CONTINUE reduce 129 + BREAK reduce 129 + RETURN reduce 129 + ACTIONNAME reduce 129 -State 221: +State 254: constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr - (127) constExpr ::= constExpr MINUS constExpr * - nonConstExpr ::= constExpr * MINUS nonConstExpr + (126) constExpr ::= constExpr MINUS constExpr * constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -18976,15 +24688,83 @@ State 221: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - {default} reduce 127 + QMARK reduce 126 + COMMA reduce 126 + LOR reduce 126 + LAND reduce 126 + EQ shift 138 -- dropped by precedence + EQ reduce 126 + LE shift 125 -- dropped by precedence + LE reduce 126 + LT shift 123 -- dropped by precedence + LT reduce 126 + GE shift 124 -- dropped by precedence + GE reduce 126 + GT shift 122 -- dropped by precedence + GT reduce 126 + NE shift 126 -- dropped by precedence + NE reduce 126 + BITOR shift 128 -- dropped by precedence + BITOR reduce 126 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 126 + BITAND shift 129 -- dropped by precedence + BITAND reduce 126 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 126 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 126 + PLUS shift 136 -- dropped by precedence + PLUS reduce 126 + MINUS shift 135 -- dropped by precedence + MINUS reduce 126 + DIVIDE shift 133 + DIVIDE reduce 126 -- dropped by precedence + MULTIPLY shift 134 + MULTIPLY reduce 126 -- dropped by precedence + MOD shift 132 + MOD reduce 126 -- dropped by precedence + BITNOT reduce 126 + LPAREN reduce 126 + LSQBRACKET reduce 126 + PERIOD reduce 126 + SEMICOLON reduce 126 + NAME reduce 126 + COLON reduce 126 + FUNCTION reduce 126 + RPAREN reduce 126 + LBRACKET reduce 126 + VAR reduce 126 + NUMBER reduce 126 + RSQBRACKET reduce 126 + KILLS reduce 126 + TRGCONST reduce 126 + L2V reduce 126 + MAPSTRING reduce 126 + UNIT reduce 126 + SWITCH reduce 126 + LOCATION reduce 126 + STATTXTTBL reduce 126 + VARRAY reduce 126 + STATIC reduce 126 + CONST reduce 126 + INC reduce 126 + DEC reduce 126 + ONCE reduce 126 + IF reduce 126 + SWITCHCASE reduce 126 + WHILE reduce 126 + FOR reduce 126 + FOREACH reduce 126 + CONTINUE reduce 126 + BREAK reduce 126 + RETURN reduce 126 + ACTIONNAME reduce 126 -State 222: +State 255: constExpr ::= constExpr * PLUS constExpr + (123) constExpr ::= constExpr PLUS constExpr * constExpr ::= constExpr * MINUS constExpr - (127) constExpr ::= constExpr MINUS constExpr * constExpr ::= constExpr * MULTIPLY constExpr constExpr ::= constExpr * DIVIDE constExpr constExpr ::= constExpr * MOD constExpr @@ -19000,23 +24780,101 @@ State 222: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr + QMARK reduce 123 + COMMA reduce 123 + LOR reduce 123 + LAND reduce 123 + EQ shift 138 -- dropped by precedence + EQ reduce 123 + LE shift 125 -- dropped by precedence + LE reduce 123 + LT shift 123 -- dropped by precedence + LT reduce 123 + GE shift 124 -- dropped by precedence + GE reduce 123 + GT shift 122 -- dropped by precedence + GT reduce 123 + NE shift 126 -- dropped by precedence + NE reduce 123 + BITOR shift 128 -- dropped by precedence + BITOR reduce 123 + BITXOR shift 127 -- dropped by precedence + BITXOR reduce 123 + BITAND shift 129 -- dropped by precedence + BITAND reduce 123 + LSHIFT shift 131 -- dropped by precedence + LSHIFT reduce 123 + RSHIFT shift 130 -- dropped by precedence + RSHIFT reduce 123 + PLUS shift 136 -- dropped by precedence + PLUS reduce 123 + MINUS shift 135 -- dropped by precedence + MINUS reduce 123 DIVIDE shift 133 + DIVIDE reduce 123 -- dropped by precedence MULTIPLY shift 134 + MULTIPLY reduce 123 -- dropped by precedence MOD shift 132 - {default} reduce 127 + MOD reduce 123 -- dropped by precedence + BITNOT reduce 123 + LPAREN reduce 123 + LSQBRACKET reduce 123 + PERIOD reduce 123 + SEMICOLON reduce 123 + NAME reduce 123 + COLON reduce 123 + FUNCTION reduce 123 + RPAREN reduce 123 + LBRACKET reduce 123 + VAR reduce 123 + NUMBER reduce 123 + RSQBRACKET reduce 123 + KILLS reduce 123 + TRGCONST reduce 123 + L2V reduce 123 + MAPSTRING reduce 123 + UNIT reduce 123 + SWITCH reduce 123 + LOCATION reduce 123 + STATTXTTBL reduce 123 + VARRAY reduce 123 + STATIC reduce 123 + CONST reduce 123 + INC reduce 123 + DEC reduce 123 + ONCE reduce 123 + IF reduce 123 + SWITCHCASE reduce 123 + WHILE reduce 123 + FOR reduce 123 + FOREACH reduce 123 + CONTINUE reduce 123 + BREAK reduce 123 + RETURN reduce 123 + ACTIONNAME reduce 123 -State 223: +State 256: constExpr ::= constExpr * PLUS constExpr - (124) constExpr ::= constExpr PLUS constExpr * + nonConstExpr ::= constExpr * PLUS nonConstExpr constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr constExpr ::= constExpr * BITXOR constExpr + (150) constExpr ::= constExpr BITXOR constExpr * + nonConstExpr ::= constExpr * BITXOR nonConstExpr constExpr ::= constExpr * EQ constExpr constExpr ::= constExpr * NE constExpr constExpr ::= constExpr * LE constExpr @@ -19024,12 +24882,80 @@ State 223: constExpr ::= constExpr * LT constExpr constExpr ::= constExpr * GT constExpr - DIVIDE shift 133 - MULTIPLY shift 134 - MOD shift 132 - {default} reduce 124 + QMARK reduce 150 + COMMA reduce 150 + LOR reduce 150 + LAND reduce 150 + EQ shift 138 -- dropped by precedence + EQ reduce 150 + LE shift 125 -- dropped by precedence + LE reduce 150 + LT shift 123 -- dropped by precedence + LT reduce 150 + GE shift 124 -- dropped by precedence + GE reduce 150 + GT shift 122 -- dropped by precedence + GT reduce 150 + NE shift 126 -- dropped by precedence + NE reduce 150 + BITOR shift 102 -- dropped by precedence + BITOR reduce 150 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 150 + BITAND shift 103 + BITAND reduce 150 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 150 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 150 -- dropped by precedence + PLUS shift 113 + PLUS reduce 150 -- dropped by precedence + MINUS shift 112 + MINUS reduce 150 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 150 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 150 -- dropped by precedence + MOD shift 106 + MOD reduce 150 -- dropped by precedence + BITNOT reduce 150 + LPAREN reduce 150 + LSQBRACKET reduce 150 + PERIOD reduce 150 + SEMICOLON reduce 150 + NAME reduce 150 + COLON reduce 150 + FUNCTION reduce 150 + RPAREN reduce 150 + LBRACKET reduce 150 + VAR reduce 150 + NUMBER reduce 150 + RSQBRACKET reduce 150 + KILLS reduce 150 + TRGCONST reduce 150 + L2V reduce 150 + MAPSTRING reduce 150 + UNIT reduce 150 + SWITCH reduce 150 + LOCATION reduce 150 + STATTXTTBL reduce 150 + VARRAY reduce 150 + STATIC reduce 150 + CONST reduce 150 + INC reduce 150 + DEC reduce 150 + ONCE reduce 150 + IF reduce 150 + SWITCHCASE reduce 150 + WHILE reduce 150 + FOR reduce 150 + FOREACH reduce 150 + CONTINUE reduce 150 + BREAK reduce 150 + RETURN reduce 150 + ACTIONNAME reduce 150 -State 224: +State 257: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -19039,43 +24965,379 @@ State 224: nonConstExpr ::= nonConstExpr * MINUS expr nonConstExpr ::= nonConstExpr * MULTIPLY expr nonConstExpr ::= nonConstExpr * DIVIDE expr - (137) nonConstExpr ::= constExpr MOD nonConstExpr * nonConstExpr ::= nonConstExpr * MOD expr nonConstExpr ::= nonConstExpr * LSHIFT expr nonConstExpr ::= nonConstExpr * RSHIFT expr nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr + (151) nonConstExpr ::= constExpr BITXOR nonConstExpr * nonConstExpr ::= nonConstExpr * BITXOR expr - LPAREN shift 24 + QMARK shift 76 -- dropped by precedence + QMARK reduce 151 + COMMA reduce 151 + LOR reduce 151 + LAND reduce 151 + EQ reduce 151 + LE reduce 151 + LT reduce 151 + GE reduce 151 + GT reduce 151 + NE reduce 151 + BITOR shift 66 -- dropped by precedence + BITOR reduce 151 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 151 + BITAND shift 67 + BITAND reduce 151 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 151 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 151 -- dropped by precedence + PLUS shift 74 + PLUS reduce 151 -- dropped by precedence + MINUS shift 73 + MINUS reduce 151 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 151 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 151 -- dropped by precedence + MOD shift 70 + MOD reduce 151 -- dropped by precedence + BITNOT reduce 151 + LPAREN shift 23 + LPAREN reduce 151 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 137 + LSQBRACKET reduce 151 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 151 -- dropped by precedence + SEMICOLON reduce 151 + NAME reduce 151 + COLON reduce 151 + FUNCTION reduce 151 + RPAREN reduce 151 + LBRACKET reduce 151 + VAR reduce 151 + NUMBER reduce 151 + RSQBRACKET reduce 151 + KILLS reduce 151 + TRGCONST reduce 151 + L2V reduce 151 + MAPSTRING reduce 151 + UNIT reduce 151 + SWITCH reduce 151 + LOCATION reduce 151 + STATTXTTBL reduce 151 + VARRAY reduce 151 + STATIC reduce 151 + CONST reduce 151 + INC reduce 151 + DEC reduce 151 + ONCE reduce 151 + IF reduce 151 + SWITCHCASE reduce 151 + WHILE reduce 151 + FOR reduce 151 + FOREACH reduce 151 + CONTINUE reduce 151 + BREAK reduce 151 + RETURN reduce 151 + ACTIONNAME reduce 151 -State 225: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET +State 258: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + (147) constExpr ::= constExpr BITOR constExpr * + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 147 + COMMA reduce 147 + LOR reduce 147 + LAND reduce 147 + EQ shift 138 -- dropped by precedence + EQ reduce 147 + LE shift 125 -- dropped by precedence + LE reduce 147 + LT shift 123 -- dropped by precedence + LT reduce 147 + GE shift 124 -- dropped by precedence + GE reduce 147 + GT shift 122 -- dropped by precedence + GT reduce 147 + NE shift 126 -- dropped by precedence + NE reduce 147 + BITOR shift 102 -- dropped by precedence + BITOR reduce 147 + BITXOR shift 101 + BITXOR reduce 147 -- dropped by precedence + BITAND shift 103 + BITAND reduce 147 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 147 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 147 -- dropped by precedence + PLUS shift 113 + PLUS reduce 147 -- dropped by precedence + MINUS shift 112 + MINUS reduce 147 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 147 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 147 -- dropped by precedence + MOD shift 106 + MOD reduce 147 -- dropped by precedence + BITNOT reduce 147 + LPAREN reduce 147 + LSQBRACKET reduce 147 + PERIOD reduce 147 + SEMICOLON reduce 147 + NAME reduce 147 + COLON reduce 147 + FUNCTION reduce 147 + RPAREN reduce 147 + LBRACKET reduce 147 + VAR reduce 147 + NUMBER reduce 147 + RSQBRACKET reduce 147 + KILLS reduce 147 + TRGCONST reduce 147 + L2V reduce 147 + MAPSTRING reduce 147 + UNIT reduce 147 + SWITCH reduce 147 + LOCATION reduce 147 + STATTXTTBL reduce 147 + VARRAY reduce 147 + STATIC reduce 147 + CONST reduce 147 + INC reduce 147 + DEC reduce 147 + ONCE reduce 147 + IF reduce 147 + SWITCHCASE reduce 147 + WHILE reduce 147 + FOR reduce 147 + FOREACH reduce 147 + CONTINUE reduce 147 + BREAK reduce 147 + RETURN reduce 147 + ACTIONNAME reduce 147 + +State 259: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN nonConstExpr ::= nonConstExpr * QMARK expr COLON expr nonConstExpr ::= nonConstExpr * PLUS expr nonConstExpr ::= nonConstExpr * MINUS expr nonConstExpr ::= nonConstExpr * MULTIPLY expr - (134) nonConstExpr ::= constExpr DIVIDE nonConstExpr * nonConstExpr ::= nonConstExpr * DIVIDE expr nonConstExpr ::= nonConstExpr * MOD expr nonConstExpr ::= nonConstExpr * LSHIFT expr nonConstExpr ::= nonConstExpr * RSHIFT expr nonConstExpr ::= nonConstExpr * BITAND expr + (148) nonConstExpr ::= constExpr BITOR nonConstExpr * nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - LPAREN shift 24 + QMARK shift 76 -- dropped by precedence + QMARK reduce 148 + COMMA reduce 148 + LOR reduce 148 + LAND reduce 148 + EQ reduce 148 + LE reduce 148 + LT reduce 148 + GE reduce 148 + GT reduce 148 + NE reduce 148 + BITOR shift 66 -- dropped by precedence + BITOR reduce 148 + BITXOR shift 65 + BITXOR reduce 148 -- dropped by precedence + BITAND shift 67 + BITAND reduce 148 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 148 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 148 -- dropped by precedence + PLUS shift 74 + PLUS reduce 148 -- dropped by precedence + MINUS shift 73 + MINUS reduce 148 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 148 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 148 -- dropped by precedence + MOD shift 70 + MOD reduce 148 -- dropped by precedence + BITNOT reduce 148 + LPAREN shift 23 + LPAREN reduce 148 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 134 + LSQBRACKET reduce 148 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 148 -- dropped by precedence + SEMICOLON reduce 148 + NAME reduce 148 + COLON reduce 148 + FUNCTION reduce 148 + RPAREN reduce 148 + LBRACKET reduce 148 + VAR reduce 148 + NUMBER reduce 148 + RSQBRACKET reduce 148 + KILLS reduce 148 + TRGCONST reduce 148 + L2V reduce 148 + MAPSTRING reduce 148 + UNIT reduce 148 + SWITCH reduce 148 + LOCATION reduce 148 + STATTXTTBL reduce 148 + VARRAY reduce 148 + STATIC reduce 148 + CONST reduce 148 + INC reduce 148 + DEC reduce 148 + ONCE reduce 148 + IF reduce 148 + SWITCHCASE reduce 148 + WHILE reduce 148 + FOR reduce 148 + FOREACH reduce 148 + CONTINUE reduce 148 + BREAK reduce 148 + RETURN reduce 148 + ACTIONNAME reduce 148 -State 226: +State 260: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + (144) constExpr ::= constExpr BITAND constExpr * + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 144 + COMMA reduce 144 + LOR reduce 144 + LAND reduce 144 + EQ shift 138 -- dropped by precedence + EQ reduce 144 + LE shift 125 -- dropped by precedence + LE reduce 144 + LT shift 123 -- dropped by precedence + LT reduce 144 + GE shift 124 -- dropped by precedence + GE reduce 144 + GT shift 122 -- dropped by precedence + GT reduce 144 + NE shift 126 -- dropped by precedence + NE reduce 144 + BITOR shift 102 -- dropped by precedence + BITOR reduce 144 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 144 + BITAND shift 103 -- dropped by precedence + BITAND reduce 144 + LSHIFT shift 105 + LSHIFT reduce 144 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 144 -- dropped by precedence + PLUS shift 113 + PLUS reduce 144 -- dropped by precedence + MINUS shift 112 + MINUS reduce 144 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 144 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 144 -- dropped by precedence + MOD shift 106 + MOD reduce 144 -- dropped by precedence + BITNOT reduce 144 + LPAREN reduce 144 + LSQBRACKET reduce 144 + PERIOD reduce 144 + SEMICOLON reduce 144 + NAME reduce 144 + COLON reduce 144 + FUNCTION reduce 144 + RPAREN reduce 144 + LBRACKET reduce 144 + VAR reduce 144 + NUMBER reduce 144 + RSQBRACKET reduce 144 + KILLS reduce 144 + TRGCONST reduce 144 + L2V reduce 144 + MAPSTRING reduce 144 + UNIT reduce 144 + SWITCH reduce 144 + LOCATION reduce 144 + STATTXTTBL reduce 144 + VARRAY reduce 144 + STATIC reduce 144 + CONST reduce 144 + INC reduce 144 + DEC reduce 144 + ONCE reduce 144 + IF reduce 144 + SWITCHCASE reduce 144 + WHILE reduce 144 + FOR reduce 144 + FOREACH reduce 144 + CONTINUE reduce 144 + BREAK reduce 144 + RETURN reduce 144 + ACTIONNAME reduce 144 + +State 261: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -19083,22 +25345,190 @@ State 226: nonConstExpr ::= nonConstExpr * QMARK expr COLON expr nonConstExpr ::= nonConstExpr * PLUS expr nonConstExpr ::= nonConstExpr * MINUS expr - (131) nonConstExpr ::= constExpr MULTIPLY nonConstExpr * nonConstExpr ::= nonConstExpr * MULTIPLY expr nonConstExpr ::= nonConstExpr * DIVIDE expr nonConstExpr ::= nonConstExpr * MOD expr nonConstExpr ::= nonConstExpr * LSHIFT expr nonConstExpr ::= nonConstExpr * RSHIFT expr + (145) nonConstExpr ::= constExpr BITAND nonConstExpr * nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - LPAREN shift 24 + QMARK shift 76 -- dropped by precedence + QMARK reduce 145 + COMMA reduce 145 + LOR reduce 145 + LAND reduce 145 + EQ reduce 145 + LE reduce 145 + LT reduce 145 + GE reduce 145 + GT reduce 145 + NE reduce 145 + BITOR shift 66 -- dropped by precedence + BITOR reduce 145 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 145 + BITAND shift 67 -- dropped by precedence + BITAND reduce 145 + LSHIFT shift 69 + LSHIFT reduce 145 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 145 -- dropped by precedence + PLUS shift 74 + PLUS reduce 145 -- dropped by precedence + MINUS shift 73 + MINUS reduce 145 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 145 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 145 -- dropped by precedence + MOD shift 70 + MOD reduce 145 -- dropped by precedence + BITNOT reduce 145 + LPAREN shift 23 + LPAREN reduce 145 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 131 + LSQBRACKET reduce 145 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 145 -- dropped by precedence + SEMICOLON reduce 145 + NAME reduce 145 + COLON reduce 145 + FUNCTION reduce 145 + RPAREN reduce 145 + LBRACKET reduce 145 + VAR reduce 145 + NUMBER reduce 145 + RSQBRACKET reduce 145 + KILLS reduce 145 + TRGCONST reduce 145 + L2V reduce 145 + MAPSTRING reduce 145 + UNIT reduce 145 + SWITCH reduce 145 + LOCATION reduce 145 + STATTXTTBL reduce 145 + VARRAY reduce 145 + STATIC reduce 145 + CONST reduce 145 + INC reduce 145 + DEC reduce 145 + ONCE reduce 145 + IF reduce 145 + SWITCHCASE reduce 145 + WHILE reduce 145 + FOR reduce 145 + FOREACH reduce 145 + CONTINUE reduce 145 + BREAK reduce 145 + RETURN reduce 145 + ACTIONNAME reduce 145 -State 227: +State 262: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + (141) constExpr ::= constExpr RSHIFT constExpr * + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 141 + COMMA reduce 141 + LOR reduce 141 + LAND reduce 141 + EQ shift 138 -- dropped by precedence + EQ reduce 141 + LE shift 125 -- dropped by precedence + LE reduce 141 + LT shift 123 -- dropped by precedence + LT reduce 141 + GE shift 124 -- dropped by precedence + GE reduce 141 + GT shift 122 -- dropped by precedence + GT reduce 141 + NE shift 126 -- dropped by precedence + NE reduce 141 + BITOR shift 102 -- dropped by precedence + BITOR reduce 141 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 141 + BITAND shift 103 -- dropped by precedence + BITAND reduce 141 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 141 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 141 + PLUS shift 113 + PLUS reduce 141 -- dropped by precedence + MINUS shift 112 + MINUS reduce 141 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 141 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 141 -- dropped by precedence + MOD shift 106 + MOD reduce 141 -- dropped by precedence + BITNOT reduce 141 + LPAREN reduce 141 + LSQBRACKET reduce 141 + PERIOD reduce 141 + SEMICOLON reduce 141 + NAME reduce 141 + COLON reduce 141 + FUNCTION reduce 141 + RPAREN reduce 141 + LBRACKET reduce 141 + VAR reduce 141 + NUMBER reduce 141 + RSQBRACKET reduce 141 + KILLS reduce 141 + TRGCONST reduce 141 + L2V reduce 141 + MAPSTRING reduce 141 + UNIT reduce 141 + SWITCH reduce 141 + LOCATION reduce 141 + STATTXTTBL reduce 141 + VARRAY reduce 141 + STATIC reduce 141 + CONST reduce 141 + INC reduce 141 + DEC reduce 141 + ONCE reduce 141 + IF reduce 141 + SWITCHCASE reduce 141 + WHILE reduce 141 + FOR reduce 141 + FOREACH reduce 141 + CONTINUE reduce 141 + BREAK reduce 141 + RETURN reduce 141 + ACTIONNAME reduce 141 + +State 263: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -19110,18 +25540,186 @@ State 227: nonConstExpr ::= nonConstExpr * DIVIDE expr nonConstExpr ::= nonConstExpr * MOD expr nonConstExpr ::= nonConstExpr * LSHIFT expr + (142) nonConstExpr ::= constExpr RSHIFT nonConstExpr * nonConstExpr ::= nonConstExpr * RSHIFT expr nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (159) nonConstExpr ::= BITNOT nonConstExpr * - LPAREN shift 24 + QMARK shift 76 -- dropped by precedence + QMARK reduce 142 + COMMA reduce 142 + LOR reduce 142 + LAND reduce 142 + EQ reduce 142 + LE reduce 142 + LT reduce 142 + GE reduce 142 + GT reduce 142 + NE reduce 142 + BITOR shift 66 -- dropped by precedence + BITOR reduce 142 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 142 + BITAND shift 67 -- dropped by precedence + BITAND reduce 142 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 142 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 142 + PLUS shift 74 + PLUS reduce 142 -- dropped by precedence + MINUS shift 73 + MINUS reduce 142 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 142 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 142 -- dropped by precedence + MOD shift 70 + MOD reduce 142 -- dropped by precedence + BITNOT reduce 142 + LPAREN shift 23 + LPAREN reduce 142 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 159 + LSQBRACKET reduce 142 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 142 -- dropped by precedence + SEMICOLON reduce 142 + NAME reduce 142 + COLON reduce 142 + FUNCTION reduce 142 + RPAREN reduce 142 + LBRACKET reduce 142 + VAR reduce 142 + NUMBER reduce 142 + RSQBRACKET reduce 142 + KILLS reduce 142 + TRGCONST reduce 142 + L2V reduce 142 + MAPSTRING reduce 142 + UNIT reduce 142 + SWITCH reduce 142 + LOCATION reduce 142 + STATTXTTBL reduce 142 + VARRAY reduce 142 + STATIC reduce 142 + CONST reduce 142 + INC reduce 142 + DEC reduce 142 + ONCE reduce 142 + IF reduce 142 + SWITCHCASE reduce 142 + WHILE reduce 142 + FOR reduce 142 + FOREACH reduce 142 + CONTINUE reduce 142 + BREAK reduce 142 + RETURN reduce 142 + ACTIONNAME reduce 142 -State 228: +State 264: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + (138) constExpr ::= constExpr LSHIFT constExpr * + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 138 + COMMA reduce 138 + LOR reduce 138 + LAND reduce 138 + EQ shift 138 -- dropped by precedence + EQ reduce 138 + LE shift 125 -- dropped by precedence + LE reduce 138 + LT shift 123 -- dropped by precedence + LT reduce 138 + GE shift 124 -- dropped by precedence + GE reduce 138 + GT shift 122 -- dropped by precedence + GT reduce 138 + NE shift 126 -- dropped by precedence + NE reduce 138 + BITOR shift 102 -- dropped by precedence + BITOR reduce 138 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 138 + BITAND shift 103 -- dropped by precedence + BITAND reduce 138 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 138 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 138 + PLUS shift 113 + PLUS reduce 138 -- dropped by precedence + MINUS shift 112 + MINUS reduce 138 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 138 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 138 -- dropped by precedence + MOD shift 106 + MOD reduce 138 -- dropped by precedence + BITNOT reduce 138 + LPAREN reduce 138 + LSQBRACKET reduce 138 + PERIOD reduce 138 + SEMICOLON reduce 138 + NAME reduce 138 + COLON reduce 138 + FUNCTION reduce 138 + RPAREN reduce 138 + LBRACKET reduce 138 + VAR reduce 138 + NUMBER reduce 138 + RSQBRACKET reduce 138 + KILLS reduce 138 + TRGCONST reduce 138 + L2V reduce 138 + MAPSTRING reduce 138 + UNIT reduce 138 + SWITCH reduce 138 + LOCATION reduce 138 + STATTXTTBL reduce 138 + VARRAY reduce 138 + STATIC reduce 138 + CONST reduce 138 + INC reduce 138 + DEC reduce 138 + ONCE reduce 138 + IF reduce 138 + SWITCHCASE reduce 138 + WHILE reduce 138 + FOR reduce 138 + FOREACH reduce 138 + CONTINUE reduce 138 + BREAK reduce 138 + RETURN reduce 138 + ACTIONNAME reduce 138 + +State 265: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -19132,19 +25730,187 @@ State 228: nonConstExpr ::= nonConstExpr * MULTIPLY expr nonConstExpr ::= nonConstExpr * DIVIDE expr nonConstExpr ::= nonConstExpr * MOD expr + (139) nonConstExpr ::= constExpr LSHIFT nonConstExpr * nonConstExpr ::= nonConstExpr * LSHIFT expr nonConstExpr ::= nonConstExpr * RSHIFT expr nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (157) nonConstExpr ::= MINUS nonConstExpr * - LPAREN shift 24 + QMARK shift 76 -- dropped by precedence + QMARK reduce 139 + COMMA reduce 139 + LOR reduce 139 + LAND reduce 139 + EQ reduce 139 + LE reduce 139 + LT reduce 139 + GE reduce 139 + GT reduce 139 + NE reduce 139 + BITOR shift 66 -- dropped by precedence + BITOR reduce 139 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 139 + BITAND shift 67 -- dropped by precedence + BITAND reduce 139 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 139 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 139 + PLUS shift 74 + PLUS reduce 139 -- dropped by precedence + MINUS shift 73 + MINUS reduce 139 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 139 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 139 -- dropped by precedence + MOD shift 70 + MOD reduce 139 -- dropped by precedence + BITNOT reduce 139 + LPAREN shift 23 + LPAREN reduce 139 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 157 + LSQBRACKET reduce 139 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 139 -- dropped by precedence + SEMICOLON reduce 139 + NAME reduce 139 + COLON reduce 139 + FUNCTION reduce 139 + RPAREN reduce 139 + LBRACKET reduce 139 + VAR reduce 139 + NUMBER reduce 139 + RSQBRACKET reduce 139 + KILLS reduce 139 + TRGCONST reduce 139 + L2V reduce 139 + MAPSTRING reduce 139 + UNIT reduce 139 + SWITCH reduce 139 + LOCATION reduce 139 + STATTXTTBL reduce 139 + VARRAY reduce 139 + STATIC reduce 139 + CONST reduce 139 + INC reduce 139 + DEC reduce 139 + ONCE reduce 139 + IF reduce 139 + SWITCHCASE reduce 139 + WHILE reduce 139 + FOR reduce 139 + FOREACH reduce 139 + CONTINUE reduce 139 + BREAK reduce 139 + RETURN reduce 139 + ACTIONNAME reduce 139 -State 229: +State 266: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + (135) constExpr ::= constExpr MOD constExpr * + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr + + QMARK reduce 135 + COMMA reduce 135 + LOR reduce 135 + LAND reduce 135 + EQ shift 138 -- dropped by precedence + EQ reduce 135 + LE shift 125 -- dropped by precedence + LE reduce 135 + LT shift 123 -- dropped by precedence + LT reduce 135 + GE shift 124 -- dropped by precedence + GE reduce 135 + GT shift 122 -- dropped by precedence + GT reduce 135 + NE shift 126 -- dropped by precedence + NE reduce 135 + BITOR shift 102 -- dropped by precedence + BITOR reduce 135 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 135 + BITAND shift 103 -- dropped by precedence + BITAND reduce 135 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 135 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 135 + PLUS shift 113 -- dropped by precedence + PLUS reduce 135 + MINUS shift 112 -- dropped by precedence + MINUS reduce 135 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 135 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 135 + MOD shift 106 -- dropped by precedence + MOD reduce 135 + BITNOT reduce 135 + LPAREN reduce 135 + LSQBRACKET reduce 135 + PERIOD reduce 135 + SEMICOLON reduce 135 + NAME reduce 135 + COLON reduce 135 + FUNCTION reduce 135 + RPAREN reduce 135 + LBRACKET reduce 135 + VAR reduce 135 + NUMBER reduce 135 + RSQBRACKET reduce 135 + KILLS reduce 135 + TRGCONST reduce 135 + L2V reduce 135 + MAPSTRING reduce 135 + UNIT reduce 135 + SWITCH reduce 135 + LOCATION reduce 135 + STATTXTTBL reduce 135 + VARRAY reduce 135 + STATIC reduce 135 + CONST reduce 135 + INC reduce 135 + DEC reduce 135 + ONCE reduce 135 + IF reduce 135 + SWITCHCASE reduce 135 + WHILE reduce 135 + FOR reduce 135 + FOREACH reduce 135 + CONTINUE reduce 135 + BREAK reduce 135 + RETURN reduce 135 + ACTIONNAME reduce 135 + +State 267: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET @@ -19154,2052 +25920,5594 @@ State 229: nonConstExpr ::= nonConstExpr * MINUS expr nonConstExpr ::= nonConstExpr * MULTIPLY expr nonConstExpr ::= nonConstExpr * DIVIDE expr + (136) nonConstExpr ::= constExpr MOD nonConstExpr * nonConstExpr ::= nonConstExpr * MOD expr nonConstExpr ::= nonConstExpr * LSHIFT expr nonConstExpr ::= nonConstExpr * RSHIFT expr nonConstExpr ::= nonConstExpr * BITAND expr nonConstExpr ::= nonConstExpr * BITOR expr nonConstExpr ::= nonConstExpr * BITXOR expr - (155) nonConstExpr ::= PLUS nonConstExpr * - LPAREN shift 24 + QMARK shift 76 -- dropped by precedence + QMARK reduce 136 + COMMA reduce 136 + LOR reduce 136 + LAND reduce 136 + EQ reduce 136 + LE reduce 136 + LT reduce 136 + GE reduce 136 + GT reduce 136 + NE reduce 136 + BITOR shift 66 -- dropped by precedence + BITOR reduce 136 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 136 + BITAND shift 67 -- dropped by precedence + BITAND reduce 136 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 136 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 136 + PLUS shift 74 -- dropped by precedence + PLUS reduce 136 + MINUS shift 73 -- dropped by precedence + MINUS reduce 136 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 136 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 136 + MOD shift 70 -- dropped by precedence + MOD reduce 136 + BITNOT reduce 136 + LPAREN shift 23 + LPAREN reduce 136 -- dropped by precedence LSQBRACKET shift 79 - PERIOD shift 247 - {default} reduce 155 - -State 230: - relimp_path ::= relimp_path * PERIOD NAME - relimp_chunk ::= relimp_path * SEMICOLON - relimp_chunk ::= relimp_path * AS NAME SEMICOLON - - PERIOD shift 364 - SEMICOLON shift 541 - AS shift 363 - -State 231: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - cdef_global_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - - ASSIGN shift 33 - COMMA shift 299 + LSQBRACKET reduce 136 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 136 -- dropped by precedence + SEMICOLON reduce 136 + NAME reduce 136 + COLON reduce 136 + FUNCTION reduce 136 + RPAREN reduce 136 + LBRACKET reduce 136 + VAR reduce 136 + NUMBER reduce 136 + RSQBRACKET reduce 136 + KILLS reduce 136 + TRGCONST reduce 136 + L2V reduce 136 + MAPSTRING reduce 136 + UNIT reduce 136 + SWITCH reduce 136 + LOCATION reduce 136 + STATTXTTBL reduce 136 + VARRAY reduce 136 + STATIC reduce 136 + CONST reduce 136 + INC reduce 136 + DEC reduce 136 + ONCE reduce 136 + IF reduce 136 + SWITCHCASE reduce 136 + WHILE reduce 136 + FOR reduce 136 + FOREACH reduce 136 + CONTINUE reduce 136 + BREAK reduce 136 + RETURN reduce 136 + ACTIONNAME reduce 136 -State 232: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (188) vdef_stmt ::= VAR nameList_nonEmpty * - vdefAssign_global_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty +State 268: + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + (132) constExpr ::= constExpr DIVIDE constExpr * + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - ASSIGN shift 34 - COMMA shift 299 - {default} reduce 188 + QMARK reduce 132 + COMMA reduce 132 + LOR reduce 132 + LAND reduce 132 + EQ shift 138 -- dropped by precedence + EQ reduce 132 + LE shift 125 -- dropped by precedence + LE reduce 132 + LT shift 123 -- dropped by precedence + LT reduce 132 + GE shift 124 -- dropped by precedence + GE reduce 132 + GT shift 122 -- dropped by precedence + GT reduce 132 + NE shift 126 -- dropped by precedence + NE reduce 132 + BITOR shift 102 -- dropped by precedence + BITOR reduce 132 + BITXOR shift 101 -- dropped by precedence + BITXOR reduce 132 + BITAND shift 103 -- dropped by precedence + BITAND reduce 132 + LSHIFT shift 105 -- dropped by precedence + LSHIFT reduce 132 + RSHIFT shift 104 -- dropped by precedence + RSHIFT reduce 132 + PLUS shift 113 -- dropped by precedence + PLUS reduce 132 + MINUS shift 112 -- dropped by precedence + MINUS reduce 132 + DIVIDE shift 107 -- dropped by precedence + DIVIDE reduce 132 + MULTIPLY shift 108 -- dropped by precedence + MULTIPLY reduce 132 + MOD shift 106 -- dropped by precedence + MOD reduce 132 + BITNOT reduce 132 + LPAREN reduce 132 + LSQBRACKET reduce 132 + PERIOD reduce 132 + SEMICOLON reduce 132 + NAME reduce 132 + COLON reduce 132 + FUNCTION reduce 132 + RPAREN reduce 132 + LBRACKET reduce 132 + VAR reduce 132 + NUMBER reduce 132 + RSQBRACKET reduce 132 + KILLS reduce 132 + TRGCONST reduce 132 + L2V reduce 132 + MAPSTRING reduce 132 + UNIT reduce 132 + SWITCH reduce 132 + LOCATION reduce 132 + STATTXTTBL reduce 132 + VARRAY reduce 132 + STATIC reduce 132 + CONST reduce 132 + INC reduce 132 + DEC reduce 132 + ONCE reduce 132 + IF reduce 132 + SWITCHCASE reduce 132 + WHILE reduce 132 + FOR reduce 132 + FOREACH reduce 132 + CONTINUE reduce 132 + BREAK reduce 132 + RETURN reduce 132 + ACTIONNAME reduce 132 -State 233: - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON +State 269: + (152) nonConstExpr ::= nonConstExpr BITXOR expr * + + QMARK reduce 152 + COMMA reduce 152 + LOR reduce 152 + LAND reduce 152 + EQ reduce 152 + LE reduce 152 + LT reduce 152 + GE reduce 152 + GT reduce 152 + NE reduce 152 + BITOR reduce 152 + BITXOR reduce 152 + BITAND reduce 152 + LSHIFT reduce 152 + RSHIFT reduce 152 + PLUS reduce 152 + MINUS reduce 152 + DIVIDE reduce 152 + MULTIPLY reduce 152 + MOD reduce 152 + BITNOT reduce 152 + LPAREN reduce 152 + LSQBRACKET reduce 152 + PERIOD reduce 152 + SEMICOLON reduce 152 + NAME reduce 152 + COLON reduce 152 + FUNCTION reduce 152 + RPAREN reduce 152 + LBRACKET reduce 152 + VAR reduce 152 + NUMBER reduce 152 + RSQBRACKET reduce 152 + KILLS reduce 152 + TRGCONST reduce 152 + L2V reduce 152 + MAPSTRING reduce 152 + UNIT reduce 152 + SWITCH reduce 152 + LOCATION reduce 152 + STATTXTTBL reduce 152 + VARRAY reduce 152 + STATIC reduce 152 + CONST reduce 152 + INC reduce 152 + DEC reduce 152 + ONCE reduce 152 + IF reduce 152 + SWITCHCASE reduce 152 + WHILE reduce 152 + FOR reduce 152 + FOREACH reduce 152 + CONTINUE reduce 152 + BREAK reduce 152 + RETURN reduce 152 + ACTIONNAME reduce 152 - COMMA shift 30 - RPAREN shift 265 +State 270: + (149) nonConstExpr ::= nonConstExpr BITOR expr * + + QMARK reduce 149 + COMMA reduce 149 + LOR reduce 149 + LAND reduce 149 + EQ reduce 149 + LE reduce 149 + LT reduce 149 + GE reduce 149 + GT reduce 149 + NE reduce 149 + BITOR reduce 149 + BITXOR reduce 149 + BITAND reduce 149 + LSHIFT reduce 149 + RSHIFT reduce 149 + PLUS reduce 149 + MINUS reduce 149 + DIVIDE reduce 149 + MULTIPLY reduce 149 + MOD reduce 149 + BITNOT reduce 149 + LPAREN reduce 149 + LSQBRACKET reduce 149 + PERIOD reduce 149 + SEMICOLON reduce 149 + NAME reduce 149 + COLON reduce 149 + FUNCTION reduce 149 + RPAREN reduce 149 + LBRACKET reduce 149 + VAR reduce 149 + NUMBER reduce 149 + RSQBRACKET reduce 149 + KILLS reduce 149 + TRGCONST reduce 149 + L2V reduce 149 + MAPSTRING reduce 149 + UNIT reduce 149 + SWITCH reduce 149 + LOCATION reduce 149 + STATTXTTBL reduce 149 + VARRAY reduce 149 + STATIC reduce 149 + CONST reduce 149 + INC reduce 149 + DEC reduce 149 + ONCE reduce 149 + IF reduce 149 + SWITCHCASE reduce 149 + WHILE reduce 149 + FOR reduce 149 + FOREACH reduce 149 + CONTINUE reduce 149 + BREAK reduce 149 + RETURN reduce 149 + ACTIONNAME reduce 149 -State 234: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON +State 271: + (146) nonConstExpr ::= nonConstExpr BITAND expr * + + QMARK reduce 146 + COMMA reduce 146 + LOR reduce 146 + LAND reduce 146 + EQ reduce 146 + LE reduce 146 + LT reduce 146 + GE reduce 146 + GT reduce 146 + NE reduce 146 + BITOR reduce 146 + BITXOR reduce 146 + BITAND reduce 146 + LSHIFT reduce 146 + RSHIFT reduce 146 + PLUS reduce 146 + MINUS reduce 146 + DIVIDE reduce 146 + MULTIPLY reduce 146 + MOD reduce 146 + BITNOT reduce 146 + LPAREN reduce 146 + LSQBRACKET reduce 146 + PERIOD reduce 146 + SEMICOLON reduce 146 + NAME reduce 146 + COLON reduce 146 + FUNCTION reduce 146 + RPAREN reduce 146 + LBRACKET reduce 146 + VAR reduce 146 + NUMBER reduce 146 + RSQBRACKET reduce 146 + KILLS reduce 146 + TRGCONST reduce 146 + L2V reduce 146 + MAPSTRING reduce 146 + UNIT reduce 146 + SWITCH reduce 146 + LOCATION reduce 146 + STATTXTTBL reduce 146 + VARRAY reduce 146 + STATIC reduce 146 + CONST reduce 146 + INC reduce 146 + DEC reduce 146 + ONCE reduce 146 + IF reduce 146 + SWITCHCASE reduce 146 + WHILE reduce 146 + FOR reduce 146 + FOREACH reduce 146 + CONTINUE reduce 146 + BREAK reduce 146 + RETURN reduce 146 + ACTIONNAME reduce 146 - COMMA shift 32 - RPAREN shift 269 +State 272: + (143) nonConstExpr ::= nonConstExpr RSHIFT expr * + + QMARK reduce 143 + COMMA reduce 143 + LOR reduce 143 + LAND reduce 143 + EQ reduce 143 + LE reduce 143 + LT reduce 143 + GE reduce 143 + GT reduce 143 + NE reduce 143 + BITOR reduce 143 + BITXOR reduce 143 + BITAND reduce 143 + LSHIFT reduce 143 + RSHIFT reduce 143 + PLUS reduce 143 + MINUS reduce 143 + DIVIDE reduce 143 + MULTIPLY reduce 143 + MOD reduce 143 + BITNOT reduce 143 + LPAREN reduce 143 + LSQBRACKET reduce 143 + PERIOD reduce 143 + SEMICOLON reduce 143 + NAME reduce 143 + COLON reduce 143 + FUNCTION reduce 143 + RPAREN reduce 143 + LBRACKET reduce 143 + VAR reduce 143 + NUMBER reduce 143 + RSQBRACKET reduce 143 + KILLS reduce 143 + TRGCONST reduce 143 + L2V reduce 143 + MAPSTRING reduce 143 + UNIT reduce 143 + SWITCH reduce 143 + LOCATION reduce 143 + STATTXTTBL reduce 143 + VARRAY reduce 143 + STATIC reduce 143 + CONST reduce 143 + INC reduce 143 + DEC reduce 143 + ONCE reduce 143 + IF reduce 143 + SWITCHCASE reduce 143 + WHILE reduce 143 + FOR reduce 143 + FOREACH reduce 143 + CONTINUE reduce 143 + BREAK reduce 143 + RETURN reduce 143 + ACTIONNAME reduce 143 -State 235: - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - (103) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * - actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON +State 273: + (140) nonConstExpr ::= nonConstExpr LSHIFT expr * + + QMARK reduce 140 + COMMA reduce 140 + LOR reduce 140 + LAND reduce 140 + EQ reduce 140 + LE reduce 140 + LT reduce 140 + GE reduce 140 + GT reduce 140 + NE reduce 140 + BITOR reduce 140 + BITXOR reduce 140 + BITAND reduce 140 + LSHIFT reduce 140 + RSHIFT reduce 140 + PLUS reduce 140 + MINUS reduce 140 + DIVIDE reduce 140 + MULTIPLY reduce 140 + MOD reduce 140 + BITNOT reduce 140 + LPAREN reduce 140 + LSQBRACKET reduce 140 + PERIOD reduce 140 + SEMICOLON reduce 140 + NAME reduce 140 + COLON reduce 140 + FUNCTION reduce 140 + RPAREN reduce 140 + LBRACKET reduce 140 + VAR reduce 140 + NUMBER reduce 140 + RSQBRACKET reduce 140 + KILLS reduce 140 + TRGCONST reduce 140 + L2V reduce 140 + MAPSTRING reduce 140 + UNIT reduce 140 + SWITCH reduce 140 + LOCATION reduce 140 + STATTXTTBL reduce 140 + VARRAY reduce 140 + STATIC reduce 140 + CONST reduce 140 + INC reduce 140 + DEC reduce 140 + ONCE reduce 140 + IF reduce 140 + SWITCHCASE reduce 140 + WHILE reduce 140 + FOR reduce 140 + FOREACH reduce 140 + CONTINUE reduce 140 + BREAK reduce 140 + RETURN reduce 140 + ACTIONNAME reduce 140 - COMMA shift 30 - RPAREN shift 268 +State 274: + (279) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * + + QMARK reduce 279 + COMMA reduce 279 + LOR reduce 279 + LAND reduce 279 + EQ reduce 279 + LE reduce 279 + LT reduce 279 + GE reduce 279 + GT reduce 279 + NE reduce 279 + BITOR reduce 279 + BITXOR reduce 279 + BITAND reduce 279 + LSHIFT reduce 279 + RSHIFT reduce 279 + PLUS reduce 279 + MINUS reduce 279 + DIVIDE reduce 279 + MULTIPLY reduce 279 + MOD reduce 279 + BITNOT reduce 279 + LPAREN reduce 279 + LSQBRACKET reduce 279 + PERIOD reduce 279 + SEMICOLON reduce 279 + NAME reduce 279 + COLON reduce 279 + FUNCTION reduce 279 + RPAREN reduce 279 + LBRACKET reduce 279 + VAR reduce 279 + NUMBER reduce 279 + RSQBRACKET reduce 279 + KILLS reduce 279 + TRGCONST reduce 279 + L2V reduce 279 + MAPSTRING reduce 279 + UNIT reduce 279 + SWITCH reduce 279 + LOCATION reduce 279 + STATTXTTBL reduce 279 + VARRAY reduce 279 + STATIC reduce 279 + CONST reduce 279 + INC reduce 279 + DEC reduce 279 + ONCE reduce 279 + IF reduce 279 + SWITCHCASE reduce 279 + WHILE reduce 279 + FOR reduce 279 + FOREACH reduce 279 + CONTINUE reduce 279 + BREAK reduce 279 + RETURN reduce 279 + ACTIONNAME reduce 279 -State 236: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - (102) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON +State 275: + (137) nonConstExpr ::= nonConstExpr MOD expr * + + QMARK reduce 137 + COMMA reduce 137 + LOR reduce 137 + LAND reduce 137 + EQ reduce 137 + LE reduce 137 + LT reduce 137 + GE reduce 137 + GT reduce 137 + NE reduce 137 + BITOR reduce 137 + BITXOR reduce 137 + BITAND reduce 137 + LSHIFT reduce 137 + RSHIFT reduce 137 + PLUS reduce 137 + MINUS reduce 137 + DIVIDE reduce 137 + MULTIPLY reduce 137 + MOD reduce 137 + BITNOT reduce 137 + LPAREN reduce 137 + LSQBRACKET reduce 137 + PERIOD reduce 137 + SEMICOLON reduce 137 + NAME reduce 137 + COLON reduce 137 + FUNCTION reduce 137 + RPAREN reduce 137 + LBRACKET reduce 137 + VAR reduce 137 + NUMBER reduce 137 + RSQBRACKET reduce 137 + KILLS reduce 137 + TRGCONST reduce 137 + L2V reduce 137 + MAPSTRING reduce 137 + UNIT reduce 137 + SWITCH reduce 137 + LOCATION reduce 137 + STATTXTTBL reduce 137 + VARRAY reduce 137 + STATIC reduce 137 + CONST reduce 137 + INC reduce 137 + DEC reduce 137 + ONCE reduce 137 + IF reduce 137 + SWITCHCASE reduce 137 + WHILE reduce 137 + FOR reduce 137 + FOREACH reduce 137 + CONTINUE reduce 137 + BREAK reduce 137 + RETURN reduce 137 + ACTIONNAME reduce 137 - COMMA shift 32 - RPAREN shift 269 +State 276: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + (133) nonConstExpr ::= constExpr DIVIDE nonConstExpr * + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr -State 237: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - foreach_header ::= foreach_opener nameList_nonEmpty * COLON exprList_nonEmpty + QMARK shift 76 -- dropped by precedence + QMARK reduce 133 + COMMA reduce 133 + LOR reduce 133 + LAND reduce 133 + EQ reduce 133 + LE reduce 133 + LT reduce 133 + GE reduce 133 + GT reduce 133 + NE reduce 133 + BITOR shift 66 -- dropped by precedence + BITOR reduce 133 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 133 + BITAND shift 67 -- dropped by precedence + BITAND reduce 133 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 133 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 133 + PLUS shift 74 -- dropped by precedence + PLUS reduce 133 + MINUS shift 73 -- dropped by precedence + MINUS reduce 133 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 133 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 133 + MOD shift 70 -- dropped by precedence + MOD reduce 133 + BITNOT reduce 133 + LPAREN shift 23 + LPAREN reduce 133 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 133 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 133 -- dropped by precedence + SEMICOLON reduce 133 + NAME reduce 133 + COLON reduce 133 + FUNCTION reduce 133 + RPAREN reduce 133 + LBRACKET reduce 133 + VAR reduce 133 + NUMBER reduce 133 + RSQBRACKET reduce 133 + KILLS reduce 133 + TRGCONST reduce 133 + L2V reduce 133 + MAPSTRING reduce 133 + UNIT reduce 133 + SWITCH reduce 133 + LOCATION reduce 133 + STATTXTTBL reduce 133 + VARRAY reduce 133 + STATIC reduce 133 + CONST reduce 133 + INC reduce 133 + DEC reduce 133 + ONCE reduce 133 + IF reduce 133 + SWITCHCASE reduce 133 + WHILE reduce 133 + FOR reduce 133 + FOREACH reduce 133 + CONTINUE reduce 133 + BREAK reduce 133 + RETURN reduce 133 + ACTIONNAME reduce 133 - COMMA shift 299 - COLON shift 35 +State 277: + (134) nonConstExpr ::= nonConstExpr DIVIDE expr * + + QMARK reduce 134 + COMMA reduce 134 + LOR reduce 134 + LAND reduce 134 + EQ reduce 134 + LE reduce 134 + LT reduce 134 + GE reduce 134 + GT reduce 134 + NE reduce 134 + BITOR reduce 134 + BITXOR reduce 134 + BITAND reduce 134 + LSHIFT reduce 134 + RSHIFT reduce 134 + PLUS reduce 134 + MINUS reduce 134 + DIVIDE reduce 134 + MULTIPLY reduce 134 + MOD reduce 134 + BITNOT reduce 134 + LPAREN reduce 134 + LSQBRACKET reduce 134 + PERIOD reduce 134 + SEMICOLON reduce 134 + NAME reduce 134 + COLON reduce 134 + FUNCTION reduce 134 + RPAREN reduce 134 + LBRACKET reduce 134 + VAR reduce 134 + NUMBER reduce 134 + RSQBRACKET reduce 134 + KILLS reduce 134 + TRGCONST reduce 134 + L2V reduce 134 + MAPSTRING reduce 134 + UNIT reduce 134 + SWITCH reduce 134 + LOCATION reduce 134 + STATTXTTBL reduce 134 + VARRAY reduce 134 + STATIC reduce 134 + CONST reduce 134 + INC reduce 134 + DEC reduce 134 + ONCE reduce 134 + IF reduce 134 + SWITCHCASE reduce 134 + WHILE reduce 134 + FOR reduce 134 + FOREACH reduce 134 + CONTINUE reduce 134 + BREAK reduce 134 + RETURN reduce 134 + ACTIONNAME reduce 134 -State 238: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - case_clause ::= case_start exprList_nonEmpty * COLON +State 278: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + (130) nonConstExpr ::= constExpr MULTIPLY nonConstExpr * + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - COMMA shift 80 - COLON shift 422 + QMARK shift 76 -- dropped by precedence + QMARK reduce 130 + COMMA reduce 130 + LOR reduce 130 + LAND reduce 130 + EQ reduce 130 + LE reduce 130 + LT reduce 130 + GE reduce 130 + GT reduce 130 + NE reduce 130 + BITOR shift 66 -- dropped by precedence + BITOR reduce 130 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 130 + BITAND shift 67 -- dropped by precedence + BITAND reduce 130 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 130 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 130 + PLUS shift 74 -- dropped by precedence + PLUS reduce 130 + MINUS shift 73 -- dropped by precedence + MINUS reduce 130 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 130 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 130 + MOD shift 70 -- dropped by precedence + MOD reduce 130 + BITNOT reduce 130 + LPAREN shift 23 + LPAREN reduce 130 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 130 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 130 -- dropped by precedence + SEMICOLON reduce 130 + NAME reduce 130 + COLON reduce 130 + FUNCTION reduce 130 + RPAREN reduce 130 + LBRACKET reduce 130 + VAR reduce 130 + NUMBER reduce 130 + RSQBRACKET reduce 130 + KILLS reduce 130 + TRGCONST reduce 130 + L2V reduce 130 + MAPSTRING reduce 130 + UNIT reduce 130 + SWITCH reduce 130 + LOCATION reduce 130 + STATTXTTBL reduce 130 + VARRAY reduce 130 + STATIC reduce 130 + CONST reduce 130 + INC reduce 130 + DEC reduce 130 + ONCE reduce 130 + IF reduce 130 + SWITCHCASE reduce 130 + WHILE reduce 130 + FOR reduce 130 + FOREACH reduce 130 + CONTINUE reduce 130 + BREAK reduce 130 + RETURN reduce 130 + ACTIONNAME reduce 130 -State 239: - lvalueList_nonEmpty ::= lvalueList_nonEmpty * COMMA lvalue - assign_stmt ::= lvalueList_nonEmpty * ASSIGN exprList_nonEmpty +State 279: + (131) nonConstExpr ::= nonConstExpr MULTIPLY expr * + + QMARK reduce 131 + COMMA reduce 131 + LOR reduce 131 + LAND reduce 131 + EQ reduce 131 + LE reduce 131 + LT reduce 131 + GE reduce 131 + GT reduce 131 + NE reduce 131 + BITOR reduce 131 + BITXOR reduce 131 + BITAND reduce 131 + LSHIFT reduce 131 + RSHIFT reduce 131 + PLUS reduce 131 + MINUS reduce 131 + DIVIDE reduce 131 + MULTIPLY reduce 131 + MOD reduce 131 + BITNOT reduce 131 + LPAREN reduce 131 + LSQBRACKET reduce 131 + PERIOD reduce 131 + SEMICOLON reduce 131 + NAME reduce 131 + COLON reduce 131 + FUNCTION reduce 131 + RPAREN reduce 131 + LBRACKET reduce 131 + VAR reduce 131 + NUMBER reduce 131 + RSQBRACKET reduce 131 + KILLS reduce 131 + TRGCONST reduce 131 + L2V reduce 131 + MAPSTRING reduce 131 + UNIT reduce 131 + SWITCH reduce 131 + LOCATION reduce 131 + STATTXTTBL reduce 131 + VARRAY reduce 131 + STATIC reduce 131 + CONST reduce 131 + INC reduce 131 + DEC reduce 131 + ONCE reduce 131 + IF reduce 131 + SWITCHCASE reduce 131 + WHILE reduce 131 + FOR reduce 131 + FOREACH reduce 131 + CONTINUE reduce 131 + BREAK reduce 131 + RETURN reduce 131 + ACTIONNAME reduce 131 - ASSIGN shift 37 - COMMA shift 87 +State 280: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (158) nonConstExpr ::= BITNOT nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 158 + COMMA reduce 158 + LOR reduce 158 + LAND reduce 158 + EQ reduce 158 + LE reduce 158 + LT reduce 158 + GE reduce 158 + GT reduce 158 + NE reduce 158 + BITOR shift 66 -- dropped by precedence + BITOR reduce 158 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 158 + BITAND shift 67 -- dropped by precedence + BITAND reduce 158 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 158 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 158 + PLUS shift 74 -- dropped by precedence + PLUS reduce 158 + MINUS shift 73 -- dropped by precedence + MINUS reduce 158 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 158 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 158 + MOD shift 70 -- dropped by precedence + MOD reduce 158 + BITNOT reduce 158 + LPAREN shift 23 + LPAREN reduce 158 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 158 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 158 -- dropped by precedence + SEMICOLON reduce 158 + NAME reduce 158 + COLON reduce 158 + FUNCTION reduce 158 + RPAREN reduce 158 + LBRACKET reduce 158 + VAR reduce 158 + NUMBER reduce 158 + RSQBRACKET reduce 158 + KILLS reduce 158 + TRGCONST reduce 158 + L2V reduce 158 + MAPSTRING reduce 158 + UNIT reduce 158 + SWITCH reduce 158 + LOCATION reduce 158 + STATTXTTBL reduce 158 + VARRAY reduce 158 + STATIC reduce 158 + CONST reduce 158 + INC reduce 158 + DEC reduce 158 + ONCE reduce 158 + IF reduce 158 + SWITCHCASE reduce 158 + WHILE reduce 158 + FOR reduce 158 + FOREACH reduce 158 + CONTINUE reduce 158 + BREAK reduce 158 + RETURN reduce 158 + ACTIONNAME reduce 158 -State 240: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - cdef_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty +State 281: + (128) nonConstExpr ::= nonConstExpr MINUS expr * + + QMARK reduce 128 + COMMA reduce 128 + LOR reduce 128 + LAND reduce 128 + EQ reduce 128 + LE reduce 128 + LT reduce 128 + GE reduce 128 + GT reduce 128 + NE reduce 128 + BITOR reduce 128 + BITXOR reduce 128 + BITAND reduce 128 + LSHIFT reduce 128 + RSHIFT reduce 128 + PLUS reduce 128 + MINUS reduce 128 + DIVIDE reduce 128 + MULTIPLY reduce 128 + MOD reduce 128 + BITNOT reduce 128 + LPAREN reduce 128 + LSQBRACKET reduce 128 + PERIOD reduce 128 + SEMICOLON reduce 128 + NAME reduce 128 + COLON reduce 128 + FUNCTION reduce 128 + RPAREN reduce 128 + LBRACKET reduce 128 + VAR reduce 128 + NUMBER reduce 128 + RSQBRACKET reduce 128 + KILLS reduce 128 + TRGCONST reduce 128 + L2V reduce 128 + MAPSTRING reduce 128 + UNIT reduce 128 + SWITCH reduce 128 + LOCATION reduce 128 + STATTXTTBL reduce 128 + VARRAY reduce 128 + STATIC reduce 128 + CONST reduce 128 + INC reduce 128 + DEC reduce 128 + ONCE reduce 128 + IF reduce 128 + SWITCHCASE reduce 128 + WHILE reduce 128 + FOR reduce 128 + FOREACH reduce 128 + CONTINUE reduce 128 + BREAK reduce 128 + RETURN reduce 128 + ACTIONNAME reduce 128 - ASSIGN shift 38 - COMMA shift 299 +State 282: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (156) nonConstExpr ::= MINUS nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 156 + COMMA reduce 156 + LOR reduce 156 + LAND reduce 156 + EQ reduce 156 + LE reduce 156 + LT reduce 156 + GE reduce 156 + GT reduce 156 + NE reduce 156 + BITOR shift 66 -- dropped by precedence + BITOR reduce 156 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 156 + BITAND shift 67 -- dropped by precedence + BITAND reduce 156 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 156 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 156 + PLUS shift 74 -- dropped by precedence + PLUS reduce 156 + MINUS shift 73 -- dropped by precedence + MINUS reduce 156 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 156 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 156 + MOD shift 70 -- dropped by precedence + MOD reduce 156 + BITNOT reduce 156 + LPAREN shift 23 + LPAREN reduce 156 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 156 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 156 -- dropped by precedence + SEMICOLON reduce 156 + NAME reduce 156 + COLON reduce 156 + FUNCTION reduce 156 + RPAREN reduce 156 + LBRACKET reduce 156 + VAR reduce 156 + NUMBER reduce 156 + RSQBRACKET reduce 156 + KILLS reduce 156 + TRGCONST reduce 156 + L2V reduce 156 + MAPSTRING reduce 156 + UNIT reduce 156 + SWITCH reduce 156 + LOCATION reduce 156 + STATTXTTBL reduce 156 + VARRAY reduce 156 + STATIC reduce 156 + CONST reduce 156 + INC reduce 156 + DEC reduce 156 + ONCE reduce 156 + IF reduce 156 + SWITCHCASE reduce 156 + WHILE reduce 156 + FOR reduce 156 + FOREACH reduce 156 + CONTINUE reduce 156 + BREAK reduce 156 + RETURN reduce 156 + ACTIONNAME reduce 156 -State 241: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty +State 283: + (125) nonConstExpr ::= nonConstExpr PLUS expr * + + QMARK reduce 125 + COMMA reduce 125 + LOR reduce 125 + LAND reduce 125 + EQ reduce 125 + LE reduce 125 + LT reduce 125 + GE reduce 125 + GT reduce 125 + NE reduce 125 + BITOR reduce 125 + BITXOR reduce 125 + BITAND reduce 125 + LSHIFT reduce 125 + RSHIFT reduce 125 + PLUS reduce 125 + MINUS reduce 125 + DIVIDE reduce 125 + MULTIPLY reduce 125 + MOD reduce 125 + BITNOT reduce 125 + LPAREN reduce 125 + LSQBRACKET reduce 125 + PERIOD reduce 125 + SEMICOLON reduce 125 + NAME reduce 125 + COLON reduce 125 + FUNCTION reduce 125 + RPAREN reduce 125 + LBRACKET reduce 125 + VAR reduce 125 + NUMBER reduce 125 + RSQBRACKET reduce 125 + KILLS reduce 125 + TRGCONST reduce 125 + L2V reduce 125 + MAPSTRING reduce 125 + UNIT reduce 125 + SWITCH reduce 125 + LOCATION reduce 125 + STATTXTTBL reduce 125 + VARRAY reduce 125 + STATIC reduce 125 + CONST reduce 125 + INC reduce 125 + DEC reduce 125 + ONCE reduce 125 + IF reduce 125 + SWITCHCASE reduce 125 + WHILE reduce 125 + FOR reduce 125 + FOREACH reduce 125 + CONTINUE reduce 125 + BREAK reduce 125 + RETURN reduce 125 + ACTIONNAME reduce 125 - ASSIGN shift 39 - COMMA shift 299 +State 284: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + (154) nonConstExpr ::= PLUS nonConstExpr * + + QMARK shift 76 -- dropped by precedence + QMARK reduce 154 + COMMA reduce 154 + LOR reduce 154 + LAND reduce 154 + EQ reduce 154 + LE reduce 154 + LT reduce 154 + GE reduce 154 + GT reduce 154 + NE reduce 154 + BITOR shift 66 -- dropped by precedence + BITOR reduce 154 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 154 + BITAND shift 67 -- dropped by precedence + BITAND reduce 154 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 154 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 154 + PLUS shift 74 -- dropped by precedence + PLUS reduce 154 + MINUS shift 73 -- dropped by precedence + MINUS reduce 154 + DIVIDE shift 71 -- dropped by precedence + DIVIDE reduce 154 + MULTIPLY shift 72 -- dropped by precedence + MULTIPLY reduce 154 + MOD shift 70 -- dropped by precedence + MOD reduce 154 + BITNOT reduce 154 + LPAREN shift 23 + LPAREN reduce 154 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 154 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 154 -- dropped by precedence + SEMICOLON reduce 154 + NAME reduce 154 + COLON reduce 154 + FUNCTION reduce 154 + RPAREN reduce 154 + LBRACKET reduce 154 + VAR reduce 154 + NUMBER reduce 154 + RSQBRACKET reduce 154 + KILLS reduce 154 + TRGCONST reduce 154 + L2V reduce 154 + MAPSTRING reduce 154 + UNIT reduce 154 + SWITCH reduce 154 + LOCATION reduce 154 + STATTXTTBL reduce 154 + VARRAY reduce 154 + STATIC reduce 154 + CONST reduce 154 + INC reduce 154 + DEC reduce 154 + ONCE reduce 154 + IF reduce 154 + SWITCHCASE reduce 154 + WHILE reduce 154 + FOR reduce 154 + FOREACH reduce 154 + CONTINUE reduce 154 + BREAK reduce 154 + RETURN reduce 154 + ACTIONNAME reduce 154 -State 242: - nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (188) vdef_stmt ::= VAR nameList_nonEmpty * - vdefAssign_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty +State 285: + (121) logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * + + QMARK reduce 121 + COMMA reduce 121 + LOR reduce 121 + LAND reduce 121 + EQ reduce 121 + LE reduce 121 + LT reduce 121 + GE reduce 121 + GT reduce 121 + NE reduce 121 + BITOR reduce 121 + BITXOR reduce 121 + BITAND reduce 121 + LSHIFT reduce 121 + RSHIFT reduce 121 + PLUS reduce 121 + MINUS reduce 121 + DIVIDE reduce 121 + MULTIPLY reduce 121 + MOD reduce 121 + BITNOT reduce 121 + LPAREN reduce 121 + LSQBRACKET reduce 121 + PERIOD reduce 121 + SEMICOLON reduce 121 + NAME reduce 121 + COLON reduce 121 + FUNCTION reduce 121 + RPAREN reduce 121 + LBRACKET reduce 121 + VAR reduce 121 + NUMBER reduce 121 + RSQBRACKET reduce 121 + KILLS reduce 121 + TRGCONST reduce 121 + L2V reduce 121 + MAPSTRING reduce 121 + UNIT reduce 121 + SWITCH reduce 121 + LOCATION reduce 121 + STATTXTTBL reduce 121 + VARRAY reduce 121 + STATIC reduce 121 + CONST reduce 121 + INC reduce 121 + DEC reduce 121 + ONCE reduce 121 + IF reduce 121 + SWITCHCASE reduce 121 + WHILE reduce 121 + FOR reduce 121 + FOREACH reduce 121 + CONTINUE reduce 121 + BREAK reduce 121 + RETURN reduce 121 + ACTIONNAME reduce 121 - ASSIGN shift 40 - COMMA shift 299 - {default} reduce 188 +State 286: + (120) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * + + QMARK reduce 120 + COMMA reduce 120 + LOR reduce 120 + LAND reduce 120 + EQ reduce 120 + LE reduce 120 + LT reduce 120 + GE reduce 120 + GT reduce 120 + NE reduce 120 + BITOR reduce 120 + BITXOR reduce 120 + BITAND reduce 120 + LSHIFT reduce 120 + RSHIFT reduce 120 + PLUS reduce 120 + MINUS reduce 120 + DIVIDE reduce 120 + MULTIPLY reduce 120 + MOD reduce 120 + BITNOT reduce 120 + LPAREN reduce 120 + LSQBRACKET reduce 120 + PERIOD reduce 120 + SEMICOLON reduce 120 + NAME reduce 120 + COLON reduce 120 + FUNCTION reduce 120 + RPAREN reduce 120 + LBRACKET reduce 120 + VAR reduce 120 + NUMBER reduce 120 + RSQBRACKET reduce 120 + KILLS reduce 120 + TRGCONST reduce 120 + L2V reduce 120 + MAPSTRING reduce 120 + UNIT reduce 120 + SWITCH reduce 120 + LOCATION reduce 120 + STATTXTTBL reduce 120 + VARRAY reduce 120 + STATIC reduce 120 + CONST reduce 120 + INC reduce 120 + DEC reduce 120 + ONCE reduce 120 + IF reduce 120 + SWITCHCASE reduce 120 + WHILE reduce 120 + FOR reduce 120 + FOREACH reduce 120 + CONTINUE reduce 120 + BREAK reduce 120 + RETURN reduce 120 + ACTIONNAME reduce 120 -State 243: - numList_nonEmpty ::= numList_nonEmpty * COMMA NUMBER - exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty * RSQBRACKET RSQBRACKET +State 287: + (119) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * + + QMARK reduce 119 + COMMA reduce 119 + LOR reduce 119 + LAND reduce 119 + EQ reduce 119 + LE reduce 119 + LT reduce 119 + GE reduce 119 + GT reduce 119 + NE reduce 119 + BITOR reduce 119 + BITXOR reduce 119 + BITAND reduce 119 + LSHIFT reduce 119 + RSHIFT reduce 119 + PLUS reduce 119 + MINUS reduce 119 + DIVIDE reduce 119 + MULTIPLY reduce 119 + MOD reduce 119 + BITNOT reduce 119 + LPAREN reduce 119 + LSQBRACKET reduce 119 + PERIOD reduce 119 + SEMICOLON reduce 119 + NAME reduce 119 + COLON reduce 119 + FUNCTION reduce 119 + RPAREN reduce 119 + LBRACKET reduce 119 + VAR reduce 119 + NUMBER reduce 119 + RSQBRACKET reduce 119 + KILLS reduce 119 + TRGCONST reduce 119 + L2V reduce 119 + MAPSTRING reduce 119 + UNIT reduce 119 + SWITCH reduce 119 + LOCATION reduce 119 + STATTXTTBL reduce 119 + VARRAY reduce 119 + STATIC reduce 119 + CONST reduce 119 + INC reduce 119 + DEC reduce 119 + ONCE reduce 119 + IF reduce 119 + SWITCHCASE reduce 119 + WHILE reduce 119 + FOR reduce 119 + FOREACH reduce 119 + CONTINUE reduce 119 + BREAK reduce 119 + RETURN reduce 119 + ACTIONNAME reduce 119 - COMMA shift 332 - RSQBRACKET shift 331 +State 288: + (118) constExpr ::= LOCATION LPAREN STRING RPAREN * + + QMARK reduce 118 + COMMA reduce 118 + LOR reduce 118 + LAND reduce 118 + EQ reduce 118 + LE reduce 118 + LT reduce 118 + GE reduce 118 + GT reduce 118 + NE reduce 118 + BITOR reduce 118 + BITXOR reduce 118 + BITAND reduce 118 + LSHIFT reduce 118 + RSHIFT reduce 118 + PLUS reduce 118 + MINUS reduce 118 + DIVIDE reduce 118 + MULTIPLY reduce 118 + MOD reduce 118 + BITNOT reduce 118 + LPAREN reduce 118 + LSQBRACKET reduce 118 + PERIOD reduce 118 + SEMICOLON reduce 118 + NAME reduce 118 + COLON reduce 118 + FUNCTION reduce 118 + RPAREN reduce 118 + LBRACKET reduce 118 + VAR reduce 118 + NUMBER reduce 118 + RSQBRACKET reduce 118 + KILLS reduce 118 + TRGCONST reduce 118 + L2V reduce 118 + MAPSTRING reduce 118 + UNIT reduce 118 + SWITCH reduce 118 + LOCATION reduce 118 + STATTXTTBL reduce 118 + VARRAY reduce 118 + STATIC reduce 118 + CONST reduce 118 + INC reduce 118 + DEC reduce 118 + ONCE reduce 118 + IF reduce 118 + SWITCHCASE reduce 118 + WHILE reduce 118 + FOR reduce 118 + FOREACH reduce 118 + CONTINUE reduce 118 + BREAK reduce 118 + RETURN reduce 118 + ACTIONNAME reduce 118 -State 244: - (89) expr ::= logicExpr * - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr +State 289: + (117) constExpr ::= SWITCH LPAREN STRING RPAREN * + + QMARK reduce 117 + COMMA reduce 117 + LOR reduce 117 + LAND reduce 117 + EQ reduce 117 + LE reduce 117 + LT reduce 117 + GE reduce 117 + GT reduce 117 + NE reduce 117 + BITOR reduce 117 + BITXOR reduce 117 + BITAND reduce 117 + LSHIFT reduce 117 + RSHIFT reduce 117 + PLUS reduce 117 + MINUS reduce 117 + DIVIDE reduce 117 + MULTIPLY reduce 117 + MOD reduce 117 + BITNOT reduce 117 + LPAREN reduce 117 + LSQBRACKET reduce 117 + PERIOD reduce 117 + SEMICOLON reduce 117 + NAME reduce 117 + COLON reduce 117 + FUNCTION reduce 117 + RPAREN reduce 117 + LBRACKET reduce 117 + VAR reduce 117 + NUMBER reduce 117 + RSQBRACKET reduce 117 + KILLS reduce 117 + TRGCONST reduce 117 + L2V reduce 117 + MAPSTRING reduce 117 + UNIT reduce 117 + SWITCH reduce 117 + LOCATION reduce 117 + STATTXTTBL reduce 117 + VARRAY reduce 117 + STATIC reduce 117 + CONST reduce 117 + INC reduce 117 + DEC reduce 117 + ONCE reduce 117 + IF reduce 117 + SWITCHCASE reduce 117 + WHILE reduce 117 + FOR reduce 117 + FOREACH reduce 117 + CONTINUE reduce 117 + BREAK reduce 117 + RETURN reduce 117 + ACTIONNAME reduce 117 - LOR shift 82 - LAND shift 84 - {default} reduce 89 +State 290: + (116) constExpr ::= UNIT LPAREN STRING RPAREN * + + QMARK reduce 116 + COMMA reduce 116 + LOR reduce 116 + LAND reduce 116 + EQ reduce 116 + LE reduce 116 + LT reduce 116 + GE reduce 116 + GT reduce 116 + NE reduce 116 + BITOR reduce 116 + BITXOR reduce 116 + BITAND reduce 116 + LSHIFT reduce 116 + RSHIFT reduce 116 + PLUS reduce 116 + MINUS reduce 116 + DIVIDE reduce 116 + MULTIPLY reduce 116 + MOD reduce 116 + BITNOT reduce 116 + LPAREN reduce 116 + LSQBRACKET reduce 116 + PERIOD reduce 116 + SEMICOLON reduce 116 + NAME reduce 116 + COLON reduce 116 + FUNCTION reduce 116 + RPAREN reduce 116 + LBRACKET reduce 116 + VAR reduce 116 + NUMBER reduce 116 + RSQBRACKET reduce 116 + KILLS reduce 116 + TRGCONST reduce 116 + L2V reduce 116 + MAPSTRING reduce 116 + UNIT reduce 116 + SWITCH reduce 116 + LOCATION reduce 116 + STATTXTTBL reduce 116 + VARRAY reduce 116 + STATIC reduce 116 + CONST reduce 116 + INC reduce 116 + DEC reduce 116 + ONCE reduce 116 + IF reduce 116 + SWITCHCASE reduce 116 + WHILE reduce 116 + FOR reduce 116 + FOREACH reduce 116 + CONTINUE reduce 116 + BREAK reduce 116 + RETURN reduce 116 + ACTIONNAME reduce 116 -State 245: - (90) fNonConstArg ::= logicExpr * +State 291: + (115) constExpr ::= MAPSTRING LPAREN STRING RPAREN * + + QMARK reduce 115 + COMMA reduce 115 + LOR reduce 115 + LAND reduce 115 + EQ reduce 115 + LE reduce 115 + LT reduce 115 + GE reduce 115 + GT reduce 115 + NE reduce 115 + BITOR reduce 115 + BITXOR reduce 115 + BITAND reduce 115 + LSHIFT reduce 115 + RSHIFT reduce 115 + PLUS reduce 115 + MINUS reduce 115 + DIVIDE reduce 115 + MULTIPLY reduce 115 + MOD reduce 115 + BITNOT reduce 115 + LPAREN reduce 115 + LSQBRACKET reduce 115 + PERIOD reduce 115 + SEMICOLON reduce 115 + NAME reduce 115 + COLON reduce 115 + FUNCTION reduce 115 + RPAREN reduce 115 + LBRACKET reduce 115 + VAR reduce 115 + NUMBER reduce 115 + RSQBRACKET reduce 115 + KILLS reduce 115 + TRGCONST reduce 115 + L2V reduce 115 + MAPSTRING reduce 115 + UNIT reduce 115 + SWITCH reduce 115 + LOCATION reduce 115 + STATTXTTBL reduce 115 + VARRAY reduce 115 + STATIC reduce 115 + CONST reduce 115 + INC reduce 115 + DEC reduce 115 + ONCE reduce 115 + IF reduce 115 + SWITCHCASE reduce 115 + WHILE reduce 115 + FOR reduce 115 + FOREACH reduce 115 + CONTINUE reduce 115 + BREAK reduce 115 + RETURN reduce 115 + ACTIONNAME reduce 115 + +State 292: + (114) nonConstExpr ::= L2V LPAREN expr RPAREN * + + QMARK reduce 114 + COMMA reduce 114 + LOR reduce 114 + LAND reduce 114 + EQ reduce 114 + LE reduce 114 + LT reduce 114 + GE reduce 114 + GT reduce 114 + NE reduce 114 + BITOR reduce 114 + BITXOR reduce 114 + BITAND reduce 114 + LSHIFT reduce 114 + RSHIFT reduce 114 + PLUS reduce 114 + MINUS reduce 114 + DIVIDE reduce 114 + MULTIPLY reduce 114 + MOD reduce 114 + BITNOT reduce 114 + LPAREN reduce 114 + LSQBRACKET reduce 114 + PERIOD reduce 114 + SEMICOLON reduce 114 + NAME reduce 114 + COLON reduce 114 + FUNCTION reduce 114 + RPAREN reduce 114 + LBRACKET reduce 114 + VAR reduce 114 + NUMBER reduce 114 + RSQBRACKET reduce 114 + KILLS reduce 114 + TRGCONST reduce 114 + L2V reduce 114 + MAPSTRING reduce 114 + UNIT reduce 114 + SWITCH reduce 114 + LOCATION reduce 114 + STATTXTTBL reduce 114 + VARRAY reduce 114 + STATIC reduce 114 + CONST reduce 114 + INC reduce 114 + DEC reduce 114 + ONCE reduce 114 + IF reduce 114 + SWITCHCASE reduce 114 + WHILE reduce 114 + FOR reduce 114 + FOREACH reduce 114 + CONTINUE reduce 114 + BREAK reduce 114 + RETURN reduce 114 + ACTIONNAME reduce 114 + +State 293: + exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (108) nonConstExpr ::= funcexpr * + + QMARK reduce 108 + COMMA reduce 108 + LOR reduce 108 + LAND reduce 108 + EQ reduce 108 + LE reduce 108 + LT reduce 108 + GE reduce 108 + GT reduce 108 + NE reduce 108 + BITOR reduce 108 + BITXOR reduce 108 + BITAND reduce 108 + LSHIFT reduce 108 + RSHIFT reduce 108 + PLUS reduce 108 + MINUS reduce 108 + DIVIDE reduce 108 + MULTIPLY reduce 108 + MOD reduce 108 + BITNOT reduce 108 + LPAREN reduce 108 + LSQBRACKET shift 529 + LSQBRACKET reduce 108 -- dropped by precedence + PERIOD reduce 108 + SEMICOLON reduce 108 + NAME reduce 108 + COLON reduce 108 + FUNCTION reduce 108 + RPAREN reduce 108 + LBRACKET reduce 108 + VAR reduce 108 + NUMBER reduce 108 + RSQBRACKET reduce 108 + KILLS reduce 108 + TRGCONST reduce 108 + L2V reduce 108 + MAPSTRING reduce 108 + UNIT reduce 108 + SWITCH reduce 108 + LOCATION reduce 108 + STATTXTTBL reduce 108 + VARRAY reduce 108 + STATIC reduce 108 + CONST reduce 108 + INC reduce 108 + DEC reduce 108 + ONCE reduce 108 + IF reduce 108 + SWITCHCASE reduce 108 + WHILE reduce 108 + FOR reduce 108 + FOREACH reduce 108 + CONTINUE reduce 108 + BREAK reduce 108 + RETURN reduce 108 + ACTIONNAME reduce 108 + +State 294: + (88) expr ::= logicExpr * logicExpr ::= logicExpr * LAND logicExpr logicExpr ::= logicExpr * LOR logicExpr + QMARK reduce 88 + COMMA reduce 88 LOR shift 82 + LOR reduce 88 -- dropped by precedence LAND shift 84 - {default} reduce 90 + LAND reduce 88 -- dropped by precedence + EQ reduce 88 + LE reduce 88 + LT reduce 88 + GE reduce 88 + GT reduce 88 + NE reduce 88 + BITOR reduce 88 + BITXOR reduce 88 + BITAND reduce 88 + LSHIFT reduce 88 + RSHIFT reduce 88 + PLUS reduce 88 + MINUS reduce 88 + DIVIDE reduce 88 + MULTIPLY reduce 88 + MOD reduce 88 + BITNOT reduce 88 + LPAREN reduce 88 + LSQBRACKET reduce 88 + PERIOD reduce 88 + SEMICOLON reduce 88 + NAME reduce 88 + COLON reduce 88 + FUNCTION reduce 88 + RPAREN reduce 88 + LBRACKET reduce 88 + VAR reduce 88 + NUMBER reduce 88 + RSQBRACKET reduce 88 + KILLS reduce 88 + TRGCONST reduce 88 + L2V reduce 88 + MAPSTRING reduce 88 + UNIT reduce 88 + SWITCH reduce 88 + LOCATION reduce 88 + STATTXTTBL reduce 88 + VARRAY reduce 88 + STATIC reduce 88 + CONST reduce 88 + INC reduce 88 + DEC reduce 88 + ONCE reduce 88 + IF reduce 88 + SWITCHCASE reduce 88 + WHILE reduce 88 + FOR reduce 88 + FOREACH reduce 88 + CONTINUE reduce 88 + BREAK reduce 88 + RETURN reduce 88 + ACTIONNAME reduce 88 -State 246: - nonConstExpr ::= nonConstExpr PERIOD * NAME - nonConstExpr ::= nonConstExpr PERIOD * TRGCONST - lvalue ::= nonConstExpr PERIOD * NAME - lvalue ::= nonConstExpr PERIOD * TRGCONST - - NAME shift 185 - TRGCONST shift 184 - -State 247: - nonConstExpr ::= nonConstExpr PERIOD * NAME - nonConstExpr ::= nonConstExpr PERIOD * TRGCONST - - NAME shift 535 - TRGCONST shift 534 +State 295: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + (127) nonConstExpr ::= constExpr MINUS nonConstExpr * + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr -State 248: - (82) nonConstExpr ::= NAME * - fConstArg ::= NAME * ASSIGN expr - fConstArg ::= NAME * ASSIGN STRING - funcexpr ::= NAME * LPAREN fArgs RPAREN + QMARK shift 76 -- dropped by precedence + QMARK reduce 127 + COMMA reduce 127 + LOR reduce 127 + LAND reduce 127 + EQ reduce 127 + LE reduce 127 + LT reduce 127 + GE reduce 127 + GT reduce 127 + NE reduce 127 + BITOR shift 66 -- dropped by precedence + BITOR reduce 127 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 127 + BITAND shift 67 -- dropped by precedence + BITAND reduce 127 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 127 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 127 + PLUS shift 74 -- dropped by precedence + PLUS reduce 127 + MINUS shift 73 -- dropped by precedence + MINUS reduce 127 + DIVIDE shift 71 + DIVIDE reduce 127 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 127 -- dropped by precedence + MOD shift 70 + MOD reduce 127 -- dropped by precedence + BITNOT reduce 127 + LPAREN shift 23 + LPAREN reduce 127 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 127 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 127 -- dropped by precedence + SEMICOLON reduce 127 + NAME reduce 127 + COLON reduce 127 + FUNCTION reduce 127 + RPAREN reduce 127 + LBRACKET reduce 127 + VAR reduce 127 + NUMBER reduce 127 + RSQBRACKET reduce 127 + KILLS reduce 127 + TRGCONST reduce 127 + L2V reduce 127 + MAPSTRING reduce 127 + UNIT reduce 127 + SWITCH reduce 127 + LOCATION reduce 127 + STATTXTTBL reduce 127 + VARRAY reduce 127 + STATIC reduce 127 + CONST reduce 127 + INC reduce 127 + DEC reduce 127 + ONCE reduce 127 + IF reduce 127 + SWITCHCASE reduce 127 + WHILE reduce 127 + FOR reduce 127 + FOREACH reduce 127 + CONTINUE reduce 127 + BREAK reduce 127 + RETURN reduce 127 + ACTIONNAME reduce 127 - ASSIGN shift 45 - LPAREN shift 25 - {default} reduce 82 +State 296: + (109) constExpr ::= LPAREN constExpr RPAREN * + + QMARK reduce 109 + COMMA reduce 109 + LOR reduce 109 + LAND reduce 109 + EQ reduce 109 + LE reduce 109 + LT reduce 109 + GE reduce 109 + GT reduce 109 + NE reduce 109 + BITOR reduce 109 + BITXOR reduce 109 + BITAND reduce 109 + LSHIFT reduce 109 + RSHIFT reduce 109 + PLUS reduce 109 + MINUS reduce 109 + DIVIDE reduce 109 + MULTIPLY reduce 109 + MOD reduce 109 + BITNOT reduce 109 + LPAREN reduce 109 + LSQBRACKET reduce 109 + PERIOD reduce 109 + SEMICOLON reduce 109 + NAME reduce 109 + COLON reduce 109 + FUNCTION reduce 109 + RPAREN reduce 109 + LBRACKET reduce 109 + VAR reduce 109 + NUMBER reduce 109 + RSQBRACKET reduce 109 + KILLS reduce 109 + TRGCONST reduce 109 + L2V reduce 109 + MAPSTRING reduce 109 + UNIT reduce 109 + SWITCH reduce 109 + LOCATION reduce 109 + STATTXTTBL reduce 109 + VARRAY reduce 109 + STATIC reduce 109 + CONST reduce 109 + INC reduce 109 + DEC reduce 109 + ONCE reduce 109 + IF reduce 109 + SWITCHCASE reduce 109 + WHILE reduce 109 + FOR reduce 109 + FOREACH reduce 109 + CONTINUE reduce 109 + BREAK reduce 109 + RETURN reduce 109 + ACTIONNAME reduce 109 -State 249: - relimp_start ::= relimp_start * PERIOD - relimp_path ::= relimp_start * NAME +State 297: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + (124) nonConstExpr ::= constExpr PLUS nonConstExpr * + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr - PERIOD shift 544 - NAME shift 543 + QMARK shift 76 -- dropped by precedence + QMARK reduce 124 + COMMA reduce 124 + LOR reduce 124 + LAND reduce 124 + EQ reduce 124 + LE reduce 124 + LT reduce 124 + GE reduce 124 + GT reduce 124 + NE reduce 124 + BITOR shift 66 -- dropped by precedence + BITOR reduce 124 + BITXOR shift 65 -- dropped by precedence + BITXOR reduce 124 + BITAND shift 67 -- dropped by precedence + BITAND reduce 124 + LSHIFT shift 69 -- dropped by precedence + LSHIFT reduce 124 + RSHIFT shift 68 -- dropped by precedence + RSHIFT reduce 124 + PLUS shift 74 -- dropped by precedence + PLUS reduce 124 + MINUS shift 73 -- dropped by precedence + MINUS reduce 124 + DIVIDE shift 71 + DIVIDE reduce 124 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 124 -- dropped by precedence + MOD shift 70 + MOD reduce 124 -- dropped by precedence + BITNOT reduce 124 + LPAREN shift 23 + LPAREN reduce 124 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 124 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 124 -- dropped by precedence + SEMICOLON reduce 124 + NAME reduce 124 + COLON reduce 124 + FUNCTION reduce 124 + RPAREN reduce 124 + LBRACKET reduce 124 + VAR reduce 124 + NUMBER reduce 124 + RSQBRACKET reduce 124 + KILLS reduce 124 + TRGCONST reduce 124 + L2V reduce 124 + MAPSTRING reduce 124 + UNIT reduce 124 + SWITCH reduce 124 + LOCATION reduce 124 + STATTXTTBL reduce 124 + VARRAY reduce 124 + STATIC reduce 124 + CONST reduce 124 + INC reduce 124 + DEC reduce 124 + ONCE reduce 124 + IF reduce 124 + SWITCHCASE reduce 124 + WHILE reduce 124 + FOR reduce 124 + FOREACH reduce 124 + CONTINUE reduce 124 + BREAK reduce 124 + RETURN reduce 124 + ACTIONNAME reduce 124 -State 250: - dottedName ::= dottedName * PERIOD NAME - import_chunk ::= IMPORT dottedName * AS NAME - (22) import_chunk ::= IMPORT dottedName * +State 298: + (87) expr ::= constExpr * + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr + constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr + constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr + constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr + constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr + constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr - PERIOD shift 366 - AS shift 365 - {default} reduce 22 + QMARK reduce 87 + COMMA reduce 87 + LOR reduce 87 + LAND reduce 87 + EQ shift 100 + EQ reduce 87 -- dropped by precedence + LE shift 98 + LE reduce 87 -- dropped by precedence + LT shift 96 + LT reduce 87 -- dropped by precedence + GE shift 97 + GE reduce 87 -- dropped by precedence + GT shift 95 + GT reduce 87 -- dropped by precedence + NE shift 99 + NE reduce 87 -- dropped by precedence + BITOR shift 102 + BITOR reduce 87 -- dropped by precedence + BITXOR shift 101 + BITXOR reduce 87 -- dropped by precedence + BITAND shift 103 + BITAND reduce 87 -- dropped by precedence + LSHIFT shift 105 + LSHIFT reduce 87 -- dropped by precedence + RSHIFT shift 104 + RSHIFT reduce 87 -- dropped by precedence + PLUS shift 113 + PLUS reduce 87 -- dropped by precedence + MINUS shift 112 + MINUS reduce 87 -- dropped by precedence + DIVIDE shift 107 + DIVIDE reduce 87 -- dropped by precedence + MULTIPLY shift 108 + MULTIPLY reduce 87 -- dropped by precedence + MOD shift 106 + MOD reduce 87 -- dropped by precedence + BITNOT reduce 87 + LPAREN reduce 87 + LSQBRACKET reduce 87 + PERIOD reduce 87 + SEMICOLON reduce 87 + NAME reduce 87 + COLON reduce 87 + FUNCTION reduce 87 + RPAREN reduce 87 + LBRACKET reduce 87 + VAR reduce 87 + NUMBER reduce 87 + RSQBRACKET reduce 87 + KILLS reduce 87 + TRGCONST reduce 87 + L2V reduce 87 + MAPSTRING reduce 87 + UNIT reduce 87 + SWITCH reduce 87 + LOCATION reduce 87 + STATTXTTBL reduce 87 + VARRAY reduce 87 + STATIC reduce 87 + CONST reduce 87 + INC reduce 87 + DEC reduce 87 + ONCE reduce 87 + IF reduce 87 + SWITCHCASE reduce 87 + WHILE reduce 87 + FOR reduce 87 + FOREACH reduce 87 + CONTINUE reduce 87 + BREAK reduce 87 + RETURN reduce 87 + ACTIONNAME reduce 87 -State 251: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (193) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * +State 299: + (79) constExpr ::= KILLS * + + QMARK reduce 79 + COMMA reduce 79 + LOR reduce 79 + LAND reduce 79 + EQ reduce 79 + LE reduce 79 + LT reduce 79 + GE reduce 79 + GT reduce 79 + NE reduce 79 + BITOR reduce 79 + BITXOR reduce 79 + BITAND reduce 79 + LSHIFT reduce 79 + RSHIFT reduce 79 + PLUS reduce 79 + MINUS reduce 79 + DIVIDE reduce 79 + MULTIPLY reduce 79 + MOD reduce 79 + BITNOT reduce 79 + LPAREN reduce 79 + LSQBRACKET reduce 79 + PERIOD reduce 79 + SEMICOLON reduce 79 + NAME reduce 79 + COLON reduce 79 + FUNCTION reduce 79 + RPAREN reduce 79 + LBRACKET reduce 79 + VAR reduce 79 + NUMBER reduce 79 + RSQBRACKET reduce 79 + KILLS reduce 79 + TRGCONST reduce 79 + L2V reduce 79 + MAPSTRING reduce 79 + UNIT reduce 79 + SWITCH reduce 79 + LOCATION reduce 79 + STATTXTTBL reduce 79 + VARRAY reduce 79 + STATIC reduce 79 + CONST reduce 79 + INC reduce 79 + DEC reduce 79 + ONCE reduce 79 + IF reduce 79 + SWITCHCASE reduce 79 + WHILE reduce 79 + FOR reduce 79 + FOREACH reduce 79 + CONTINUE reduce 79 + BREAK reduce 79 + RETURN reduce 79 + ACTIONNAME reduce 79 - COMMA shift 80 - {default} reduce 193 +State 300: + (84) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * -State 252: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (191) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 80 - {default} reduce 191 - -State 253: - object_chunk ::= object_body RBRACKET * SEMICOLON - - SEMICOLON shift 371 - -State 254: - method_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - - RPAREN shift 146 - -State 255: - method_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - - LPAREN shift 115 - -State 256: - method_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - - NAME shift 255 - -State 257: - object_body ::= object_body VAR typedNameList_nonEmpty * SEMICOLON - - SEMICOLON shift 375 - -State 258: - object_body ::= OBJECT NAME * LBRACKET - - LBRACKET shift 376 - -State 259: - object_body ::= OBJECT * NAME LBRACKET + QMARK reduce 84 + COMMA reduce 84 + LOR reduce 84 + LAND reduce 84 + EQ reduce 84 + LE reduce 84 + LT reduce 84 + GE reduce 84 + GT reduce 84 + NE reduce 84 + BITOR reduce 84 + BITXOR reduce 84 + BITAND reduce 84 + LSHIFT reduce 84 + RSHIFT reduce 84 + PLUS reduce 84 + MINUS reduce 84 + DIVIDE reduce 84 + MULTIPLY reduce 84 + MOD reduce 84 + BITNOT reduce 84 + LPAREN reduce 84 + LSQBRACKET reduce 84 + PERIOD reduce 84 + SEMICOLON reduce 84 + NAME reduce 84 + COLON reduce 84 + FUNCTION reduce 84 + RPAREN reduce 84 + LBRACKET reduce 84 + VAR reduce 84 + NUMBER reduce 84 + RSQBRACKET reduce 84 + KILLS reduce 84 + TRGCONST reduce 84 + L2V reduce 84 + MAPSTRING reduce 84 + UNIT reduce 84 + SWITCH reduce 84 + LOCATION reduce 84 + STATTXTTBL reduce 84 + VARRAY reduce 84 + STATIC reduce 84 + CONST reduce 84 + INC reduce 84 + DEC reduce 84 + ONCE reduce 84 + IF reduce 84 + SWITCHCASE reduce 84 + WHILE reduce 84 + FOR reduce 84 + FOREACH reduce 84 + CONTINUE reduce 84 + BREAK reduce 84 + RETURN reduce 84 + ACTIONNAME reduce 84 - NAME shift 258 +State 301: + (83) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * -State 260: - logicExpr ::= KILLS LPAREN fArgs * RPAREN + QMARK reduce 83 + COMMA reduce 83 + LOR reduce 83 + LAND reduce 83 + EQ reduce 83 + LE reduce 83 + LT reduce 83 + GE reduce 83 + GT reduce 83 + NE reduce 83 + BITOR reduce 83 + BITXOR reduce 83 + BITAND reduce 83 + LSHIFT reduce 83 + RSHIFT reduce 83 + PLUS reduce 83 + MINUS reduce 83 + DIVIDE reduce 83 + MULTIPLY reduce 83 + MOD reduce 83 + BITNOT reduce 83 + LPAREN reduce 83 + LSQBRACKET reduce 83 + PERIOD reduce 83 + SEMICOLON reduce 83 + NAME reduce 83 + COLON reduce 83 + FUNCTION reduce 83 + RPAREN reduce 83 + LBRACKET reduce 83 + VAR reduce 83 + NUMBER reduce 83 + RSQBRACKET reduce 83 + KILLS reduce 83 + TRGCONST reduce 83 + L2V reduce 83 + MAPSTRING reduce 83 + UNIT reduce 83 + SWITCH reduce 83 + LOCATION reduce 83 + STATTXTTBL reduce 83 + VARRAY reduce 83 + STATIC reduce 83 + CONST reduce 83 + INC reduce 83 + DEC reduce 83 + ONCE reduce 83 + IF reduce 83 + SWITCHCASE reduce 83 + WHILE reduce 83 + FOR reduce 83 + FOREACH reduce 83 + CONTINUE reduce 83 + BREAK reduce 83 + RETURN reduce 83 + ACTIONNAME reduce 83 - RPAREN shift 380 +State 302: + (82) nonConstExpr ::= nonConstExpr PERIOD NAME * -State 261: - funcexpr ::= NAME LPAREN fArgs * RPAREN + QMARK reduce 82 + COMMA reduce 82 + LOR reduce 82 + LAND reduce 82 + EQ reduce 82 + LE reduce 82 + LT reduce 82 + GE reduce 82 + GT reduce 82 + NE reduce 82 + BITOR reduce 82 + BITXOR reduce 82 + BITAND reduce 82 + LSHIFT reduce 82 + RSHIFT reduce 82 + PLUS reduce 82 + MINUS reduce 82 + DIVIDE reduce 82 + MULTIPLY reduce 82 + MOD reduce 82 + BITNOT reduce 82 + LPAREN reduce 82 + LSQBRACKET reduce 82 + PERIOD reduce 82 + SEMICOLON reduce 82 + NAME reduce 82 + COLON reduce 82 + FUNCTION reduce 82 + RPAREN reduce 82 + LBRACKET reduce 82 + VAR reduce 82 + NUMBER reduce 82 + RSQBRACKET reduce 82 + KILLS reduce 82 + TRGCONST reduce 82 + L2V reduce 82 + MAPSTRING reduce 82 + UNIT reduce 82 + SWITCH reduce 82 + LOCATION reduce 82 + STATTXTTBL reduce 82 + VARRAY reduce 82 + STATIC reduce 82 + CONST reduce 82 + INC reduce 82 + DEC reduce 82 + ONCE reduce 82 + IF reduce 82 + SWITCHCASE reduce 82 + WHILE reduce 82 + FOR reduce 82 + FOREACH reduce 82 + CONTINUE reduce 82 + BREAK reduce 82 + RETURN reduce 82 + ACTIONNAME reduce 82 - RPAREN shift 383 +State 303: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + logicExpr ::= nonConstExpr * EQ constExpr + logicExpr ::= nonConstExpr * EQ nonConstExpr + logicExpr ::= nonConstExpr * NE constExpr + logicExpr ::= nonConstExpr * NE nonConstExpr + logicExpr ::= nonConstExpr * LE constExpr + logicExpr ::= nonConstExpr * LE nonConstExpr + logicExpr ::= nonConstExpr * GE constExpr + logicExpr ::= nonConstExpr * GE nonConstExpr + logicExpr ::= nonConstExpr * LT constExpr + logicExpr ::= nonConstExpr * LT nonConstExpr + logicExpr ::= nonConstExpr * GT constExpr + logicExpr ::= nonConstExpr * GT nonConstExpr + (183) logicExpr ::= nonConstExpr * -State 262: - lambdaExprStart ::= FUNCTION LPAREN typedNameList * RPAREN fdef_rettypes + QMARK shift 76 + QMARK reduce 183 -- dropped by precedence + COMMA reduce 183 + LOR reduce 183 + LAND reduce 183 + EQ shift 94 + EQ reduce 183 -- dropped by precedence + LE shift 92 + LE reduce 183 -- dropped by precedence + LT shift 90 + LT reduce 183 -- dropped by precedence + GE shift 91 + GE reduce 183 -- dropped by precedence + GT shift 89 + GT reduce 183 -- dropped by precedence + NE shift 93 + NE reduce 183 -- dropped by precedence + BITOR shift 66 + BITOR reduce 183 -- dropped by precedence + BITXOR shift 65 + BITXOR reduce 183 -- dropped by precedence + BITAND shift 67 + BITAND reduce 183 -- dropped by precedence + LSHIFT shift 69 + LSHIFT reduce 183 -- dropped by precedence + RSHIFT shift 68 + RSHIFT reduce 183 -- dropped by precedence + PLUS shift 74 + PLUS reduce 183 -- dropped by precedence + MINUS shift 73 + MINUS reduce 183 -- dropped by precedence + DIVIDE shift 71 + DIVIDE reduce 183 -- dropped by precedence + MULTIPLY shift 72 + MULTIPLY reduce 183 -- dropped by precedence + MOD shift 70 + MOD reduce 183 -- dropped by precedence + BITNOT reduce 183 + LPAREN shift 23 + LPAREN reduce 183 -- dropped by precedence + LSQBRACKET shift 79 + LSQBRACKET reduce 183 -- dropped by precedence + PERIOD shift 442 + PERIOD reduce 183 -- dropped by precedence + SEMICOLON reduce 183 + NAME reduce 183 + COLON reduce 183 + FUNCTION reduce 183 + RPAREN reduce 183 + LBRACKET reduce 183 + VAR reduce 183 + NUMBER reduce 183 + RSQBRACKET reduce 183 + KILLS reduce 183 + TRGCONST reduce 183 + L2V reduce 183 + MAPSTRING reduce 183 + UNIT reduce 183 + SWITCH reduce 183 + LOCATION reduce 183 + STATTXTTBL reduce 183 + VARRAY reduce 183 + STATIC reduce 183 + CONST reduce 183 + INC reduce 183 + DEC reduce 183 + ONCE reduce 183 + IF reduce 183 + SWITCHCASE reduce 183 + WHILE reduce 183 + FOR reduce 183 + FOREACH reduce 183 + CONTINUE reduce 183 + BREAK reduce 183 + RETURN reduce 183 + ACTIONNAME reduce 183 - RPAREN shift 147 +State 304: + (81) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN -State 263: - (67) typedNameList_nonEmpty ::= typedName * - typedNameList_nonEmpty ::= typedName * COMMA typedNameList_nonEmpty + QMARK reduce 81 + COMMA reduce 81 + LOR reduce 81 + LAND reduce 81 + EQ reduce 81 + LE reduce 81 + LT reduce 81 + GE reduce 81 + GT reduce 81 + NE reduce 81 + BITOR reduce 81 + BITXOR reduce 81 + BITAND reduce 81 + LSHIFT reduce 81 + RSHIFT reduce 81 + PLUS reduce 81 + MINUS reduce 81 + DIVIDE reduce 81 + MULTIPLY reduce 81 + MOD reduce 81 + BITNOT reduce 81 + LPAREN shift 24 + LPAREN reduce 81 -- dropped by precedence + LSQBRACKET reduce 81 + PERIOD reduce 81 + SEMICOLON reduce 81 + NAME reduce 81 + COLON reduce 81 + FUNCTION reduce 81 + RPAREN reduce 81 + LBRACKET reduce 81 + VAR reduce 81 + NUMBER reduce 81 + RSQBRACKET reduce 81 + KILLS reduce 81 + TRGCONST reduce 81 + L2V reduce 81 + MAPSTRING reduce 81 + UNIT reduce 81 + SWITCH reduce 81 + LOCATION reduce 81 + STATTXTTBL reduce 81 + VARRAY reduce 81 + STATIC reduce 81 + CONST reduce 81 + INC reduce 81 + DEC reduce 81 + ONCE reduce 81 + IF reduce 81 + SWITCHCASE reduce 81 + WHILE reduce 81 + FOR reduce 81 + FOREACH reduce 81 + CONTINUE reduce 81 + BREAK reduce 81 + RETURN reduce 81 + ACTIONNAME reduce 81 - COMMA shift 141 - {default} reduce 67 +State 305: + (80) constExpr ::= TRGCONST * + + QMARK reduce 80 + COMMA reduce 80 + LOR reduce 80 + LAND reduce 80 + EQ reduce 80 + LE reduce 80 + LT reduce 80 + GE reduce 80 + GT reduce 80 + NE reduce 80 + BITOR reduce 80 + BITXOR reduce 80 + BITAND reduce 80 + LSHIFT reduce 80 + RSHIFT reduce 80 + PLUS reduce 80 + MINUS reduce 80 + DIVIDE reduce 80 + MULTIPLY reduce 80 + MOD reduce 80 + BITNOT reduce 80 + LPAREN reduce 80 + LSQBRACKET reduce 80 + PERIOD reduce 80 + SEMICOLON reduce 80 + NAME reduce 80 + COLON reduce 80 + FUNCTION reduce 80 + RPAREN reduce 80 + LBRACKET reduce 80 + VAR reduce 80 + NUMBER reduce 80 + RSQBRACKET reduce 80 + KILLS reduce 80 + TRGCONST reduce 80 + L2V reduce 80 + MAPSTRING reduce 80 + UNIT reduce 80 + SWITCH reduce 80 + LOCATION reduce 80 + STATTXTTBL reduce 80 + VARRAY reduce 80 + STATIC reduce 80 + CONST reduce 80 + INC reduce 80 + DEC reduce 80 + ONCE reduce 80 + IF reduce 80 + SWITCHCASE reduce 80 + WHILE reduce 80 + FOR reduce 80 + FOREACH reduce 80 + CONTINUE reduce 80 + BREAK reduce 80 + RETURN reduce 80 + ACTIONNAME reduce 80 -State 264: - default_clause ::= DEFAULT * COLON +State 306: + (79) constExpr ::= KILLS * + logicExpr ::= KILLS * LPAREN fArgs RPAREN - COLON shift 391 + QMARK reduce 79 + COMMA reduce 79 + LOR reduce 79 + LAND reduce 79 + EQ reduce 79 + LE reduce 79 + LT reduce 79 + GE reduce 79 + GT reduce 79 + NE reduce 79 + BITOR reduce 79 + BITXOR reduce 79 + BITAND reduce 79 + LSHIFT reduce 79 + RSHIFT reduce 79 + PLUS reduce 79 + MINUS reduce 79 + DIVIDE reduce 79 + MULTIPLY reduce 79 + MOD reduce 79 + BITNOT reduce 79 + LPAREN shift 25 + LPAREN reduce 79 -- dropped by precedence + LSQBRACKET reduce 79 + PERIOD reduce 79 + SEMICOLON reduce 79 + NAME reduce 79 + COLON reduce 79 + FUNCTION reduce 79 + RPAREN reduce 79 + LBRACKET reduce 79 + VAR reduce 79 + NUMBER reduce 79 + RSQBRACKET reduce 79 + KILLS reduce 79 + TRGCONST reduce 79 + L2V reduce 79 + MAPSTRING reduce 79 + UNIT reduce 79 + SWITCH reduce 79 + LOCATION reduce 79 + STATTXTTBL reduce 79 + VARRAY reduce 79 + STATIC reduce 79 + CONST reduce 79 + INC reduce 79 + DEC reduce 79 + ONCE reduce 79 + IF reduce 79 + SWITCHCASE reduce 79 + WHILE reduce 79 + FOR reduce 79 + FOREACH reduce 79 + CONTINUE reduce 79 + BREAK reduce 79 + RETURN reduce 79 + ACTIONNAME reduce 79 -State 265: - actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON +State 307: + (78) constExpr ::= NUMBER * + + QMARK reduce 78 + COMMA reduce 78 + LOR reduce 78 + LAND reduce 78 + EQ reduce 78 + LE reduce 78 + LT reduce 78 + GE reduce 78 + GT reduce 78 + NE reduce 78 + BITOR reduce 78 + BITXOR reduce 78 + BITAND reduce 78 + LSHIFT reduce 78 + RSHIFT reduce 78 + PLUS reduce 78 + MINUS reduce 78 + DIVIDE reduce 78 + MULTIPLY reduce 78 + MOD reduce 78 + BITNOT reduce 78 + LPAREN reduce 78 + LSQBRACKET reduce 78 + PERIOD reduce 78 + SEMICOLON reduce 78 + NAME reduce 78 + COLON reduce 78 + FUNCTION reduce 78 + RPAREN reduce 78 + LBRACKET reduce 78 + VAR reduce 78 + NUMBER reduce 78 + RSQBRACKET reduce 78 + KILLS reduce 78 + TRGCONST reduce 78 + L2V reduce 78 + MAPSTRING reduce 78 + UNIT reduce 78 + SWITCH reduce 78 + LOCATION reduce 78 + STATTXTTBL reduce 78 + VARRAY reduce 78 + STATIC reduce 78 + CONST reduce 78 + INC reduce 78 + DEC reduce 78 + ONCE reduce 78 + IF reduce 78 + SWITCHCASE reduce 78 + WHILE reduce 78 + FOR reduce 78 + FOREACH reduce 78 + CONTINUE reduce 78 + BREAK reduce 78 + RETURN reduce 78 + ACTIONNAME reduce 78 - SEMICOLON shift 394 +State 308: + (73) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * + + QMARK reduce 73 + COMMA reduce 73 + LOR reduce 73 + LAND reduce 73 + EQ reduce 73 + LE reduce 73 + LT reduce 73 + GE reduce 73 + GT reduce 73 + NE reduce 73 + BITOR reduce 73 + BITXOR reduce 73 + BITAND reduce 73 + LSHIFT reduce 73 + RSHIFT reduce 73 + PLUS reduce 73 + MINUS reduce 73 + DIVIDE reduce 73 + MULTIPLY reduce 73 + MOD reduce 73 + BITNOT reduce 73 + LPAREN reduce 73 + LSQBRACKET reduce 73 + PERIOD reduce 73 + SEMICOLON reduce 73 + NAME reduce 73 + COLON reduce 73 + FUNCTION reduce 73 + RPAREN reduce 73 + LBRACKET reduce 73 + VAR reduce 73 + NUMBER reduce 73 + RSQBRACKET reduce 73 + KILLS reduce 73 + TRGCONST reduce 73 + L2V reduce 73 + MAPSTRING reduce 73 + UNIT reduce 73 + SWITCH reduce 73 + LOCATION reduce 73 + STATTXTTBL reduce 73 + VARRAY reduce 73 + STATIC reduce 73 + CONST reduce 73 + INC reduce 73 + DEC reduce 73 + ONCE reduce 73 + IF reduce 73 + SWITCHCASE reduce 73 + WHILE reduce 73 + FOR reduce 73 + FOREACH reduce 73 + CONTINUE reduce 73 + BREAK reduce 73 + RETURN reduce 73 + ACTIONNAME reduce 73 -State 266: - constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON - actionStmt ::= constActionList ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON +State 309: + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (108) nonConstExpr ::= funcexpr * + + QMARK reduce 108 + COMMA reduce 108 + LOR reduce 108 + LAND reduce 108 + EQ reduce 108 + LE reduce 108 + LT reduce 108 + GE reduce 108 + GT reduce 108 + NE reduce 108 + BITOR reduce 108 + BITXOR reduce 108 + BITAND reduce 108 + LSHIFT reduce 108 + RSHIFT reduce 108 + PLUS reduce 108 + MINUS reduce 108 + DIVIDE reduce 108 + MULTIPLY reduce 108 + MOD reduce 108 + BITNOT reduce 108 + LPAREN reduce 108 + LSQBRACKET shift 547 + LSQBRACKET reduce 108 -- dropped by precedence + PERIOD reduce 108 + SEMICOLON reduce 108 + NAME reduce 108 + COLON reduce 108 + FUNCTION reduce 108 + RPAREN reduce 108 + LBRACKET reduce 108 + VAR reduce 108 + NUMBER reduce 108 + RSQBRACKET reduce 108 + KILLS reduce 108 + TRGCONST reduce 108 + L2V reduce 108 + MAPSTRING reduce 108 + UNIT reduce 108 + SWITCH reduce 108 + LOCATION reduce 108 + STATTXTTBL reduce 108 + VARRAY reduce 108 + STATIC reduce 108 + CONST reduce 108 + INC reduce 108 + DEC reduce 108 + ONCE reduce 108 + IF reduce 108 + SWITCHCASE reduce 108 + WHILE reduce 108 + FOR reduce 108 + FOREACH reduce 108 + CONTINUE reduce 108 + BREAK reduce 108 + RETURN reduce 108 + ACTIONNAME reduce 108 - LPAREN shift 28 +State 310: + (74) exprList_nonEmpty ::= expr * + + COMMA reduce 74 + PLUS reduce 74 + MINUS reduce 74 + BITNOT reduce 74 + LPAREN reduce 74 + LSQBRACKET reduce 74 + SEMICOLON reduce 74 + NAME reduce 74 + COLON reduce 74 + FUNCTION reduce 74 + RPAREN reduce 74 + LBRACKET reduce 74 + VAR reduce 74 + NUMBER reduce 74 + RSQBRACKET reduce 74 + KILLS reduce 74 + TRGCONST reduce 74 + L2V reduce 74 + MAPSTRING reduce 74 + UNIT reduce 74 + SWITCH reduce 74 + LOCATION reduce 74 + STATTXTTBL reduce 74 + VARRAY reduce 74 + STATIC reduce 74 + CONST reduce 74 + INC reduce 74 + DEC reduce 74 + ONCE reduce 74 + IF reduce 74 + SWITCHCASE reduce 74 + WHILE reduce 74 + FOR reduce 74 + FOREACH reduce 74 + CONTINUE reduce 74 + BREAK reduce 74 + RETURN reduce 74 + ACTIONNAME reduce 74 -State 267: - constAction ::= ACTIONNAME LPAREN RPAREN * SEMICOLON +State 311: + (72) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * + + COMMA reduce 72 + PLUS reduce 72 + MINUS reduce 72 + BITNOT reduce 72 + LPAREN reduce 72 + LSQBRACKET reduce 72 + SEMICOLON reduce 72 + NAME reduce 72 + COLON reduce 72 + FUNCTION reduce 72 + RPAREN reduce 72 + LBRACKET reduce 72 + VAR reduce 72 + NUMBER reduce 72 + RSQBRACKET reduce 72 + KILLS reduce 72 + TRGCONST reduce 72 + L2V reduce 72 + MAPSTRING reduce 72 + UNIT reduce 72 + SWITCH reduce 72 + LOCATION reduce 72 + STATTXTTBL reduce 72 + VARRAY reduce 72 + STATIC reduce 72 + CONST reduce 72 + INC reduce 72 + DEC reduce 72 + ONCE reduce 72 + IF reduce 72 + SWITCHCASE reduce 72 + WHILE reduce 72 + FOR reduce 72 + FOREACH reduce 72 + CONTINUE reduce 72 + BREAK reduce 72 + RETURN reduce 72 + ACTIONNAME reduce 72 - SEMICOLON shift 396 +State 312: + (75) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * + + COMMA reduce 75 + PLUS reduce 75 + MINUS reduce 75 + BITNOT reduce 75 + LPAREN reduce 75 + LSQBRACKET reduce 75 + SEMICOLON reduce 75 + NAME reduce 75 + COLON reduce 75 + FUNCTION reduce 75 + RPAREN reduce 75 + LBRACKET reduce 75 + VAR reduce 75 + NUMBER reduce 75 + RSQBRACKET reduce 75 + KILLS reduce 75 + TRGCONST reduce 75 + L2V reduce 75 + MAPSTRING reduce 75 + UNIT reduce 75 + SWITCH reduce 75 + LOCATION reduce 75 + STATTXTTBL reduce 75 + VARRAY reduce 75 + STATIC reduce 75 + CONST reduce 75 + INC reduce 75 + DEC reduce 75 + ONCE reduce 75 + IF reduce 75 + SWITCHCASE reduce 75 + WHILE reduce 75 + FOR reduce 75 + FOREACH reduce 75 + CONTINUE reduce 75 + BREAK reduce 75 + RETURN reduce 75 + ACTIONNAME reduce 75 -State 268: - actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON +State 313: + (59) bodyStmtList ::= bodyStmt * + + PLUS reduce 59 + MINUS reduce 59 + BITNOT reduce 59 + LPAREN reduce 59 + LSQBRACKET reduce 59 + SEMICOLON reduce 59 + NAME reduce 59 + FUNCTION reduce 59 + LBRACKET reduce 59 + VAR reduce 59 + RBRACKET reduce 59 + NUMBER reduce 59 + KILLS reduce 59 + TRGCONST reduce 59 + L2V reduce 59 + MAPSTRING reduce 59 + UNIT reduce 59 + SWITCH reduce 59 + LOCATION reduce 59 + STATTXTTBL reduce 59 + VARRAY reduce 59 + STATIC reduce 59 + CONST reduce 59 + INC reduce 59 + DEC reduce 59 + ONCE reduce 59 + IF reduce 59 + SWITCHCASE reduce 59 + CASE reduce 59 + DEFAULT reduce 59 + WHILE reduce 59 + FOR reduce 59 + FOREACH reduce 59 + CONTINUE reduce 59 + BREAK reduce 59 + RETURN reduce 59 + ACTIONNAME reduce 59 - SEMICOLON shift 397 +State 314: + (232) case_clause ::= case_start exprList_nonEmpty COLON * + + PLUS reduce 232 + MINUS reduce 232 + BITNOT reduce 232 + LPAREN reduce 232 + LSQBRACKET reduce 232 + SEMICOLON reduce 232 + NAME reduce 232 + FUNCTION reduce 232 + LBRACKET reduce 232 + VAR reduce 232 + RBRACKET reduce 232 + NUMBER reduce 232 + KILLS reduce 232 + TRGCONST reduce 232 + L2V reduce 232 + MAPSTRING reduce 232 + UNIT reduce 232 + SWITCH reduce 232 + LOCATION reduce 232 + STATTXTTBL reduce 232 + VARRAY reduce 232 + STATIC reduce 232 + CONST reduce 232 + INC reduce 232 + DEC reduce 232 + ONCE reduce 232 + IF reduce 232 + SWITCHCASE reduce 232 + CASE reduce 232 + DEFAULT reduce 232 + WHILE reduce 232 + FOR reduce 232 + FOREACH reduce 232 + CONTINUE reduce 232 + BREAK reduce 232 + RETURN reduce 232 + ACTIONNAME reduce 232 -State 269: - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN * SEMICOLON +State 315: + (61) bodyStmtList ::= bodyStmtList error * + + PLUS reduce 61 + MINUS reduce 61 + BITNOT reduce 61 + LPAREN reduce 61 + LSQBRACKET reduce 61 + SEMICOLON reduce 61 + NAME reduce 61 + FUNCTION reduce 61 + LBRACKET reduce 61 + VAR reduce 61 + RBRACKET reduce 61 + NUMBER reduce 61 + KILLS reduce 61 + TRGCONST reduce 61 + L2V reduce 61 + MAPSTRING reduce 61 + UNIT reduce 61 + SWITCH reduce 61 + LOCATION reduce 61 + STATTXTTBL reduce 61 + VARRAY reduce 61 + STATIC reduce 61 + CONST reduce 61 + INC reduce 61 + DEC reduce 61 + ONCE reduce 61 + IF reduce 61 + SWITCHCASE reduce 61 + CASE reduce 61 + DEFAULT reduce 61 + WHILE reduce 61 + FOR reduce 61 + FOREACH reduce 61 + CONTINUE reduce 61 + BREAK reduce 61 + RETURN reduce 61 + ACTIONNAME reduce 61 - SEMICOLON shift 398 +State 316: + (60) bodyStmtList ::= bodyStmtList bodyStmt * + + PLUS reduce 60 + MINUS reduce 60 + BITNOT reduce 60 + LPAREN reduce 60 + LSQBRACKET reduce 60 + SEMICOLON reduce 60 + NAME reduce 60 + FUNCTION reduce 60 + LBRACKET reduce 60 + VAR reduce 60 + RBRACKET reduce 60 + NUMBER reduce 60 + KILLS reduce 60 + TRGCONST reduce 60 + L2V reduce 60 + MAPSTRING reduce 60 + UNIT reduce 60 + SWITCH reduce 60 + LOCATION reduce 60 + STATTXTTBL reduce 60 + VARRAY reduce 60 + STATIC reduce 60 + CONST reduce 60 + INC reduce 60 + DEC reduce 60 + ONCE reduce 60 + IF reduce 60 + SWITCHCASE reduce 60 + CASE reduce 60 + DEFAULT reduce 60 + WHILE reduce 60 + FOR reduce 60 + FOREACH reduce 60 + CONTINUE reduce 60 + BREAK reduce 60 + RETURN reduce 60 + ACTIONNAME reduce 60 -State 270: - actionStmt ::= ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON - constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN +State 317: + (237) default_clause ::= DEFAULT COLON * + + PLUS reduce 237 + MINUS reduce 237 + BITNOT reduce 237 + LPAREN reduce 237 + LSQBRACKET reduce 237 + SEMICOLON reduce 237 + NAME reduce 237 + FUNCTION reduce 237 + LBRACKET reduce 237 + VAR reduce 237 + RBRACKET reduce 237 + NUMBER reduce 237 + KILLS reduce 237 + TRGCONST reduce 237 + L2V reduce 237 + MAPSTRING reduce 237 + UNIT reduce 237 + SWITCH reduce 237 + LOCATION reduce 237 + STATTXTTBL reduce 237 + VARRAY reduce 237 + STATIC reduce 237 + CONST reduce 237 + INC reduce 237 + DEC reduce 237 + ONCE reduce 237 + IF reduce 237 + SWITCHCASE reduce 237 + WHILE reduce 237 + FOR reduce 237 + FOREACH reduce 237 + CONTINUE reduce 237 + BREAK reduce 237 + RETURN reduce 237 + ACTIONNAME reduce 237 - LPAREN shift 20 +State 318: + (35) lbracket ::= LBRACKET * + + PLUS reduce 35 + MINUS reduce 35 + BITNOT reduce 35 + LPAREN reduce 35 + LSQBRACKET reduce 35 + SEMICOLON reduce 35 + NAME reduce 35 + FUNCTION reduce 35 + LBRACKET reduce 35 + VAR reduce 35 + RBRACKET reduce 35 + NUMBER reduce 35 + KILLS reduce 35 + TRGCONST reduce 35 + L2V reduce 35 + MAPSTRING reduce 35 + UNIT reduce 35 + SWITCH reduce 35 + LOCATION reduce 35 + STATTXTTBL reduce 35 + VARRAY reduce 35 + STATIC reduce 35 + CONST reduce 35 + INC reduce 35 + DEC reduce 35 + ONCE reduce 35 + IF reduce 35 + SWITCHCASE reduce 35 + WHILE reduce 35 + FOR reduce 35 + FOREACH reduce 35 + CONTINUE reduce 35 + BREAK reduce 35 + RETURN reduce 35 + ACTIONNAME reduce 35 -State 271: +State 319: + (23) fdef_rettypes ::= COLON exprList_nonEmpty * exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (78) exprList ::= exprList_nonEmpty * COMMA shift 80 - {default} reduce 78 + PLUS reduce 23 + MINUS reduce 23 + BITNOT reduce 23 + LPAREN reduce 23 + LSQBRACKET reduce 23 + SEMICOLON reduce 23 + NAME reduce 23 + FUNCTION reduce 23 + LBRACKET reduce 23 + VAR reduce 23 + NUMBER reduce 23 + KILLS reduce 23 + TRGCONST reduce 23 + L2V reduce 23 + MAPSTRING reduce 23 + UNIT reduce 23 + SWITCH reduce 23 + LOCATION reduce 23 + STATTXTTBL reduce 23 + VARRAY reduce 23 + STATIC reduce 23 + CONST reduce 23 + INC reduce 23 + DEC reduce 23 + ONCE reduce 23 + IF reduce 23 + SWITCHCASE reduce 23 + WHILE reduce 23 + FOR reduce 23 + FOREACH reduce 23 + CONTINUE reduce 23 + BREAK reduce 23 + RETURN reduce 23 + ACTIONNAME reduce 23 -State 272: - foreach_stmt ::= foreach_header * RPAREN stmt +State 320: + (29) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + + PLUS reduce 29 + MINUS reduce 29 + BITNOT reduce 29 + LPAREN reduce 29 + LSQBRACKET reduce 29 + SEMICOLON reduce 29 + NAME reduce 29 + FUNCTION reduce 29 + LBRACKET reduce 29 + VAR reduce 29 + NUMBER reduce 29 + KILLS reduce 29 + TRGCONST reduce 29 + L2V reduce 29 + MAPSTRING reduce 29 + UNIT reduce 29 + SWITCH reduce 29 + LOCATION reduce 29 + STATTXTTBL reduce 29 + VARRAY reduce 29 + STATIC reduce 29 + CONST reduce 29 + INC reduce 29 + DEC reduce 29 + ONCE reduce 29 + IF reduce 29 + SWITCHCASE reduce 29 + WHILE reduce 29 + FOR reduce 29 + FOREACH reduce 29 + CONTINUE reduce 29 + BREAK reduce 29 + RETURN reduce 29 + ACTIONNAME reduce 29 - RPAREN shift 4 +State 321: + (24) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + + PLUS reduce 24 + MINUS reduce 24 + BITNOT reduce 24 + LPAREN reduce 24 + LSQBRACKET reduce 24 + SEMICOLON reduce 24 + NAME reduce 24 + FUNCTION reduce 24 + LBRACKET reduce 24 + VAR reduce 24 + NUMBER reduce 24 + KILLS reduce 24 + TRGCONST reduce 24 + L2V reduce 24 + MAPSTRING reduce 24 + UNIT reduce 24 + SWITCH reduce 24 + LOCATION reduce 24 + STATTXTTBL reduce 24 + VARRAY reduce 24 + STATIC reduce 24 + CONST reduce 24 + INC reduce 24 + DEC reduce 24 + ONCE reduce 24 + IF reduce 24 + SWITCHCASE reduce 24 + WHILE reduce 24 + FOR reduce 24 + FOREACH reduce 24 + CONTINUE reduce 24 + BREAK reduce 24 + RETURN reduce 24 + ACTIONNAME reduce 24 -State 273: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (266) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * +State 322: + (85) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * - COMMA shift 80 - {default} reduce 266 + PLUS reduce 85 + MINUS reduce 85 + BITNOT reduce 85 + LPAREN reduce 85 + LSQBRACKET reduce 85 + SEMICOLON reduce 85 + NAME reduce 85 + FUNCTION reduce 85 + LBRACKET reduce 85 + VAR reduce 85 + NUMBER reduce 85 + KILLS reduce 85 + TRGCONST reduce 85 + L2V reduce 85 + MAPSTRING reduce 85 + UNIT reduce 85 + SWITCH reduce 85 + LOCATION reduce 85 + STATTXTTBL reduce 85 + VARRAY reduce 85 + STATIC reduce 85 + CONST reduce 85 + INC reduce 85 + DEC reduce 85 + ONCE reduce 85 + IF reduce 85 + SWITCHCASE reduce 85 + WHILE reduce 85 + FOR reduce 85 + FOREACH reduce 85 + CONTINUE reduce 85 + BREAK reduce 85 + RETURN reduce 85 + ACTIONNAME reduce 85 -State 274: - foreach_opener ::= FOREACH * LPAREN +State 323: + elif_start ::= ELSE * IF + (227) else_header ::= ELSE * + + PLUS reduce 227 + MINUS reduce 227 + BITNOT reduce 227 + LPAREN reduce 227 + LSQBRACKET reduce 227 + SEMICOLON reduce 227 + NAME reduce 227 + FUNCTION reduce 227 + LBRACKET reduce 227 + VAR reduce 227 + NUMBER reduce 227 + KILLS reduce 227 + TRGCONST reduce 227 + L2V reduce 227 + MAPSTRING reduce 227 + UNIT reduce 227 + SWITCH reduce 227 + LOCATION reduce 227 + STATTXTTBL reduce 227 + VARRAY reduce 227 + STATIC reduce 227 + CONST reduce 227 + INC reduce 227 + DEC reduce 227 + ONCE reduce 227 + IF shift 489 + IF reduce 227 -- dropped by precedence + SWITCHCASE reduce 227 + WHILE reduce 227 + FOR reduce 227 + FOREACH reduce 227 + CONTINUE reduce 227 + BREAK reduce 227 + RETURN reduce 227 + ACTIONNAME reduce 227 - LPAREN shift 403 +State 324: + once_header ::= once_start * LPAREN expr + (218) once_nocond ::= once_start * + + PLUS reduce 218 + MINUS reduce 218 + BITNOT reduce 218 + LPAREN shift 52 + LPAREN reduce 218 -- dropped by precedence + LSQBRACKET reduce 218 + SEMICOLON reduce 218 + NAME reduce 218 + FUNCTION reduce 218 + LBRACKET reduce 218 + VAR reduce 218 + NUMBER reduce 218 + KILLS reduce 218 + TRGCONST reduce 218 + L2V reduce 218 + MAPSTRING reduce 218 + UNIT reduce 218 + SWITCH reduce 218 + LOCATION reduce 218 + STATTXTTBL reduce 218 + VARRAY reduce 218 + STATIC reduce 218 + CONST reduce 218 + INC reduce 218 + DEC reduce 218 + ONCE reduce 218 + IF reduce 218 + SWITCHCASE reduce 218 + WHILE reduce 218 + FOR reduce 218 + FOREACH reduce 218 + CONTINUE reduce 218 + BREAK reduce 218 + RETURN reduce 218 + ACTIONNAME reduce 218 -State 275: - for_stmt ::= for_header * RPAREN stmt +State 325: + (215) once_start ::= ONCE * + + PLUS reduce 215 + MINUS reduce 215 + BITNOT reduce 215 + LPAREN reduce 215 + LSQBRACKET reduce 215 + SEMICOLON reduce 215 + NAME reduce 215 + FUNCTION reduce 215 + LBRACKET reduce 215 + VAR reduce 215 + NUMBER reduce 215 + KILLS reduce 215 + TRGCONST reduce 215 + L2V reduce 215 + MAPSTRING reduce 215 + UNIT reduce 215 + SWITCH reduce 215 + LOCATION reduce 215 + STATTXTTBL reduce 215 + VARRAY reduce 215 + STATIC reduce 215 + CONST reduce 215 + INC reduce 215 + DEC reduce 215 + ONCE reduce 215 + IF reduce 215 + SWITCHCASE reduce 215 + WHILE reduce 215 + FOR reduce 215 + FOREACH reduce 215 + CONTINUE reduce 215 + BREAK reduce 215 + RETURN reduce 215 + ACTIONNAME reduce 215 - RPAREN shift 5 +State 326: + (84) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + (194) lvalue ::= nonConstExpr LSQBRACKET expr RSQBRACKET * -State 276: - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (260) for_action_stmt ::= for_action_stmt_nonEmpty * + ASSIGN reduce 194 + QMARK reduce 84 + COMMA reduce 194 + BITOR reduce 84 + BITXOR reduce 84 + BITAND reduce 84 + LSHIFT reduce 84 + RSHIFT reduce 84 + PLUS reduce 84 + MINUS reduce 84 + DIVIDE reduce 84 + MULTIPLY reduce 84 + MOD reduce 84 + LPAREN reduce 84 + LSQBRACKET reduce 84 + PERIOD reduce 84 + SEMICOLON reduce 194 + RPAREN reduce 194 + INC reduce 194 + DEC reduce 194 + IADD reduce 194 + ISUB reduce 194 + IMUL reduce 194 + IDIV reduce 194 + IMOD reduce 194 + ILSH reduce 194 + IRSH reduce 194 + IBND reduce 194 + IBOR reduce 194 + IBXR reduce 194 - COMMA shift 29 - {default} reduce 260 +State 327: + (83) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * + (196) lvalue ::= nonConstExpr PERIOD TRGCONST * -State 277: - for_header2 ::= for_header1 expr * SEMICOLON + ASSIGN reduce 196 + QMARK reduce 83 + COMMA reduce 196 + BITOR reduce 83 + BITXOR reduce 83 + BITAND reduce 83 + LSHIFT reduce 83 + RSHIFT reduce 83 + PLUS reduce 83 + MINUS reduce 83 + DIVIDE reduce 83 + MULTIPLY reduce 83 + MOD reduce 83 + LPAREN reduce 83 + LSQBRACKET reduce 83 + PERIOD reduce 83 + SEMICOLON reduce 196 + RPAREN reduce 196 + INC reduce 196 + DEC reduce 196 + IADD reduce 196 + ISUB reduce 196 + IMUL reduce 196 + IDIV reduce 196 + IMOD reduce 196 + ILSH reduce 196 + IRSH reduce 196 + IBND reduce 196 + IBOR reduce 196 + IBXR reduce 196 - SEMICOLON shift 409 +State 328: + (82) nonConstExpr ::= nonConstExpr PERIOD NAME * + (195) lvalue ::= nonConstExpr PERIOD NAME * -State 278: - for_header1 ::= for_opener for_init_stmt * SEMICOLON + ASSIGN reduce 195 + QMARK reduce 82 + COMMA reduce 195 + BITOR reduce 82 + BITXOR reduce 82 + BITAND reduce 82 + LSHIFT reduce 82 + RSHIFT reduce 82 + PLUS reduce 82 + MINUS reduce 82 + DIVIDE reduce 82 + MULTIPLY reduce 82 + MOD reduce 82 + LPAREN reduce 82 + LSQBRACKET reduce 82 + PERIOD reduce 82 + SEMICOLON reduce 195 + RPAREN reduce 195 + INC reduce 195 + DEC reduce 195 + IADD reduce 195 + ISUB reduce 195 + IMUL reduce 195 + IDIV reduce 195 + IMOD reduce 195 + ILSH reduce 195 + IRSH reduce 195 + IBND reduce 195 + IBOR reduce 195 + IBXR reduce 195 - SEMICOLON shift 410 +State 329: + (81) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN + (193) lvalue ::= NAME * + + ASSIGN reduce 193 + QMARK reduce 81 + COMMA reduce 193 + BITOR reduce 81 + BITXOR reduce 81 + BITAND reduce 81 + LSHIFT reduce 81 + RSHIFT reduce 81 + PLUS reduce 81 + MINUS reduce 81 + DIVIDE reduce 81 + MULTIPLY reduce 81 + MOD reduce 81 + LPAREN shift 24 + LPAREN reduce 81 -- dropped by precedence + LSQBRACKET reduce 81 + PERIOD reduce 81 + SEMICOLON reduce 193 + RPAREN reduce 193 + INC reduce 193 + DEC reduce 193 + IADD reduce 193 + ISUB reduce 193 + IMUL reduce 193 + IDIV reduce 193 + IMOD reduce 193 + ILSH reduce 193 + IRSH reduce 193 + IBND reduce 193 + IBOR reduce 193 + IBXR reduce 193 -State 279: - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (254) for_init_stmt ::= for_init_stmt_nonEmpty * +State 330: + (81) nonConstExpr ::= NAME * + fConstArg ::= NAME * ASSIGN expr + fConstArg ::= NAME * ASSIGN STRING + funcexpr ::= NAME * LPAREN fArgs RPAREN - COMMA shift 21 - {default} reduce 254 + ASSIGN shift 46 + QMARK reduce 81 + COMMA reduce 81 + LOR reduce 81 + LAND reduce 81 + EQ reduce 81 + LE reduce 81 + LT reduce 81 + GE reduce 81 + GT reduce 81 + NE reduce 81 + BITOR reduce 81 + BITXOR reduce 81 + BITAND reduce 81 + LSHIFT reduce 81 + RSHIFT reduce 81 + PLUS reduce 81 + MINUS reduce 81 + DIVIDE reduce 81 + MULTIPLY reduce 81 + MOD reduce 81 + LPAREN shift 24 + LPAREN reduce 81 -- dropped by precedence + LSQBRACKET reduce 81 + PERIOD reduce 81 + RPAREN reduce 81 -State 280: - for_opener ::= FOR * LPAREN +State 331: + (247) for_opener ::= FOR LPAREN * + + PLUS reduce 247 + MINUS reduce 247 + BITNOT reduce 247 + LPAREN reduce 247 + LSQBRACKET reduce 247 + SEMICOLON reduce 247 + NAME reduce 247 + FUNCTION reduce 247 + VAR reduce 247 + NUMBER reduce 247 + KILLS reduce 247 + TRGCONST reduce 247 + L2V reduce 247 + MAPSTRING reduce 247 + UNIT reduce 247 + SWITCH reduce 247 + LOCATION reduce 247 + STATTXTTBL reduce 247 + VARRAY reduce 247 + CONST reduce 247 + INC reduce 247 + DEC reduce 247 + ACTIONNAME reduce 247 - LPAREN shift 416 +State 332: + (261) for_header2 ::= for_header1 expr SEMICOLON * + + PLUS reduce 261 + MINUS reduce 261 + BITNOT reduce 261 + LPAREN reduce 261 + LSQBRACKET reduce 261 + NAME reduce 261 + FUNCTION reduce 261 + RPAREN reduce 261 + NUMBER reduce 261 + KILLS reduce 261 + TRGCONST reduce 261 + L2V reduce 261 + MAPSTRING reduce 261 + UNIT reduce 261 + SWITCH reduce 261 + LOCATION reduce 261 + STATTXTTBL reduce 261 + VARRAY reduce 261 + INC reduce 261 + DEC reduce 261 + ACTIONNAME reduce 261 -State 281: - while_stmt ::= while_header * RPAREN stmt +State 333: + (260) for_header1 ::= for_opener for_init_stmt SEMICOLON * + + LNOT reduce 260 + PLUS reduce 260 + MINUS reduce 260 + BITNOT reduce 260 + LPAREN reduce 260 + LSQBRACKET reduce 260 + NAME reduce 260 + FUNCTION reduce 260 + NUMBER reduce 260 + KILLS reduce 260 + TRGCONST reduce 260 + L2V reduce 260 + MAPSTRING reduce 260 + UNIT reduce 260 + SWITCH reduce 260 + LOCATION reduce 260 + STATTXTTBL reduce 260 + VARRAY reduce 260 + LIST reduce 260 + CONDITIONNAME reduce 260 + ACTIONNAME reduce 260 - RPAREN shift 6 - -State 282: - while_header ::= while_start * LPAREN expr - - LPAREN shift 47 - -State 283: - switchcase_stmt ::= switchcase_block * RBRACKET - - RBRACKET shift 420 - -State 284: - switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks default_chunk - switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks - switchcase_block ::= switchcase_header RPAREN * LBRACKET - - LBRACKET shift 114 - -State 285: - switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks default_chunk - switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks - switchcase_block ::= switchcase_header * RPAREN LBRACKET - - RPAREN shift 284 - -State 286: - switchcase_header ::= SWITCHCASE * LPAREN expr - - LPAREN shift 48 - -State 287: - if_block ::= if_block elif_header * RPAREN stmt - - RPAREN shift 7 - -State 288: - elif_header ::= elif_start * LPAREN expr - - LPAREN shift 49 - -State 289: - elif_start ::= ELSE * IF - (228) else_header ::= ELSE * - - IF shift 427 - {default} reduce 228 - -State 290: - if_block ::= if_header * RPAREN stmt - - RPAREN shift 8 - -State 291: - if_header ::= if_start * LPAREN expr - - LPAREN shift 50 - -State 292: - once_block ::= once_header * RPAREN stmt - - RPAREN shift 10 - -State 293: - once_header ::= once_start * LPAREN expr - (219) once_nocond ::= once_start * - - LPAREN shift 51 - {default} reduce 219 - -State 294: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (201) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 80 - {default} reduce 201 - -State 295: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (192) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 80 - {default} reduce 192 - -State 296: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (190) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 80 - {default} reduce 190 - -State 297: - vdefAssignStatic_stmt ::= STATIC * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - - VAR shift 151 - -State 298: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (189) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - - COMMA shift 80 - {default} reduce 189 - -State 299: - nameList_nonEmpty ::= nameList_nonEmpty COMMA * NAME - - NAME shift 452 - -State 300: - funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN - - RPAREN shift 454 - -State 301: - nonConstExpr ::= nonConstExpr QMARK expr * COLON expr - - COLON shift 63 - -State 302: - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr - (186) logicExpr ::= logicExpr LOR logicExpr * - - LAND shift 84 - {default} reduce 186 - -State 303: - constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET - - RSQBRACKET shift 458 - -State 304: - logicExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN - - RPAREN shift 464 - -State 305: - constExpr ::= ACTIONNAME LPAREN fArgs * RPAREN - - RPAREN shift 478 - -State 306: - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - (103) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * - - COMMA shift 30 - {default} reduce 103 - -State 307: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - (102) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - - COMMA shift 32 - {default} reduce 102 - -State 308: - constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - - LPAREN shift 22 - -State 309: - logicExpr ::= CONDITIONNAME * LPAREN fArgs RPAREN - - LPAREN shift 23 - -State 310: - logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN - - RPAREN shift 493 - -State 311: - logicExpr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN - - LPAREN shift 41 - -State 312: - constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN - - RPAREN shift 494 - -State 313: - constExpr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN - - LPAREN shift 42 - -State 314: - constExpr ::= STATTXTTBL LPAREN STRING * RPAREN - - RPAREN shift 495 - -State 315: - constExpr ::= STATTXTTBL LPAREN * STRING RPAREN - - STRING shift 314 - -State 316: - constExpr ::= STATTXTTBL * LPAREN STRING RPAREN - - LPAREN shift 315 - -State 317: - constExpr ::= LOCATION LPAREN STRING * RPAREN - - RPAREN shift 496 - -State 318: - constExpr ::= LOCATION LPAREN * STRING RPAREN - - STRING shift 317 - -State 319: - constExpr ::= LOCATION * LPAREN STRING RPAREN - - LPAREN shift 318 - -State 320: - constExpr ::= SWITCH LPAREN STRING * RPAREN - - RPAREN shift 497 - -State 321: - constExpr ::= SWITCH LPAREN * STRING RPAREN - - STRING shift 320 - -State 322: - constExpr ::= SWITCH * LPAREN STRING RPAREN - - LPAREN shift 321 - -State 323: - constExpr ::= UNIT LPAREN STRING * RPAREN - - RPAREN shift 498 - -State 324: - constExpr ::= UNIT LPAREN * STRING RPAREN - - STRING shift 323 - -State 325: - constExpr ::= UNIT * LPAREN STRING RPAREN - - LPAREN shift 324 - -State 326: - constExpr ::= MAPSTRING LPAREN STRING * RPAREN - - RPAREN shift 499 - -State 327: - constExpr ::= MAPSTRING LPAREN * STRING RPAREN - - STRING shift 326 - -State 328: - constExpr ::= MAPSTRING * LPAREN STRING RPAREN - - LPAREN shift 327 - -State 329: - nonConstExpr ::= L2V LPAREN expr * RPAREN - - RPAREN shift 500 - -State 330: - nonConstExpr ::= L2V * LPAREN expr RPAREN - - LPAREN shift 74 - -State 331: - exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET - - RSQBRACKET shift 502 - -State 332: - numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER - - NUMBER shift 503 - -State 333: - (63) numList_nonEmpty ::= NUMBER * - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET - - RSQBRACKET shift 353 - {default} reduce 63 - -State 334: - exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - - LSQBRACKET shift 156 +State 334: + (231) case_start ::= CASE * + + LNOT reduce 231 + PLUS reduce 231 + MINUS reduce 231 + BITNOT reduce 231 + LPAREN reduce 231 + LSQBRACKET reduce 231 + NAME reduce 231 + FUNCTION reduce 231 + NUMBER reduce 231 + KILLS reduce 231 + TRGCONST reduce 231 + L2V reduce 231 + MAPSTRING reduce 231 + UNIT reduce 231 + SWITCH reduce 231 + LOCATION reduce 231 + STATTXTTBL reduce 231 + VARRAY reduce 231 + LIST reduce 231 + CONDITIONNAME reduce 231 + ACTIONNAME reduce 231 State 335: - exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (109) nonConstExpr ::= funcexpr * + (90) fConstArg ::= constExpr * + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr + constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr + constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr + constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr + constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr + constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr - LSQBRACKET shift 334 - {default} reduce 109 + COMMA reduce 90 + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + RPAREN reduce 90 State 336: - nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - lvalue ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + constExpr ::= LPAREN constExpr * RPAREN + constExpr ::= constExpr * PLUS constExpr + constExpr ::= constExpr * MINUS constExpr + constExpr ::= constExpr * MULTIPLY constExpr + constExpr ::= constExpr * DIVIDE constExpr + constExpr ::= constExpr * MOD constExpr + constExpr ::= constExpr * LSHIFT constExpr + constExpr ::= constExpr * RSHIFT constExpr + constExpr ::= constExpr * BITAND constExpr + constExpr ::= constExpr * BITOR constExpr + constExpr ::= constExpr * BITXOR constExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - RSQBRACKET shift 183 + EQ shift 138 + LE shift 125 + LT shift 123 + GE shift 124 + GT shift 122 + NE shift 126 + BITOR shift 128 + BITXOR shift 127 + BITAND shift 129 + LSHIFT shift 131 + RSHIFT shift 130 + PLUS shift 136 + MINUS shift 135 + DIVIDE shift 133 + MULTIPLY shift 134 + MOD shift 132 + RPAREN shift 296 State 337: - bodyStmt ::= return_stmt * SEMICOLON + constExpr ::= LPAREN constExpr * RPAREN + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr + constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr + constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr + constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr + constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr + constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr - SEMICOLON shift 508 + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 + RPAREN shift 296 State 338: - bodyStmt ::= break_stmt * SEMICOLON - - SEMICOLON shift 509 + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (105) funcexprStmt ::= funcexpr * + (108) nonConstExpr ::= funcexpr * + + QMARK reduce 108 + COMMA reduce 105 + BITOR reduce 108 + BITXOR reduce 108 + BITAND reduce 108 + LSHIFT reduce 108 + RSHIFT reduce 108 + PLUS reduce 108 + MINUS reduce 108 + DIVIDE reduce 108 + MULTIPLY reduce 108 + MOD reduce 108 + LPAREN reduce 108 + LSQBRACKET shift 547 + LSQBRACKET reduce 108 -- dropped by precedence + PERIOD reduce 108 + SEMICOLON reduce 105 + RPAREN reduce 105 State 339: - bodyStmt ::= continue_stmt * SEMICOLON + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + constExpr ::= constExpr * NE constExpr + constExpr ::= constExpr * LE constExpr + constExpr ::= constExpr * GE constExpr + constExpr ::= constExpr * LT constExpr + constExpr ::= constExpr * GT constExpr - SEMICOLON shift 510 + EQ shift 138 + LE shift 125 + LT shift 123 + GE shift 124 + GT shift 122 + NE shift 126 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 State 340: - bodyStmt ::= funcexprStmt * SEMICOLON + constExpr ::= constExpr * PLUS constExpr + nonConstExpr ::= constExpr * PLUS nonConstExpr + constExpr ::= constExpr * MINUS constExpr + nonConstExpr ::= constExpr * MINUS nonConstExpr + constExpr ::= constExpr * MULTIPLY constExpr + nonConstExpr ::= constExpr * MULTIPLY nonConstExpr + constExpr ::= constExpr * DIVIDE constExpr + nonConstExpr ::= constExpr * DIVIDE nonConstExpr + constExpr ::= constExpr * MOD constExpr + nonConstExpr ::= constExpr * MOD nonConstExpr + constExpr ::= constExpr * LSHIFT constExpr + nonConstExpr ::= constExpr * LSHIFT nonConstExpr + constExpr ::= constExpr * RSHIFT constExpr + nonConstExpr ::= constExpr * RSHIFT nonConstExpr + constExpr ::= constExpr * BITAND constExpr + nonConstExpr ::= constExpr * BITAND nonConstExpr + constExpr ::= constExpr * BITOR constExpr + nonConstExpr ::= constExpr * BITOR nonConstExpr + constExpr ::= constExpr * BITXOR constExpr + nonConstExpr ::= constExpr * BITXOR nonConstExpr + constExpr ::= constExpr * EQ constExpr + logicExpr ::= constExpr * EQ nonConstExpr + constExpr ::= constExpr * NE constExpr + logicExpr ::= constExpr * NE nonConstExpr + constExpr ::= constExpr * LE constExpr + logicExpr ::= constExpr * LE nonConstExpr + constExpr ::= constExpr * GE constExpr + logicExpr ::= constExpr * GE nonConstExpr + constExpr ::= constExpr * LT constExpr + logicExpr ::= constExpr * LT nonConstExpr + constExpr ::= constExpr * GT constExpr + logicExpr ::= constExpr * GT nonConstExpr - SEMICOLON shift 518 + EQ shift 100 + LE shift 98 + LT shift 96 + GE shift 97 + GT shift 95 + NE shift 99 + BITOR shift 102 + BITXOR shift 101 + BITAND shift 103 + LSHIFT shift 105 + RSHIFT shift 104 + PLUS shift 113 + MINUS shift 112 + DIVIDE shift 107 + MULTIPLY shift 108 + MOD shift 106 State 341: - bodyStmt ::= assign_stmt * SEMICOLON + (197) lvalueList_nonEmpty ::= lvalue * + assign_stmt ::= lvalue * ASSIGN expr + assign_stmt ::= lvalue * INC + assign_stmt ::= lvalue * DEC + assign_stmt ::= lvalue * IADD expr + assign_stmt ::= lvalue * ISUB expr + assign_stmt ::= lvalue * IMUL expr + assign_stmt ::= lvalue * IDIV expr + assign_stmt ::= lvalue * IMOD expr + assign_stmt ::= lvalue * ILSH expr + assign_stmt ::= lvalue * IRSH expr + assign_stmt ::= lvalue * IBND expr + assign_stmt ::= lvalue * IBOR expr + assign_stmt ::= lvalue * IBXR expr - SEMICOLON shift 519 + ASSIGN shift 63 + ASSIGN reduce 197 -- dropped by precedence + COMMA reduce 197 + INC shift 386 + DEC shift 385 + IADD shift 62 + ISUB shift 61 + IMUL shift 60 + IDIV shift 59 + IMOD shift 58 + ILSH shift 57 + IRSH shift 56 + IBND shift 55 + IBOR shift 54 + IBXR shift 53 State 342: - bodyStmt ::= cdef_stmt * SEMICOLON + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + nonConstExpr ::= nonConstExpr * QMARK expr COLON expr + nonConstExpr ::= nonConstExpr * PLUS expr + nonConstExpr ::= nonConstExpr * MINUS expr + nonConstExpr ::= nonConstExpr * MULTIPLY expr + nonConstExpr ::= nonConstExpr * DIVIDE expr + nonConstExpr ::= nonConstExpr * MOD expr + nonConstExpr ::= nonConstExpr * LSHIFT expr + nonConstExpr ::= nonConstExpr * RSHIFT expr + nonConstExpr ::= nonConstExpr * BITAND expr + nonConstExpr ::= nonConstExpr * BITOR expr + nonConstExpr ::= nonConstExpr * BITXOR expr + lvalue ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + lvalue ::= nonConstExpr * PERIOD NAME + lvalue ::= nonConstExpr * PERIOD TRGCONST - SEMICOLON shift 520 + QMARK shift 76 + BITOR shift 66 + BITXOR shift 65 + BITAND shift 67 + LSHIFT shift 69 + RSHIFT shift 68 + PLUS shift 74 + MINUS shift 73 + DIVIDE shift 71 + MULTIPLY shift 72 + MOD shift 70 + LPAREN shift 23 + LSQBRACKET shift 77 + PERIOD shift 441 State 343: - bodyStmt ::= vdefAssign_stmt * SEMICOLON + (32) object_chunk ::= object_body RBRACKET SEMICOLON * - SEMICOLON shift 521 + $ reduce 32 + IMPORT reduce 32 + FUNCTION reduce 32 + OBJECT reduce 32 + LBRACKET reduce 32 + VAR reduce 32 + CONST reduce 32 State 344: - bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON + (25) fdef_chunk ::= fdef_header stmt * - SEMICOLON shift 522 + $ reduce 25 + IMPORT reduce 25 + FUNCTION reduce 25 + OBJECT reduce 25 + LBRACKET reduce 25 + VAR reduce 25 + CONST reduce 25 State 345: - bodyStmt ::= vdef_stmt * SEMICOLON + (26) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * - SEMICOLON shift 523 + $ reduce 26 + IMPORT reduce 26 + FUNCTION reduce 26 + OBJECT reduce 26 + LBRACKET reduce 26 + VAR reduce 26 + CONST reduce 26 State 346: - blockStmt ::= lbracket error * RBRACKET + (21) import_chunk ::= absimp_start SEMICOLON * - RBRACKET shift 526 + $ reduce 21 + IMPORT reduce 21 + FUNCTION reduce 21 + OBJECT reduce 21 + LBRACKET reduce 21 + VAR reduce 21 + CONST reduce 21 State 347: - stmt ::= error * SEMICOLON + (20) import_chunk ::= absimp_start AS NAME SEMICOLON * - SEMICOLON shift 531 + $ reduce 20 + IMPORT reduce 20 + FUNCTION reduce 20 + OBJECT reduce 20 + LBRACKET reduce 20 + VAR reduce 20 + CONST reduce 20 State 348: - (65) typedName ::= NAME * - typedName ::= NAME * COLON expr + (17) import_chunk ::= relimp_path AS NAME SEMICOLON * - COLON shift 78 - {default} reduce 65 + $ reduce 17 + IMPORT reduce 17 + FUNCTION reduce 17 + OBJECT reduce 17 + LBRACKET reduce 17 + VAR reduce 17 + CONST reduce 17 State 349: - lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes + (16) import_chunk ::= relimp_path SEMICOLON * - LPAREN shift 117 + $ reduce 16 + IMPORT reduce 16 + FUNCTION reduce 16 + OBJECT reduce 16 + LBRACKET reduce 16 + VAR reduce 16 + CONST reduce 16 State 350: - nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + (11) chunk ::= blockStmt * - RSQBRACKET shift 533 + $ reduce 11 + IMPORT reduce 11 + FUNCTION reduce 11 + OBJECT reduce 11 + LBRACKET reduce 11 + VAR reduce 11 + CONST reduce 11 State 351: - (82) nonConstExpr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN + (10) chunk ::= cdef_global_stmt SEMICOLON * - LPAREN shift 25 - {default} reduce 82 + $ reduce 10 + IMPORT reduce 10 + FUNCTION reduce 10 + OBJECT reduce 10 + LBRACKET reduce 10 + VAR reduce 10 + CONST reduce 10 State 352: - (80) constExpr ::= KILLS * - logicExpr ::= KILLS * LPAREN fArgs RPAREN + (9) chunk ::= vdefAssign_global_stmt SEMICOLON * - LPAREN shift 26 - {default} reduce 80 + $ reduce 9 + IMPORT reduce 9 + FUNCTION reduce 9 + OBJECT reduce 9 + LBRACKET reduce 9 + VAR reduce 9 + CONST reduce 9 State 353: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET + (8) chunk ::= vdef_stmt SEMICOLON * - RSQBRACKET shift 539 + $ reduce 8 + IMPORT reduce 8 + FUNCTION reduce 8 + OBJECT reduce 8 + LBRACKET reduce 8 + VAR reduce 8 + CONST reduce 8 State 354: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET + (7) chunk ::= object_chunk * - RSQBRACKET shift 353 + $ reduce 7 + IMPORT reduce 7 + FUNCTION reduce 7 + OBJECT reduce 7 + LBRACKET reduce 7 + VAR reduce 7 + CONST reduce 7 State 355: - nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET + (6) chunk ::= fdecl_chunk * - NUMBER shift 354 + $ reduce 6 + IMPORT reduce 6 + FUNCTION reduce 6 + OBJECT reduce 6 + LBRACKET reduce 6 + VAR reduce 6 + CONST reduce 6 State 356: - nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (5) chunk ::= fdef_chunk * - LSQBRACKET shift 355 + $ reduce 5 + IMPORT reduce 5 + FUNCTION reduce 5 + OBJECT reduce 5 + LBRACKET reduce 5 + VAR reduce 5 + CONST reduce 5 State 357: - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (109) nonConstExpr ::= funcexpr * + (4) chunk ::= import_chunk * - LSQBRACKET shift 356 - {default} reduce 109 + $ reduce 4 + IMPORT reduce 4 + FUNCTION reduce 4 + OBJECT reduce 4 + LBRACKET reduce 4 + VAR reduce 4 + CONST reduce 4 State 358: - (24) fdef_rettypes ::= COLON exprList_nonEmpty * - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (3) chunks ::= chunks error * - COMMA shift 80 - {default} reduce 24 + $ reduce 3 + IMPORT reduce 3 + FUNCTION reduce 3 + OBJECT reduce 3 + LBRACKET reduce 3 + VAR reduce 3 + CONST reduce 3 State 359: - fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON + (2) chunks ::= chunks chunk * - RPAREN shift 142 + $ reduce 2 + IMPORT reduce 2 + FUNCTION reduce 2 + OBJECT reduce 2 + LBRACKET reduce 2 + VAR reduce 2 + CONST reduce 2 State 360: - fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON + (71) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * - LPAREN shift 118 + ASSIGN reduce 71 + COMMA reduce 71 + SEMICOLON reduce 71 + COLON reduce 71 State 361: - fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON + (70) nameList_nonEmpty ::= NAME * - NAME shift 360 + ASSIGN reduce 70 + COMMA reduce 70 + SEMICOLON reduce 70 + COLON reduce 70 State 362: - relimp_chunk ::= relimp_path AS NAME * SEMICOLON + (89) fNonConstArg ::= logicExpr * + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr - SEMICOLON shift 540 + COMMA reduce 89 + LOR shift 82 + LAND shift 84 + RPAREN reduce 89 State 363: - relimp_chunk ::= relimp_path AS * NAME SEMICOLON + (64) typedName ::= NAME * + typedName ::= NAME * COLON expr - NAME shift 362 + COMMA reduce 64 + SEMICOLON reduce 64 + COLON shift 78 + RPAREN reduce 64 State 364: - relimp_path ::= relimp_path PERIOD * NAME + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + (187) vdef_stmt ::= VAR nameList_nonEmpty * + vdefAssign_global_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - NAME shift 542 + ASSIGN shift 34 + COMMA shift 497 + SEMICOLON reduce 187 State 365: - import_chunk ::= IMPORT dottedName AS * NAME + (31) object_body ::= object_body method_chunk * - NAME shift 545 + FUNCTION reduce 31 + VAR reduce 31 + RBRACKET reduce 31 State 366: - dottedName ::= dottedName PERIOD * NAME + (30) method_chunk ::= method_header stmt * - NAME shift 546 + FUNCTION reduce 30 + VAR reduce 30 + RBRACKET reduce 30 State 367: - chunk ::= cdef_global_stmt * SEMICOLON + (28) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * - SEMICOLON shift 550 + FUNCTION reduce 28 + VAR reduce 28 + RBRACKET reduce 28 State 368: - chunk ::= vdefAssign_global_stmt * SEMICOLON + (27) object_body ::= OBJECT NAME LBRACKET * - SEMICOLON shift 551 + FUNCTION reduce 27 + VAR reduce 27 + RBRACKET reduce 27 State 369: - chunk ::= vdef_stmt * SEMICOLON + (66) typedNameList_nonEmpty ::= typedName * + typedNameList_nonEmpty ::= typedName * COMMA typedNameList_nonEmpty - SEMICOLON shift 552 + COMMA shift 141 + SEMICOLON reduce 66 + RPAREN reduce 66 State 370: - chunk ::= import_chunk * SEMICOLON + (236) case_chunks ::= case_chunk * - SEMICOLON shift 556 + RBRACKET reduce 236 + CASE reduce 236 + DEFAULT reduce 236 State 371: - (33) object_chunk ::= object_body RBRACKET SEMICOLON * + (235) case_chunks ::= case_chunks case_chunk * - {default} reduce 33 + RBRACKET reduce 235 + CASE reduce 235 + DEFAULT reduce 235 State 372: - (32) object_body ::= object_body method_chunk * + (203) assign_stmt ::= DEC lvalue * - {default} reduce 32 + COMMA reduce 203 + SEMICOLON reduce 203 + RPAREN reduce 203 State 373: - (31) method_chunk ::= method_header stmt * + (201) assign_stmt ::= INC lvalue * - {default} reduce 31 + COMMA reduce 201 + SEMICOLON reduce 201 + RPAREN reduce 201 State 374: - (30) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (200) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 30 + COMMA shift 80 + COMMA reduce 200 -- dropped by precedence + SEMICOLON reduce 200 + RPAREN reduce 200 State 375: - (29) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * + (214) assign_stmt ::= lvalue IBXR expr * - {default} reduce 29 + COMMA reduce 214 + SEMICOLON reduce 214 + RPAREN reduce 214 State 376: - (28) object_body ::= OBJECT NAME LBRACKET * + (213) assign_stmt ::= lvalue IBOR expr * - {default} reduce 28 + COMMA reduce 213 + SEMICOLON reduce 213 + RPAREN reduce 213 State 377: - (26) fdef_chunk ::= fdef_header stmt * + (212) assign_stmt ::= lvalue IBND expr * - {default} reduce 26 + COMMA reduce 212 + SEMICOLON reduce 212 + RPAREN reduce 212 State 378: - (27) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * + (211) assign_stmt ::= lvalue IRSH expr * - {default} reduce 27 + COMMA reduce 211 + SEMICOLON reduce 211 + RPAREN reduce 211 State 379: - (25) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + (210) assign_stmt ::= lvalue ILSH expr * - {default} reduce 25 + COMMA reduce 210 + SEMICOLON reduce 210 + RPAREN reduce 210 State 380: - (272) logicExpr ::= KILLS LPAREN fArgs RPAREN * + (209) assign_stmt ::= lvalue IMOD expr * - {default} reduce 272 + COMMA reduce 209 + SEMICOLON reduce 209 + RPAREN reduce 209 State 381: - (94) fConstArg ::= NAME ASSIGN STRING * + (208) assign_stmt ::= lvalue IDIV expr * - {default} reduce 94 + COMMA reduce 208 + SEMICOLON reduce 208 + RPAREN reduce 208 State 382: - (93) fConstArg ::= NAME ASSIGN expr * + (207) assign_stmt ::= lvalue IMUL expr * - {default} reduce 93 + COMMA reduce 207 + SEMICOLON reduce 207 + RPAREN reduce 207 State 383: - (107) funcexpr ::= NAME LPAREN fArgs RPAREN * + (206) assign_stmt ::= lvalue ISUB expr * - {default} reduce 107 + COMMA reduce 206 + SEMICOLON reduce 206 + RPAREN reduce 206 State 384: - (86) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * + (205) assign_stmt ::= lvalue IADD expr * - {default} reduce 86 + COMMA reduce 205 + SEMICOLON reduce 205 + RPAREN reduce 205 State 385: - (70) typedNameList ::= typedNameList_nonEmpty * + (204) assign_stmt ::= lvalue DEC * - {default} reduce 70 + COMMA reduce 204 + SEMICOLON reduce 204 + RPAREN reduce 204 State 386: - (68) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * + (202) assign_stmt ::= lvalue INC * - {default} reduce 68 + COMMA reduce 202 + SEMICOLON reduce 202 + RPAREN reduce 202 State 387: - (87) constExpr ::= lambdaExprStart stmt * + (199) assign_stmt ::= lvalue ASSIGN expr * - {default} reduce 87 + COMMA reduce 199 + SEMICOLON reduce 199 + RPAREN reduce 199 State 388: - (230) if_stmt ::= if_block else_header stmt * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + (187) vdef_stmt ::= VAR nameList_nonEmpty * + vdefAssign_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 230 + ASSIGN shift 40 + COMMA shift 497 + COMMA reduce 187 -- dropped by precedence + SEMICOLON reduce 187 State 389: - (237) case_chunks ::= case_chunk * + nonConstExpr ::= LPAREN logicExpr * RPAREN + logicExpr ::= logicExpr * LAND logicExpr + logicExpr ::= logicExpr * LOR logicExpr - {default} reduce 237 + LOR shift 82 + LAND shift 84 + RPAREN shift 226 State 390: - (241) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * + (65) typedName ::= NAME COLON expr * - {default} reduce 241 + COMMA reduce 65 + SEMICOLON reduce 65 + RPAREN reduce 65 State 391: - (238) default_clause ::= DEFAULT COLON * + (19) absimp_start ::= absimp_start PERIOD NAME * - {default} reduce 238 + PERIOD reduce 19 + SEMICOLON reduce 19 + AS reduce 19 State 392: - (236) case_chunks ::= case_chunks case_chunk * + absimp_start ::= absimp_start * PERIOD NAME + import_chunk ::= absimp_start * AS NAME SEMICOLON + import_chunk ::= absimp_start * SEMICOLON - {default} reduce 236 + PERIOD shift 553 + SEMICOLON shift 346 + AS shift 552 State 393: - (277) constActionList ::= constActionList constAction * + (15) relimp_path ::= relimp_path PERIOD NAME * - {default} reduce 277 + PERIOD reduce 15 + SEMICOLON reduce 15 + AS reduce 15 State 394: - (278) actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + relimp_path ::= relimp_path * PERIOD NAME + import_chunk ::= relimp_path * SEMICOLON + import_chunk ::= relimp_path * AS NAME SEMICOLON - {default} reduce 278 + PERIOD shift 556 + SEMICOLON shift 349 + AS shift 555 State 395: - (276) constActionList ::= constAction * + (14) relimp_path ::= relimp_start NAME * - {default} reduce 276 + PERIOD reduce 14 + SEMICOLON reduce 14 + AS reduce 14 State 396: - (275) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * + (18) absimp_start ::= IMPORT NAME * - {default} reduce 275 + PERIOD reduce 18 + SEMICOLON reduce 18 + AS reduce 18 State 397: - (273) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (192) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 273 + COMMA shift 80 + SEMICOLON reduce 192 State 398: - (274) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + cdef_global_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 274 + ASSIGN shift 33 + COMMA shift 497 State 399: - (270) return_stmt ::= RETURN exprList * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (190) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 270 + COMMA shift 80 + SEMICOLON reduce 190 State 400: - (269) break_stmt ::= BREAK * + (93) fConstArg ::= NAME ASSIGN STRING * - {default} reduce 269 + COMMA reduce 93 + RPAREN reduce 93 State 401: - (268) continue_stmt ::= CONTINUE * + (92) fConstArg ::= NAME ASSIGN expr * - {default} reduce 268 + COMMA reduce 92 + RPAREN reduce 92 State 402: - (267) foreach_stmt ::= foreach_header RPAREN stmt * + (67) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * - {default} reduce 267 + SEMICOLON reduce 67 + RPAREN reduce 67 State 403: - (265) foreach_opener ::= FOREACH LPAREN * + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON - {default} reduce 265 + COMMA shift 31 + RPAREN shift 460 State 404: - (264) for_stmt ::= for_header RPAREN stmt * + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - {default} reduce 264 + COMMA shift 32 + RPAREN shift 464 State 405: - (263) for_header ::= for_header2 for_action_stmt * + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + (102) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * + actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON - {default} reduce 263 + COMMA shift 31 + RPAREN shift 463 + RPAREN reduce 102 -- dropped by precedence State 406: - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (258) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + (101) fArgs_nonEmpty ::= fConstArgs_nonEmpty * + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - {default} reduce 258 + COMMA shift 32 + RPAREN shift 464 + RPAREN reduce 101 -- dropped by precedence State 407: - (257) for_action_stmt_nonEmpty ::= assign_stmt * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (77) exprList ::= exprList_nonEmpty * - {default} reduce 257 + COMMA shift 80 + SEMICOLON reduce 77 State 408: - (256) for_action_stmt_nonEmpty ::= funcexprStmt * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (265) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * - {default} reduce 256 + COMMA shift 80 + RPAREN reduce 265 State 409: - (262) for_header2 ::= for_header1 expr SEMICOLON * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + foreach_header ::= foreach_opener nameList_nonEmpty * COLON exprList_nonEmpty - {default} reduce 262 + COMMA shift 497 + COLON shift 35 State 410: - (261) for_header1 ::= for_opener for_init_stmt SEMICOLON * + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty + (257) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * - {default} reduce 261 + COMMA shift 29 -- dropped by precedence + COMMA reduce 257 + RPAREN reduce 257 State 411: - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (253) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty + (259) for_action_stmt ::= for_action_stmt_nonEmpty * - {default} reduce 253 + COMMA shift 29 + RPAREN reduce 259 State 412: - (252) for_init_stmt_nonEmpty ::= assign_stmt * + (256) for_action_stmt_nonEmpty ::= assign_stmt * - {default} reduce 252 + COMMA reduce 256 + RPAREN reduce 256 State 413: - (251) for_init_stmt_nonEmpty ::= cdef_stmt * + (255) for_action_stmt_nonEmpty ::= funcexprStmt * - {default} reduce 251 + COMMA reduce 255 + RPAREN reduce 255 State 414: - (250) for_init_stmt_nonEmpty ::= vdefAssign_stmt * + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty + (252) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * - {default} reduce 250 + COMMA shift 26 -- dropped by precedence + COMMA reduce 252 + SEMICOLON reduce 252 State 415: - (249) for_init_stmt_nonEmpty ::= vdef_stmt * + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty + (253) for_init_stmt ::= for_init_stmt_nonEmpty * - {default} reduce 249 + COMMA shift 26 + SEMICOLON reduce 253 State 416: - (248) for_opener ::= FOR LPAREN * + (251) for_init_stmt_nonEmpty ::= assign_stmt * - {default} reduce 248 + COMMA reduce 251 + SEMICOLON reduce 251 State 417: - (247) while_stmt ::= while_header RPAREN stmt * + (250) for_init_stmt_nonEmpty ::= cdef_stmt * - {default} reduce 247 + COMMA reduce 250 + SEMICOLON reduce 250 State 418: - (246) while_header ::= while_start LPAREN expr * + (249) for_init_stmt_nonEmpty ::= vdefAssign_stmt * - {default} reduce 246 + COMMA reduce 249 + SEMICOLON reduce 249 State 419: - (245) while_start ::= WHILE * + (248) for_init_stmt_nonEmpty ::= vdef_stmt * - {default} reduce 245 + COMMA reduce 248 + SEMICOLON reduce 248 State 420: - (244) switchcase_stmt ::= switchcase_block RBRACKET * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + case_clause ::= case_start exprList_nonEmpty * COLON - {default} reduce 244 + COMMA shift 80 + COLON shift 314 State 421: - (60) bodyStmtList ::= bodyStmt * + (198) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * - {default} reduce 60 + ASSIGN reduce 198 + COMMA reduce 198 State 422: - (233) case_clause ::= case_start exprList_nonEmpty COLON * + lvalueList_nonEmpty ::= lvalueList_nonEmpty * COMMA lvalue + assign_stmt ::= lvalueList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 233 + ASSIGN shift 37 + COMMA shift 87 State 423: - (232) case_start ::= CASE * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (191) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 232 + COMMA shift 80 + COMMA reduce 191 -- dropped by precedence + SEMICOLON reduce 191 State 424: - (231) switchcase_header ::= SWITCHCASE LPAREN expr * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + cdef_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 231 + ASSIGN shift 38 + COMMA shift 497 State 425: - (227) if_block ::= if_block elif_header RPAREN stmt * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (189) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 227 + COMMA shift 80 + SEMICOLON reduce 189 State 426: - (226) elif_header ::= elif_start LPAREN expr * + nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME + vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - {default} reduce 226 + ASSIGN shift 39 + COMMA shift 497 State 427: - (225) elif_start ::= ELSE IF * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + (188) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - {default} reduce 225 + COMMA shift 80 + COMMA reduce 188 -- dropped by precedence + SEMICOLON reduce 188 State 428: - (224) if_block ::= if_header RPAREN stmt * + (100) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * - {default} reduce 224 + COMMA reduce 100 + RPAREN reduce 100 State 429: - (223) if_header ::= if_start LPAREN expr * + (95) fArg ::= fNonConstArg * - {default} reduce 223 + COMMA reduce 95 + RPAREN reduce 95 State 430: - (222) if_start ::= IF * + (94) fArg ::= fConstArg * - {default} reduce 222 + COMMA reduce 94 + RPAREN reduce 94 State 431: - (221) once_stmt ::= once_block * + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg + (102) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * - {default} reduce 221 + COMMA shift 31 + RPAREN reduce 102 State 432: - (220) once_block ::= once_nocond stmt * + (98) fNonConstArgs_nonEmpty ::= fNonConstArg * - {default} reduce 220 + COMMA reduce 98 + RPAREN reduce 98 State 433: - (218) once_block ::= once_header RPAREN stmt * + (99) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * - {default} reduce 218 + COMMA reduce 99 + RPAREN reduce 99 State 434: - (217) once_header ::= once_start LPAREN expr * + (97) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * - {default} reduce 217 + COMMA reduce 97 + RPAREN reduce 97 State 435: - (216) once_start ::= ONCE * + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg + (101) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - {default} reduce 216 + COMMA shift 32 + RPAREN reduce 101 State 436: - (204) assign_stmt ::= DEC lvalue * + (96) fConstArgs_nonEmpty ::= fConstArg * - {default} reduce 204 + COMMA reduce 96 + RPAREN reduce 96 State 437: - (202) assign_stmt ::= INC lvalue * + (91) fConstArg ::= STRING * - {default} reduce 202 + COMMA reduce 91 + RPAREN reduce 91 State 438: - (199) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * + (63) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * - {default} reduce 199 + COMMA reduce 63 + RSQBRACKET reduce 63 State 439: - (215) assign_stmt ::= lvalue IBXR expr * + numList_nonEmpty ::= numList_nonEmpty * COMMA NUMBER + exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty * RSQBRACKET RSQBRACKET - {default} reduce 215 + COMMA shift 528 + RSQBRACKET shift 527 State 440: - (214) assign_stmt ::= lvalue IBOR expr * + (62) numList_nonEmpty ::= NUMBER * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET - {default} reduce 214 + COMMA reduce 62 + RSQBRACKET shift 544 + RSQBRACKET reduce 62 -- dropped by precedence State 441: - (213) assign_stmt ::= lvalue IBND expr * + nonConstExpr ::= nonConstExpr PERIOD * NAME + nonConstExpr ::= nonConstExpr PERIOD * TRGCONST + lvalue ::= nonConstExpr PERIOD * NAME + lvalue ::= nonConstExpr PERIOD * TRGCONST - {default} reduce 213 + NAME shift 328 + TRGCONST shift 327 State 442: - (212) assign_stmt ::= lvalue IRSH expr * + nonConstExpr ::= nonConstExpr PERIOD * NAME + nonConstExpr ::= nonConstExpr PERIOD * TRGCONST - {default} reduce 212 + NAME shift 302 + TRGCONST shift 301 State 443: - (211) assign_stmt ::= lvalue ILSH expr * + (13) relimp_start ::= relimp_start PERIOD * - {default} reduce 211 + PERIOD reduce 13 + NAME reduce 13 State 444: - (210) assign_stmt ::= lvalue IMOD expr * + relimp_start ::= relimp_start * PERIOD + relimp_path ::= relimp_start * NAME - {default} reduce 210 + PERIOD shift 443 + NAME shift 395 State 445: - (209) assign_stmt ::= lvalue IDIV expr * + (12) relimp_start ::= IMPORT PERIOD * - {default} reduce 209 + PERIOD reduce 12 + NAME reduce 12 State 446: - (208) assign_stmt ::= lvalue IMUL expr * + relimp_start ::= IMPORT * PERIOD + absimp_start ::= IMPORT * NAME - {default} reduce 208 + PERIOD shift 445 + NAME shift 396 State 447: - (207) assign_stmt ::= lvalue ISUB expr * + object_chunk ::= object_body RBRACKET * SEMICOLON - {default} reduce 207 + SEMICOLON shift 343 State 448: - (206) assign_stmt ::= lvalue IADD expr * + method_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - {default} reduce 206 + RPAREN shift 143 State 449: - (205) assign_stmt ::= lvalue DEC * + method_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - {default} reduce 205 + LPAREN shift 116 State 450: - (203) assign_stmt ::= lvalue INC * + method_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - {default} reduce 203 + NAME shift 449 State 451: - (200) assign_stmt ::= lvalue ASSIGN expr * + object_body ::= object_body VAR typedNameList_nonEmpty * SEMICOLON - {default} reduce 200 + SEMICOLON shift 367 State 452: - (72) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * + object_body ::= OBJECT NAME * LBRACKET - {default} reduce 72 + LBRACKET shift 368 State 453: - (71) nameList_nonEmpty ::= NAME * + object_body ::= OBJECT * NAME LBRACKET - {default} reduce 71 + NAME shift 452 State 454: - (108) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * + logicExpr ::= KILLS LPAREN fArgs * RPAREN - {default} reduce 108 + RPAREN shift 214 State 455: - logicExpr ::= logicExpr * LAND logicExpr - (185) logicExpr ::= logicExpr LAND logicExpr * - logicExpr ::= logicExpr * LOR logicExpr + funcexpr ::= NAME LPAREN fArgs * RPAREN - {default} reduce 185 + RPAREN shift 215 State 456: - (111) nonConstExpr ::= LPAREN logicExpr RPAREN * + lambdaExprStart ::= FUNCTION LPAREN typedNameList * RPAREN fdef_rettypes - {default} reduce 111 + RPAREN shift 144 State 457: - (123) nonConstExpr ::= nonConstExpr QMARK expr COLON expr * + (69) typedNameList ::= typedNameList_nonEmpty * - {default} reduce 123 + RPAREN reduce 69 State 458: - (114) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * + (240) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * - {default} reduce 114 + RBRACKET reduce 240 State 459: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (154) constExpr ::= PLUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + default_clause ::= DEFAULT * COLON - {default} reduce 154 + COLON shift 317 State 460: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (156) constExpr ::= MINUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON - {default} reduce 156 + SEMICOLON shift 159 State 461: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (158) constExpr ::= BITNOT constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON + actionStmt ::= constActionList ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - {default} reduce 158 + LPAREN shift 28 State 462: - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr - (187) logicExpr ::= LNOT logicExpr * + constAction ::= ACTIONNAME LPAREN RPAREN * SEMICOLON - {default} reduce 187 + SEMICOLON shift 161 State 463: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - (130) constExpr ::= constExpr MULTIPLY constExpr * - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON - {default} reduce 130 + SEMICOLON shift 162 State 464: - (271) logicExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * + constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN * SEMICOLON - {default} reduce 271 + SEMICOLON shift 163 State 465: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (158) constExpr ::= BITNOT constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + actionStmt ::= ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - {default} reduce 158 + LPAREN shift 20 State 466: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (156) constExpr ::= MINUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + (269) return_stmt ::= RETURN exprList * - {default} reduce 156 + SEMICOLON reduce 269 State 467: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (154) constExpr ::= PLUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + (268) break_stmt ::= BREAK * - {default} reduce 154 + SEMICOLON reduce 268 State 468: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - (136) constExpr ::= constExpr MOD constExpr * - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + (267) continue_stmt ::= CONTINUE * - {default} reduce 136 + SEMICOLON reduce 267 State 469: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - (133) constExpr ::= constExpr DIVIDE constExpr * - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + foreach_stmt ::= foreach_header * RPAREN stmt - {default} reduce 133 + RPAREN shift 5 State 470: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - (130) constExpr ::= constExpr MULTIPLY constExpr * - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + (264) foreach_opener ::= FOREACH LPAREN * - {default} reduce 130 + NAME reduce 264 State 471: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - (136) constExpr ::= constExpr MOD constExpr * - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + foreach_opener ::= FOREACH * LPAREN - {default} reduce 136 + LPAREN shift 470 State 472: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - (133) constExpr ::= constExpr DIVIDE constExpr * - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + for_stmt ::= for_header * RPAREN stmt - {default} reduce 133 + RPAREN shift 6 State 473: - (153) nonConstExpr ::= nonConstExpr BITXOR expr * + (262) for_header ::= for_header2 for_action_stmt * - {default} reduce 153 + RPAREN reduce 262 State 474: - (150) nonConstExpr ::= nonConstExpr BITOR expr * + for_header2 ::= for_header1 expr * SEMICOLON - {default} reduce 150 + SEMICOLON shift 332 State 475: - (147) nonConstExpr ::= nonConstExpr BITAND expr * + for_header1 ::= for_opener for_init_stmt * SEMICOLON - {default} reduce 147 + SEMICOLON shift 333 State 476: - (144) nonConstExpr ::= nonConstExpr RSHIFT expr * + for_opener ::= FOR * LPAREN - {default} reduce 144 + LPAREN shift 331 State 477: - (141) nonConstExpr ::= nonConstExpr LSHIFT expr * + while_stmt ::= while_header * RPAREN stmt - {default} reduce 141 + RPAREN shift 7 State 478: - (280) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * + (245) while_header ::= while_start LPAREN expr * - {default} reduce 280 + RPAREN reduce 245 State 479: - (105) fArgs ::= fArgs_nonEmpty * + while_header ::= while_start * LPAREN expr - {default} reduce 105 + LPAREN shift 48 State 480: - (101) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * + (244) while_start ::= WHILE * - {default} reduce 101 + LPAREN reduce 244 State 481: - (96) fArg ::= fNonConstArg * + switchcase_stmt ::= switchcase_block * RBRACKET - {default} reduce 96 + RBRACKET shift 167 State 482: - (95) fArg ::= fConstArg * + switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks default_chunk + switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks + switchcase_block ::= switchcase_header RPAREN * LBRACKET - {default} reduce 95 + LBRACKET shift 114 State 483: - (99) fNonConstArgs_nonEmpty ::= fNonConstArg * + switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks default_chunk + switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks + switchcase_block ::= switchcase_header * RPAREN LBRACKET - {default} reduce 99 + RPAREN shift 482 State 484: - (100) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * + (230) switchcase_header ::= SWITCHCASE LPAREN expr * - {default} reduce 100 + RPAREN reduce 230 State 485: - (98) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * + switchcase_header ::= SWITCHCASE * LPAREN expr - {default} reduce 98 + LPAREN shift 49 State 486: - (97) fConstArgs_nonEmpty ::= fConstArg * + if_block ::= if_block elif_header * RPAREN stmt - {default} reduce 97 + RPAREN shift 8 State 487: - (92) fConstArg ::= STRING * + (225) elif_header ::= elif_start LPAREN expr * - {default} reduce 92 + RPAREN reduce 225 State 488: - (138) nonConstExpr ::= nonConstExpr MOD expr * + elif_header ::= elif_start * LPAREN expr - {default} reduce 138 + LPAREN shift 50 State 489: - (135) nonConstExpr ::= nonConstExpr DIVIDE expr * + (224) elif_start ::= ELSE IF * - {default} reduce 135 + LPAREN reduce 224 State 490: - (132) nonConstExpr ::= nonConstExpr MULTIPLY expr * + if_block ::= if_header * RPAREN stmt - {default} reduce 132 + RPAREN shift 9 State 491: - (129) nonConstExpr ::= nonConstExpr MINUS expr * + (222) if_header ::= if_start LPAREN expr * - {default} reduce 129 + RPAREN reduce 222 State 492: - (126) nonConstExpr ::= nonConstExpr PLUS expr * + if_header ::= if_start * LPAREN expr - {default} reduce 126 + LPAREN shift 51 State 493: - (122) logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * + (221) if_start ::= IF * - {default} reduce 122 + LPAREN reduce 221 State 494: - (121) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * + once_block ::= once_header * RPAREN stmt - {default} reduce 121 + RPAREN shift 11 State 495: - (120) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * + (216) once_header ::= once_start LPAREN expr * - {default} reduce 120 + RPAREN reduce 216 State 496: - (119) constExpr ::= LOCATION LPAREN STRING RPAREN * + vdefAssignStatic_stmt ::= STATIC * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - {default} reduce 119 + VAR shift 153 State 497: - (118) constExpr ::= SWITCH LPAREN STRING RPAREN * + nameList_nonEmpty ::= nameList_nonEmpty COMMA * NAME - {default} reduce 118 + NAME shift 360 State 498: - (117) constExpr ::= UNIT LPAREN STRING RPAREN * + funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN - {default} reduce 117 + RPAREN shift 224 State 499: - (116) constExpr ::= MAPSTRING LPAREN STRING RPAREN * + nonConstExpr ::= nonConstExpr QMARK expr * COLON expr - {default} reduce 116 + COLON shift 64 State 500: - (115) nonConstExpr ::= L2V LPAREN expr RPAREN * + constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET - {default} reduce 115 + RSQBRACKET shift 230 State 501: - (75) exprList_nonEmpty ::= expr * + logicExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN - {default} reduce 75 + RPAREN shift 236 State 502: - (73) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * + constExpr ::= ACTIONNAME LPAREN fArgs * RPAREN - {default} reduce 73 + RPAREN shift 274 State 503: - (64) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * + (104) fArgs ::= fArgs_nonEmpty * - {default} reduce 64 + RPAREN reduce 104 State 504: - (110) constExpr ::= LPAREN constExpr RPAREN * + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - {default} reduce 110 + LPAREN shift 21 State 505: - (80) constExpr ::= KILLS * + logicExpr ::= CONDITIONNAME * LPAREN fArgs RPAREN - {default} reduce 80 + LPAREN shift 22 State 506: - (62) bodyStmtList ::= bodyStmtList error * + logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN - {default} reduce 62 + RPAREN shift 285 State 507: - (61) bodyStmtList ::= bodyStmtList bodyStmt * + logicExpr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN - {default} reduce 61 + LPAREN shift 41 State 508: - (59) bodyStmt ::= return_stmt SEMICOLON * + constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN - {default} reduce 59 + RPAREN shift 286 State 509: - (58) bodyStmt ::= break_stmt SEMICOLON * + constExpr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN - {default} reduce 58 + LPAREN shift 42 State 510: - (57) bodyStmt ::= continue_stmt SEMICOLON * + constExpr ::= STATTXTTBL LPAREN STRING * RPAREN - {default} reduce 57 + RPAREN shift 287 State 511: - (56) bodyStmt ::= switchcase_stmt * + constExpr ::= STATTXTTBL LPAREN * STRING RPAREN - {default} reduce 56 + STRING shift 510 State 512: - (55) bodyStmt ::= foreach_stmt * + constExpr ::= STATTXTTBL * LPAREN STRING RPAREN - {default} reduce 55 + LPAREN shift 511 State 513: - (54) bodyStmt ::= for_stmt * + constExpr ::= LOCATION LPAREN STRING * RPAREN - {default} reduce 54 + RPAREN shift 288 State 514: - (53) bodyStmt ::= while_stmt * + constExpr ::= LOCATION LPAREN * STRING RPAREN - {default} reduce 53 + STRING shift 513 State 515: - (52) bodyStmt ::= if_stmt * + constExpr ::= LOCATION * LPAREN STRING RPAREN - {default} reduce 52 + LPAREN shift 514 State 516: - (51) bodyStmt ::= once_stmt * + constExpr ::= SWITCH LPAREN STRING * RPAREN - {default} reduce 51 + RPAREN shift 289 State 517: - (50) bodyStmt ::= actionStmt * + constExpr ::= SWITCH LPAREN * STRING RPAREN - {default} reduce 50 + STRING shift 516 State 518: - (49) bodyStmt ::= funcexprStmt SEMICOLON * + constExpr ::= SWITCH * LPAREN STRING RPAREN - {default} reduce 49 + LPAREN shift 517 State 519: - (48) bodyStmt ::= assign_stmt SEMICOLON * + constExpr ::= UNIT LPAREN STRING * RPAREN - {default} reduce 48 + RPAREN shift 290 State 520: - (47) bodyStmt ::= cdef_stmt SEMICOLON * + constExpr ::= UNIT LPAREN * STRING RPAREN - {default} reduce 47 + STRING shift 519 State 521: - (46) bodyStmt ::= vdefAssign_stmt SEMICOLON * + constExpr ::= UNIT * LPAREN STRING RPAREN - {default} reduce 46 + LPAREN shift 520 State 522: - (45) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * + constExpr ::= MAPSTRING LPAREN STRING * RPAREN - {default} reduce 45 + RPAREN shift 291 State 523: - (44) bodyStmt ::= vdef_stmt SEMICOLON * + constExpr ::= MAPSTRING LPAREN * STRING RPAREN - {default} reduce 44 + STRING shift 522 State 524: - (43) bodyStmt ::= SEMICOLON * + constExpr ::= MAPSTRING * LPAREN STRING RPAREN - {default} reduce 43 + LPAREN shift 523 State 525: - (42) bodyStmt ::= blockStmt * + nonConstExpr ::= L2V LPAREN expr * RPAREN - {default} reduce 42 + RPAREN shift 292 State 526: - (39) blockStmt ::= lbracket error RBRACKET * + nonConstExpr ::= L2V * LPAREN expr RPAREN - {default} reduce 39 + LPAREN shift 75 State 527: - (38) blockStmt ::= blockStmtSub rbracket * + exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET - {default} reduce 38 + RSQBRACKET shift 311 State 528: - (37) rbracket ::= RBRACKET * + numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER - {default} reduce 37 + NUMBER shift 438 State 529: - (36) lbracket ::= LBRACKET * + exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - {default} reduce 36 + LSQBRACKET shift 155 State 530: - (35) stmt ::= bodyStmt * + nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET + lvalue ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - {default} reduce 35 + RSQBRACKET shift 326 State 531: - (34) stmt ::= error SEMICOLON * + bodyStmt ::= return_stmt * SEMICOLON - {default} reduce 34 + SEMICOLON shift 173 State 532: - (66) typedName ::= NAME COLON expr * + bodyStmt ::= break_stmt * SEMICOLON - {default} reduce 66 + SEMICOLON shift 174 State 533: - (85) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + bodyStmt ::= continue_stmt * SEMICOLON - {default} reduce 85 + SEMICOLON shift 175 State 534: - (84) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * + bodyStmt ::= funcexprStmt * SEMICOLON - {default} reduce 84 + SEMICOLON shift 183 State 535: - (83) nonConstExpr ::= nonConstExpr PERIOD NAME * + bodyStmt ::= assign_stmt * SEMICOLON - {default} reduce 83 + SEMICOLON shift 184 State 536: - (81) constExpr ::= TRGCONST * + bodyStmt ::= cdef_stmt * SEMICOLON - {default} reduce 81 + SEMICOLON shift 185 State 537: - (79) constExpr ::= NUMBER * + bodyStmt ::= vdefAssign_stmt * SEMICOLON - {default} reduce 79 + SEMICOLON shift 186 State 538: - (76) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * + bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON - {default} reduce 76 + SEMICOLON shift 187 State 539: - (74) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * + bodyStmt ::= vdef_stmt * SEMICOLON - {default} reduce 74 + SEMICOLON shift 188 State 540: - (18) relimp_chunk ::= relimp_path AS NAME SEMICOLON * + blockStmt ::= lbracket error * RBRACKET - {default} reduce 18 + RBRACKET shift 191 State 541: - (17) relimp_chunk ::= relimp_path SEMICOLON * + stmt ::= error * SEMICOLON - {default} reduce 17 + SEMICOLON shift 195 State 542: - (16) relimp_path ::= relimp_path PERIOD NAME * + lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes - {default} reduce 16 + LPAREN shift 117 State 543: - (15) relimp_path ::= relimp_start NAME * + nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - {default} reduce 15 + RSQBRACKET shift 300 State 544: - (14) relimp_start ::= relimp_start PERIOD * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET - {default} reduce 14 + RSQBRACKET shift 308 State 545: - (21) import_chunk ::= IMPORT dottedName AS NAME * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET - {default} reduce 21 + RSQBRACKET shift 544 State 546: - (20) dottedName ::= dottedName PERIOD NAME * + nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET - {default} reduce 20 + NUMBER shift 545 State 547: - (19) dottedName ::= NAME * + nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - {default} reduce 19 + LSQBRACKET shift 546 State 548: - (13) relimp_start ::= IMPORT PERIOD * + fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON - {default} reduce 13 + RPAREN shift 145 State 549: - (12) chunk ::= blockStmt * + fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON - {default} reduce 12 + LPAREN shift 118 State 550: - (11) chunk ::= cdef_global_stmt SEMICOLON * + fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON - {default} reduce 11 + NAME shift 549 State 551: - (10) chunk ::= vdefAssign_global_stmt SEMICOLON * + import_chunk ::= absimp_start AS NAME * SEMICOLON - {default} reduce 10 + SEMICOLON shift 347 State 552: - (9) chunk ::= vdef_stmt SEMICOLON * + import_chunk ::= absimp_start AS * NAME SEMICOLON - {default} reduce 9 + NAME shift 551 State 553: - (8) chunk ::= object_chunk * + absimp_start ::= absimp_start PERIOD * NAME - {default} reduce 8 + NAME shift 391 State 554: - (7) chunk ::= fdecl_chunk * + import_chunk ::= relimp_path AS NAME * SEMICOLON - {default} reduce 7 + SEMICOLON shift 348 State 555: - (6) chunk ::= fdef_chunk * + import_chunk ::= relimp_path AS * NAME SEMICOLON - {default} reduce 6 + NAME shift 554 State 556: - (5) chunk ::= import_chunk SEMICOLON * + relimp_path ::= relimp_path PERIOD * NAME - {default} reduce 5 + NAME shift 393 State 557: - (4) chunk ::= relimp_chunk * + chunk ::= cdef_global_stmt * SEMICOLON - {default} reduce 4 + SEMICOLON shift 351 State 558: - (3) chunks ::= chunks error * + chunk ::= vdefAssign_global_stmt * SEMICOLON - {default} reduce 3 + SEMICOLON shift 352 State 559: - (2) chunks ::= chunks chunk * + chunk ::= vdef_stmt * SEMICOLON - {default} reduce 2 + SEMICOLON shift 353 ---------------------------------------------------- Symbols: @@ -21291,96 +31599,95 @@ Symbols: 85: program: IMPORT FUNCTION OBJECT LBRACKET VAR CONST 86: chunks: IMPORT FUNCTION OBJECT LBRACKET VAR CONST 87: chunk: IMPORT FUNCTION OBJECT LBRACKET VAR CONST - 88: relimp_chunk: IMPORT - 89: import_chunk: IMPORT - 90: fdef_chunk: FUNCTION - 91: fdecl_chunk: FUNCTION - 92: object_chunk: OBJECT - 93: vdef_stmt: VAR - 94: vdefAssign_global_stmt: VAR - 95: cdef_global_stmt: CONST - 96: blockStmt: LBRACKET - 97: relimp_start: IMPORT - 98: relimp_path: IMPORT - 99: dottedName: NAME - 100: fdef_rettypes: COLON - 101: exprList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 102: fdef_header: FUNCTION - 103: typedNameList: NAME - 104: stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME - 105: object_body: OBJECT - 106: typedNameList_nonEmpty: NAME - 107: method_header: FUNCTION - 108: method_chunk: FUNCTION - 109: bodyStmt: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME - 110: lbracket: LBRACKET - 111: rbracket: RBRACKET - 112: blockStmtSub: LBRACKET - 113: bodyStmtList: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME - 114: vdefAssignStatic_stmt: STATIC - 115: vdefAssign_stmt: VAR - 116: cdef_stmt: CONST - 117: assign_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME - 118: funcexprStmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 119: actionStmt: ACTIONNAME - 120: once_stmt: ONCE - 121: if_stmt: IF - 122: while_stmt: WHILE - 123: for_stmt: FOR - 124: foreach_stmt: FOREACH - 125: switchcase_stmt: SWITCHCASE - 126: continue_stmt: CONTINUE - 127: break_stmt: BREAK - 128: return_stmt: RETURN - 129: numList_nonEmpty: NUMBER - 130: typedName: NAME - 131: expr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 132: nameList_nonEmpty: NAME - 133: funcexpr: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 134: nonConstExpr: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 135: exprList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 136: constExpr: PLUS MINUS BITNOT LPAREN LSQBRACKET FUNCTION NUMBER KILLS TRGCONST MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 137: lambdaExprStart: FUNCTION - 138: logicExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 139: fNonConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 140: fConstArg: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 141: fArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 142: fConstArgs_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 143: fNonConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 144: fArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 145: fArgs: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 146: commaSkippable: COMMA - 147: lvalue: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 148: lvalueList_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 149: once_start: ONCE - 150: once_header: ONCE - 151: once_block: ONCE - 152: once_nocond: ONCE - 153: if_start: IF - 154: if_header: IF - 155: if_block: IF - 156: elif_start: ELSE - 157: elif_header: ELSE - 158: else_header: ELSE - 159: switchcase_header: SWITCHCASE - 160: case_start: CASE - 161: case_clause: CASE - 162: case_chunk: CASE - 163: case_chunks: CASE - 164: default_clause: DEFAULT - 165: default_chunk: DEFAULT - 166: switchcase_block: SWITCHCASE - 167: while_start: WHILE - 168: while_header: WHILE - 169: for_opener: FOR - 170: for_init_stmt_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY CONST INC DEC ACTIONNAME - 171: for_init_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY CONST INC DEC ACTIONNAME - 172: for_action_stmt_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME - 173: for_action_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME - 174: for_header1: FOR - 175: for_header2: FOR - 176: for_header: FOR - 177: foreach_opener: FOREACH - 178: foreach_header: FOREACH - 179: constAction: ACTIONNAME - 180: constActionList: ACTIONNAME + 88: import_chunk: IMPORT + 89: fdef_chunk: FUNCTION + 90: fdecl_chunk: FUNCTION + 91: object_chunk: OBJECT + 92: vdef_stmt: VAR + 93: vdefAssign_global_stmt: VAR + 94: cdef_global_stmt: CONST + 95: blockStmt: LBRACKET + 96: relimp_start: IMPORT + 97: relimp_path: IMPORT + 98: absimp_start: IMPORT + 99: fdef_rettypes: COLON + 100: exprList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 101: fdef_header: FUNCTION + 102: typedNameList: NAME + 103: stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 104: object_body: OBJECT + 105: typedNameList_nonEmpty: NAME + 106: method_header: FUNCTION + 107: method_chunk: FUNCTION + 108: bodyStmt: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 109: lbracket: LBRACKET + 110: rbracket: RBRACKET + 111: blockStmtSub: LBRACKET + 112: bodyStmtList: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 113: vdefAssignStatic_stmt: STATIC + 114: vdefAssign_stmt: VAR + 115: cdef_stmt: CONST + 116: assign_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME + 117: funcexprStmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 118: actionStmt: ACTIONNAME + 119: once_stmt: ONCE + 120: if_stmt: IF + 121: while_stmt: WHILE + 122: for_stmt: FOR + 123: foreach_stmt: FOREACH + 124: switchcase_stmt: SWITCHCASE + 125: continue_stmt: CONTINUE + 126: break_stmt: BREAK + 127: return_stmt: RETURN + 128: numList_nonEmpty: NUMBER + 129: typedName: NAME + 130: expr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 131: nameList_nonEmpty: NAME + 132: funcexpr: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 133: nonConstExpr: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 134: exprList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 135: constExpr: PLUS MINUS BITNOT LPAREN LSQBRACKET FUNCTION NUMBER KILLS TRGCONST MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 136: lambdaExprStart: FUNCTION + 137: logicExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 138: fNonConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 139: fConstArg: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 140: fArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 141: fConstArgs_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 142: fNonConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 143: fArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 144: fArgs: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 145: commaSkippable: COMMA + 146: lvalue: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 147: lvalueList_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 148: once_start: ONCE + 149: once_header: ONCE + 150: once_block: ONCE + 151: once_nocond: ONCE + 152: if_start: IF + 153: if_header: IF + 154: if_block: IF + 155: elif_start: ELSE + 156: elif_header: ELSE + 157: else_header: ELSE + 158: switchcase_header: SWITCHCASE + 159: case_start: CASE + 160: case_clause: CASE + 161: case_chunk: CASE + 162: case_chunks: CASE + 163: default_clause: DEFAULT + 164: default_chunk: DEFAULT + 165: switchcase_block: SWITCHCASE + 166: while_start: WHILE + 167: while_header: WHILE + 168: for_opener: FOR + 169: for_init_stmt_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY CONST INC DEC ACTIONNAME + 170: for_init_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY CONST INC DEC ACTIONNAME + 171: for_action_stmt_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME + 172: for_action_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME + 173: for_header1: FOR + 174: for_header2: FOR + 175: for_header: FOR + 176: foreach_opener: FOREACH + 177: foreach_header: FOREACH + 178: constAction: ACTIONNAME + 179: constActionList: ACTIONNAME From a3cf7b315e1fcfc32847d0164add117e19583ea6 Mon Sep 17 00:00:00 2001 From: armoha Date: Sun, 12 Sep 2021 08:21:09 +0900 Subject: [PATCH 5/5] Manual operator precedences --- eudplib/epscript/cpp/parser/epparser.h | 26 +- eudplib/epscript/cpp/parser/epparser.lemon | 254 +- eudplib/epscript/cpp/parser/epparser.out | 46665 +++++++++---------- 3 files changed, 22686 insertions(+), 24259 deletions(-) diff --git a/eudplib/epscript/cpp/parser/epparser.h b/eudplib/epscript/cpp/parser/epparser.h index 6e41914a..d92d6758 100644 --- a/eudplib/epscript/cpp/parser/epparser.h +++ b/eudplib/epscript/cpp/parser/epparser.h @@ -30,19 +30,19 @@ #define SEMICOLON 30 #define IMPORT 31 #define NAME 32 -#define AS 33 -#define COLON 34 -#define FUNCTION 35 -#define RPAREN 36 -#define OBJECT 37 -#define LBRACKET 38 -#define VAR 39 -#define RBRACKET 40 -#define NUMBER 41 -#define RSQBRACKET 42 -#define SUBSCRIPT 43 -#define KILLS 44 -#define TRGCONST 45 +#define TRGCONST 33 +#define AS 34 +#define COLON 35 +#define FUNCTION 36 +#define RPAREN 37 +#define OBJECT 38 +#define LBRACKET 39 +#define VAR 40 +#define RBRACKET 41 +#define NUMBER 42 +#define RSQBRACKET 43 +#define SUBSCRIPT 44 +#define KILLS 45 #define MEMBER 46 #define STRING 47 #define FUNCCALL 48 diff --git a/eudplib/epscript/cpp/parser/epparser.lemon b/eudplib/epscript/cpp/parser/epparser.lemon index 7905ad5f..9ed1bbb2 100644 --- a/eudplib/epscript/cpp/parser/epparser.lemon +++ b/eudplib/epscript/cpp/parser/epparser.lemon @@ -101,11 +101,21 @@ relimp_path(A) ::= relimp_start(B) NAME(C). { delete B; A = C; } +relimp_path(A) ::= relimp_start(B) TRGCONST(C). { + C->data = B->data + C->data; + delete B; + A = C; +} relimp_path(A) ::= relimp_path(B) PERIOD NAME(C). { C->data = B->data + "." + C->data; delete B; A = C; } +relimp_path(A) ::= relimp_path(B) PERIOD TRGCONST(C). { + C->data = B->data + "." + C->data; + delete B; + A = C; +} import_chunk ::= relimp_path(A) SEMICOLON. { std::string impPath, impModname; impPathProcess(A->data, impPath, impModname); @@ -128,13 +138,23 @@ import_chunk ::= relimp_path(A) AS NAME(B) SEMICOLON. { ps->gen << B->data << " = _RELIMP(\"" << impPath << "\", \"" << impModname << "\")" << std::endl; delete A; delete B; } +import_chunk ::= relimp_path(A) AS TRGCONST(B) SEMICOLON. { + throw_error(6754, "Module name conflict with trigger constant " + B->data, B->line); + delete A; delete B; +} absimp_start(A) ::= IMPORT NAME(B). { A = B; } +absimp_start(A) ::= IMPORT TRGCONST(B). { A = B; } absimp_start(A) ::= absimp_start(B) PERIOD NAME(C). { C->data = B->data + "." + C->data; delete B; A = C; } +absimp_start(A) ::= absimp_start(B) PERIOD TRGCONST(C). { + C->data = B->data + "." + C->data; + delete B; + A = C; +} import_chunk ::= absimp_start(A) AS NAME(B) SEMICOLON. { std::string impPath, impModname; @@ -148,6 +168,10 @@ import_chunk ::= absimp_start(A) AS NAME(B) SEMICOLON. { ps->gen << "import " << impModname << " as " << B->data << std::endl; delete A; delete B; } +import_chunk ::= absimp_start(A) AS TRGCONST(B) SEMICOLON. { + throw_error(6754, "Module name conflict with trigger constant " + B->data, B->line); + delete A; delete B; +} import_chunk ::= absimp_start(A) SEMICOLON. { std::string impPath, impModname; @@ -573,13 +597,13 @@ constExpr(A) ::= lambdaExprStart(B) stmt. { ps->closure.popScope(); A = mkTokenTemp(B); } -expr(A) ::= constExpr(B). { A = B; } +expr(A) ::= constLogicExpr(B). { A = B; } expr(A) ::= logicExpr(B). { A = B; } // Function calls fNonConstArg(A) ::= logicExpr(B). { A = B; } -fConstArg(A) ::= constExpr(B). { A = B; } +fConstArg(A) ::= constLogicExpr(B). { A = B; } fConstArg(A) ::= STRING(B). { A = B; } fConstArg(A) ::= NAME(B) ASSIGN expr(C). { // Keyword argument C->data = B->data + "=" + C->data; @@ -663,7 +687,7 @@ funcexpr(out) ::= nonConstExpr(name) LPAREN fArgs(exprs) RPAREN. [FUNCCALL] { // Expressions nonConstExpr(A) ::= funcexpr(B). { A = B; } -constExpr(A) ::= LPAREN constExpr(B) RPAREN. { +constExpr(A) ::= LPAREN constLogicExpr(B) RPAREN. { A = genEmpty(); A->data = "(" + B->data + ")"; A->type = TOKEN_EXPR; @@ -725,7 +749,7 @@ logicExpr(A) ::= LIST LPAREN exprList_nonEmpty(B) commaSkippable RPAREN. { } // Ternary operators -nonConstExpr(A) ::= nonConstExpr(L) QMARK expr(B) COLON expr(C). [QMARK] { +logicExpr(A) ::= logicExpr(L) QMARK expr(B) COLON expr(C). [QMARK] { std::stringstream ss; ss << "EUDTernary"; applyNegativeOptimization(ss, L); @@ -737,48 +761,82 @@ nonConstExpr(A) ::= nonConstExpr(L) QMARK expr(B) COLON expr(C). [QMARK] { } // Binary operators -constExpr(A) ::= constExpr(B) PLUS constExpr(C). { A = binopConcat(B, "+", C); } -nonConstExpr(A) ::= constExpr(B) PLUS nonConstExpr(C). { A = binopConcat(B, "+", C); } -nonConstExpr(A) ::= nonConstExpr(B) PLUS expr(C). { A = binopConcat(B, "+", C); } -constExpr(A) ::= constExpr(B) MINUS constExpr(C). { A = binopConcat(B, "-", C); } -nonConstExpr(A) ::= constExpr(B) MINUS nonConstExpr(C). { A = binopConcat(B, "-", C); } -nonConstExpr(A) ::= nonConstExpr(B) MINUS expr(C). { A = binopConcat(B, "-", C); } -constExpr(A) ::= constExpr(B) MULTIPLY constExpr(C). { A = binopConcat(B, "*", C); } -nonConstExpr(A) ::= constExpr(B) MULTIPLY nonConstExpr(C). { A = binopConcat(B, "*", C); } -nonConstExpr(A) ::= nonConstExpr(B) MULTIPLY expr(C). { A = binopConcat(B, "*", C); } -constExpr(A) ::= constExpr(B) DIVIDE constExpr(C). { A = binopConcat(B, "//", C); } -nonConstExpr(A) ::= constExpr(B) DIVIDE nonConstExpr(C). { A = binopConcat(B, "//", C); } -nonConstExpr(A) ::= nonConstExpr(B) DIVIDE expr(C). { A = binopConcat(B, "//", C); } -constExpr(A) ::= constExpr(B) MOD constExpr(C). { A = binopConcat(B, "%", C); } -nonConstExpr(A) ::= constExpr(B) MOD nonConstExpr(C). { A = binopConcat(B, "%", C); } -nonConstExpr(A) ::= nonConstExpr(B) MOD expr(C). { A = binopConcat(B, "%", C); } -constExpr(A) ::= constExpr(B) LSHIFT constExpr(C). { +constTerm(A) ::= constFactor(B). { A = B; } +constTerm(A) ::= constTerm(B) PLUS constFactor(C). { A = binopConcat(B, "+", C); } +constTerm(A) ::= constTerm(B) MINUS constFactor(C). { A = binopConcat(B, "-", C); } + +term(A) ::= factor(B). { A = B; } +term(A) ::= constFactor(B) PLUS factor(C). { A = binopConcat(B, "+", C); } +term(A) ::= term(B) PLUS constFactor(C). { A = binopConcat(B, "+", C); } +term(A) ::= term(B) PLUS factor(C). { A = binopConcat(B, "+", C); } +term(A) ::= constFactor(B) MINUS factor(C). { A = binopConcat(B, "-", C); } +term(A) ::= term(B) MINUS constFactor(C). { A = binopConcat(B, "-", C); } +term(A) ::= term(B) MINUS factor(C). { A = binopConcat(B, "-", C); } + +constFactor(A) ::= constExpr(B). { A = B; } +constFactor(A) ::= constFactor(B) MULTIPLY constExpr(C). { A = binopConcat(B, "*", C); } +constFactor(A) ::= constFactor(B) MOD constExpr(C). { A = binopConcat(B, "%", C); } +constFactor(A) ::= constFactor(B) DIVIDE constExpr(C). { A = binopConcat(B, "//", C); } + +factor(A) ::= nonConstExpr(B). { A = B; } +factor(A) ::= constExpr(B) MULTIPLY nonConstExpr(C). { A = binopConcat(B, "*", C); } +factor(A) ::= factor(B) MULTIPLY constExpr(C). { A = binopConcat(B, "*", C); } +factor(A) ::= factor(B) MULTIPLY nonConstExpr(C). { A = binopConcat(B, "*", C); } +factor(A) ::= constExpr(B) DIVIDE nonConstExpr(C). { A = binopConcat(B, "//", C); } +factor(A) ::= factor(B) DIVIDE constExpr(C). { A = binopConcat(B, "//", C); } +factor(A) ::= factor(B) DIVIDE nonConstExpr(C). { A = binopConcat(B, "//", C); } +factor(A) ::= constExpr(B) MOD nonConstExpr(C). { A = binopConcat(B, "%", C); } +factor(A) ::= factor(B) MOD constExpr(C). { A = binopConcat(B, "%", C); } +factor(A) ::= factor(B) MOD nonConstExpr(C). { A = binopConcat(B, "%", C); } + +constShTerm(A) ::= constTerm(B). { A = B; } +constShTerm(A) ::= constShTerm(B) RSHIFT constTerm(C). { A = binopConcat(B, ">>", C); } +constShTerm(A) ::= constShTerm(B) LSHIFT constTerm(C). { C->data = "_LSH(" + B->data + "," + C->data + ")"; delete B; A = mkTokenTemp(C); } -nonConstExpr(A) ::= constExpr(B) LSHIFT nonConstExpr(C). { +shTerm(A) ::= term(B). { A = B; } +shTerm(A) ::= constTerm(B) RSHIFT term(C). { A = binopConcat(B, ">>", C); } +shTerm(A) ::= shTerm(B) RSHIFT term(C). { A = binopConcat(B, ">>", C); } +shTerm(A) ::= shTerm(B) RSHIFT constTerm(C). { A = binopConcat(B, ">>", C); } +shTerm(A) ::= constTerm(B) LSHIFT term(C). { + C->data = "f_bitlshift(" + B->data + "," + C->data + ")"; + delete B; + A = mkTokenTemp(C); +} +shTerm(A) ::= shTerm(B) LSHIFT constTerm(C). { C->data = "_LSH(" + B->data + "," + C->data + ")"; delete B; A = mkTokenTemp(C); } -nonConstExpr(A) ::= nonConstExpr(B) LSHIFT expr(C). { +shTerm(A) ::= shTerm(B) LSHIFT term(C). { C->data = "_LSH(" + B->data + "," + C->data + ")"; delete B; A = mkTokenTemp(C); } -constExpr(A) ::= constExpr(B) RSHIFT constExpr(C). { A = binopConcat(B, ">>", C); } -nonConstExpr(A) ::= constExpr(B) RSHIFT nonConstExpr(C). { A = binopConcat(B, ">>", C); } -nonConstExpr(A) ::= nonConstExpr(B) RSHIFT expr(C). { A = binopConcat(B, ">>", C); } -constExpr(A) ::= constExpr(B) BITAND constExpr(C). { A = binopConcat(B, "&", C); } -nonConstExpr(A) ::= constExpr(B) BITAND nonConstExpr(C). { A = binopConcat(B, "&", C); } -nonConstExpr(A) ::= nonConstExpr(B) BITAND expr(C). { A = binopConcat(B, "&", C); } -constExpr(A) ::= constExpr(B) BITOR constExpr(C). { A = binopConcat(B, "|", C); } -nonConstExpr(A) ::= constExpr(B) BITOR nonConstExpr(C). { A = binopConcat(B, "|", C); } -nonConstExpr(A) ::= nonConstExpr(B) BITOR expr(C). { A = binopConcat(B, "|", C); } -constExpr(A) ::= constExpr(B) BITXOR constExpr(C). { A = binopConcat(B, "^", C); } -nonConstExpr(A) ::= constExpr(B) BITXOR nonConstExpr(C). { A = binopConcat(B, "^", C); } -nonConstExpr(A) ::= nonConstExpr(B) BITXOR expr(C). { A = binopConcat(B, "^", C); } + +constBitAndTerm(A) ::= constShTerm(B). { A = B; } +constBitAndTerm(A) ::= constBitAndTerm(B) BITAND constShTerm(C). { A = binopConcat(B, "&", C); } +bitAndTerm(A) ::= shTerm(B). { A = B; } +bitAndTerm(A) ::= constShTerm(B) BITAND shTerm(C). { A = binopConcat(B, "&", C); } +bitAndTerm(A) ::= bitAndTerm(B) BITAND shTerm(C). { A = binopConcat(B, "&", C); } +bitAndTerm(A) ::= bitAndTerm(B) BITAND constShTerm(C). { A = binopConcat(B, "&", C); } + +constBitXorTerm(A) ::= constBitAndTerm(B). { A = B; } +constBitXorTerm(A) ::= constBitXorTerm(B) BITXOR constBitAndTerm(C). { A = binopConcat(B, "^", C); } +bitXorTerm(A) ::= bitAndTerm(B). { A = B; } +bitXorTerm(A) ::= constBitAndTerm(B) BITXOR bitAndTerm(C). { A = binopConcat(B, "^", C); } +bitXorTerm(A) ::= bitXorTerm(B) BITXOR constBitAndTerm(C). { A = binopConcat(B, "^", C); } +bitXorTerm(A) ::= bitXorTerm(B) BITXOR bitAndTerm(C). { A = binopConcat(B, "^", C); } + +constBitOrTerm(A) ::= constBitXorTerm(B). { A = B; } +constBitOrTerm(A) ::= constBitOrTerm(B) BITOR constBitXorTerm(C). { A = binopConcat(B, "|", C); } +bitOrTerm(A) ::= bitXorTerm(B). { A = B; } +bitOrTerm(A) ::= constBitXorTerm(B) BITOR bitXorTerm(C). { A = binopConcat(B, "|", C); } +bitOrTerm(A) ::= bitOrTerm(B) BITOR bitXorTerm(C). { A = binopConcat(B, "|", C); } +bitOrTerm(A) ::= bitOrTerm(B) BITOR constBitXorTerm(C). { A = binopConcat(B, "|", C); } + // Unary operators constExpr(A) ::= PLUS constExpr(B). [UNARY] { B->data = "+" + B->data; A = mkTokenTemp(B); } @@ -787,38 +845,74 @@ constExpr(A) ::= MINUS constExpr(B). [UNARY] { B->data = "-" + B->data; A nonConstExpr(A) ::= MINUS nonConstExpr(B). [UNARY] { B->data = "-" + B->data; A = mkTokenTemp(B); } constExpr(A) ::= BITNOT constExpr(B). [UNARY] { B->data = "~" + B->data; A = mkTokenTemp(B); } nonConstExpr(A) ::= BITNOT nonConstExpr(B). [UNARY] { B->data = "~" + B->data; A = mkTokenTemp(B); } +constExpr(A) ::= LNOT constExpr(B). [UNARY] { A = negate(B); } +nonConstExpr(A) ::= LNOT nonConstExpr(B). [UNARY] { A = negate(B); } + + + +constEqExpr(A) ::= constBitOrTerm(B). { A = B; } +constEqExpr(A) ::= constBitOrTerm(B) EQ constBitOrTerm(C). { A = binopConcat(B, "==", C); } +constEqExpr(A) ::= constBitOrTerm(B) NE constBitOrTerm(C). { A = negate(binopConcat(B, "==", C)); } +eqExpr(A) ::= bitOrTerm(B). { A = B; } +eqExpr(A) ::= constBitOrTerm(B) EQ bitOrTerm(C). { A = binopConcat(B, "==", C); } +eqExpr(A) ::= bitOrTerm(B) EQ constBitOrTerm(C). { A = binopConcat(B, "==", C); } +eqExpr(A) ::= bitOrTerm(B) EQ bitOrTerm(C). { A = binopConcat(B, "==", C); } +eqExpr(A) ::= constBitOrTerm(B) NE bitOrTerm(C). { A = negate(binopConcat(B, "==", C)); } +eqExpr(A) ::= bitOrTerm(B) NE constBitOrTerm(C). { A = negate(binopConcat(B, "==", C)); } +eqExpr(A) ::= bitOrTerm(B) NE bitOrTerm(C). { A = negate(binopConcat(B, "==", C)); } + +constCompExpr(A) ::= constEqExpr(B). { A = B; } +constCompExpr(A) ::= constEqExpr(B) LE constEqExpr(C). { A = binopConcat(B, "<=", C); } +constCompExpr(A) ::= constEqExpr(B) GE constEqExpr(C). { A = binopConcat(B, ">=", C); } +constCompExpr(A) ::= constEqExpr(B) LT constEqExpr(C). { A = negate(binopConcat(B, ">=", C)); } +constCompExpr(A) ::= constEqExpr(B) GT constEqExpr(C). { A = negate(binopConcat(B, "<=", C)); } +compExpr(A) ::= eqExpr(B). { A = B; } +compExpr(A) ::= constEqExpr(B) LE eqExpr(C). { A = binopConcat(B, "<=", C); } +compExpr(A) ::= eqExpr(B) LE constEqExpr(C). { A = binopConcat(B, "<=", C); } +compExpr(A) ::= eqExpr(B) LE eqExpr(C). { A = binopConcat(B, "<=", C); } +compExpr(A) ::= constEqExpr(B) GE eqExpr(C). { A = binopConcat(B, ">=", C); } +compExpr(A) ::= eqExpr(B) GE constEqExpr(C). { A = binopConcat(B, ">=", C); } +compExpr(A) ::= eqExpr(B) GE eqExpr(C). { A = binopConcat(B, ">=", C); } +compExpr(A) ::= constEqExpr(B) LT eqExpr(C). { A = negate(binopConcat(B, ">=", C)); } +compExpr(A) ::= eqExpr(B) LT constEqExpr(C). { A = negate(binopConcat(B, ">=", C)); } +compExpr(A) ::= eqExpr(B) LT eqExpr(C). { A = negate(binopConcat(B, ">=", C)); } +compExpr(A) ::= constEqExpr(B) GT eqExpr(C). { A = negate(binopConcat(B, "<=", C)); } +compExpr(A) ::= eqExpr(B) GT constEqExpr(C). { A = negate(binopConcat(B, "<=", C)); } +compExpr(A) ::= eqExpr(B) GT eqExpr(C). { A = negate(binopConcat(B, "<=", C)); } + +constLogicAndExpr(A) ::= constCompExpr(B). { A = B; } +logicAndExpr(A) ::= compExpr(B). { A = B; } +logicAndExpr(A) ::= logicAndExpr(B) LAND compExpr(C). { + A = genEmpty(); + A->line = C->line; + // Generate data! + A->type = TOKEN_LAND; + A->subToken[0] = B; + A->subToken[1] = C; + std::stringstream ss; + ss << "EUDSCAnd()"; + shortCircuitCondListGetter(ss, A, TOKEN_LAND); + ss << "()"; + A->data = ss.str(); +} +logicAndExpr(A) ::= logicAndExpr(B) LAND constCompExpr(C). { + A = genEmpty(); + A->line = C->line; -constExpr(A) ::= constExpr(B) EQ constExpr(C). { A = binopConcat(B, "==", C); } -logicExpr(A) ::= constExpr(B) EQ nonConstExpr(C). { A = binopConcat(B, "==", C); } -logicExpr(A) ::= nonConstExpr(B) EQ constExpr(C). { A = binopConcat(B, "==", C); } -logicExpr(A) ::= nonConstExpr(B) EQ nonConstExpr(C). { A = binopConcat(B, "==", C); } -constExpr(A) ::= constExpr(B) NE constExpr(C). { A = negate(binopConcat(B, "==", C)); } -logicExpr(A) ::= constExpr(B) NE nonConstExpr(C). { A = negate(binopConcat(B, "==", C)); } -logicExpr(A) ::= nonConstExpr(B) NE constExpr(C). { A = negate(binopConcat(B, "==", C)); } -logicExpr(A) ::= nonConstExpr(B) NE nonConstExpr(C). { A = negate(binopConcat(B, "==", C)); } - -constExpr(A) ::= constExpr(B) LE constExpr(C). { A = binopConcat(B, "<=", C); } -logicExpr(A) ::= constExpr(B) LE nonConstExpr(C). { A = binopConcat(B, "<=", C); } -logicExpr(A) ::= nonConstExpr(B) LE constExpr(C). { A = binopConcat(B, "<=", C); } -logicExpr(A) ::= nonConstExpr(B) LE nonConstExpr(C). { A = binopConcat(B, "<=", C); } -constExpr(A) ::= constExpr(B) GE constExpr(C). { A = binopConcat(B, ">=", C); } -logicExpr(A) ::= constExpr(B) GE nonConstExpr(C). { A = binopConcat(B, ">=", C); } -logicExpr(A) ::= nonConstExpr(B) GE constExpr(C). { A = binopConcat(B, ">=", C); } -logicExpr(A) ::= nonConstExpr(B) GE nonConstExpr(C). { A = binopConcat(B, ">=", C); } - -constExpr(A) ::= constExpr(B) LT constExpr(C). { A = negate(binopConcat(B, ">=", C)); } -logicExpr(A) ::= constExpr(B) LT nonConstExpr(C). { A = negate(binopConcat(B, ">=", C)); } -logicExpr(A) ::= nonConstExpr(B) LT constExpr(C). { A = negate(binopConcat(B, ">=", C)); } -logicExpr(A) ::= nonConstExpr(B) LT nonConstExpr(C). { A = negate(binopConcat(B, ">=", C)); } -constExpr(A) ::= constExpr(B) GT constExpr(C). { A = negate(binopConcat(B, "<=", C)); } -logicExpr(A) ::= constExpr(B) GT nonConstExpr(C). { A = negate(binopConcat(B, "<=", C)); } -logicExpr(A) ::= nonConstExpr(B) GT constExpr(C). { A = negate(binopConcat(B, "<=", C)); } -logicExpr(A) ::= nonConstExpr(B) GT nonConstExpr(C). { A = negate(binopConcat(B, "<=", C)); } - -logicExpr(A) ::= nonConstExpr(B). { A = B; } -logicExpr(A) ::= logicExpr(B) LAND logicExpr(C). { + // Generate data! + A->type = TOKEN_LAND; + A->subToken[0] = B; + A->subToken[1] = C; + + std::stringstream ss; + ss << "EUDSCAnd()"; + shortCircuitCondListGetter(ss, A, TOKEN_LAND); + ss << "()"; + A->data = ss.str(); +} +logicAndExpr(A) ::= constCompExpr(B) LAND compExpr(C). { A = genEmpty(); A->line = C->line; @@ -834,8 +928,10 @@ logicExpr(A) ::= logicExpr(B) LAND logicExpr(C). { A->data = ss.str(); } +constLogicExpr(A) ::= constLogicAndExpr(B). { A = B; } +logicExpr(A) ::= logicAndExpr(B). { A = B; } // OR operation is very costly, so we make some deliberate choice! -logicExpr(A) ::= logicExpr(B) LOR logicExpr(C). { +logicExpr(A) ::= logicExpr(B) LOR logicAndExpr(C). { A = genEmpty(); A->line = C->line; @@ -850,8 +946,36 @@ logicExpr(A) ::= logicExpr(B) LOR logicExpr(C). { ss << "()"; A->data = ss.str(); } +logicExpr(A) ::= logicExpr(B) LOR constLogicExpr(C). { + A = genEmpty(); + A->line = C->line; -logicExpr(A) ::= LNOT logicExpr(B). { A = negate(B); } + // Generate data! + A->type = TOKEN_LOR; + A->subToken[0] = B; + A->subToken[1] = C; + + std::stringstream ss; + ss << "EUDSCOr()"; + shortCircuitCondListGetter(ss, A, TOKEN_LOR); + ss << "()"; + A->data = ss.str(); +} +logicExpr(A) ::= constLogicAndExpr(B) LOR logicAndExpr(C). { + A = genEmpty(); + A->line = C->line; + + // Generate data! + A->type = TOKEN_LOR; + A->subToken[0] = B; + A->subToken[1] = C; + + std::stringstream ss; + ss << "EUDSCOr()"; + shortCircuitCondListGetter(ss, A, TOKEN_LOR); + ss << "()"; + A->data = ss.str(); +} // Statements diff --git a/eudplib/epscript/cpp/parser/epparser.out b/eudplib/epscript/cpp/parser/epparser.out index b1e00db4..2397b287 100644 --- a/eudplib/epscript/cpp/parser/epparser.out +++ b/eudplib/epscript/cpp/parser/epparser.out @@ -12,7 +12,7 @@ State 0: VAR reduce 1 CONST reduce 1 program accept - chunks shift 18 + chunks shift 84 State 1: lbracket ::= * LBRACKET @@ -20,7 +20,7 @@ State 1: blockStmt ::= * lbracket error RBRACKET blockStmt ::= lbracket * error RBRACKET blockStmtSub ::= * lbracket - (39) blockStmtSub ::= lbracket * + (45) blockStmtSub ::= lbracket * blockStmtSub ::= * lbracket bodyStmtList blockStmtSub ::= lbracket * bodyStmtList bodyStmt ::= * blockStmt @@ -45,72 +45,20 @@ State 1: bodyStmtList ::= * bodyStmtList bodyStmt bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -175,90 +123,77 @@ State 1: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - RBRACKET reduce 39 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 540 - vdef_stmt shift 539 - blockStmt shift 190 - bodyStmt shift 313 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + RBRACKET reduce 45 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 595 + vdef_stmt shift 594 + blockStmt shift 204 + bodyStmt shift 348 lbracket shift 1 - blockStmtSub shift 156 + blockStmtSub shift 170 bodyStmtList shift 17 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 2: method_chunk ::= method_header * stmt @@ -288,72 +223,20 @@ State 2: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -418,89 +301,76 @@ State 2: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 366 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 403 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 3: fdef_chunk ::= fdef_header * stmt @@ -530,72 +400,20 @@ State 3: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -660,89 +478,76 @@ State 3: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 344 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 374 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 4: stmt ::= * error SEMICOLON @@ -771,72 +576,20 @@ State 4: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -902,89 +655,76 @@ State 4: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 157 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 171 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 5: stmt ::= * error SEMICOLON @@ -1013,72 +753,20 @@ State 5: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -1144,89 +832,76 @@ State 5: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 164 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 178 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 6: stmt ::= * error SEMICOLON @@ -1255,72 +930,20 @@ State 6: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -1386,89 +1009,76 @@ State 6: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 165 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 179 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 7: stmt ::= * error SEMICOLON @@ -1497,72 +1107,20 @@ State 7: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -1628,89 +1186,76 @@ State 7: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 166 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 180 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 8: stmt ::= * error SEMICOLON @@ -1739,72 +1284,20 @@ State 8: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -1870,89 +1363,76 @@ State 8: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 168 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 182 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 9: stmt ::= * error SEMICOLON @@ -1981,72 +1461,20 @@ State 9: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2112,89 +1540,76 @@ State 9: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 169 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 183 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 10: stmt ::= * error SEMICOLON @@ -2223,72 +1638,20 @@ State 10: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2354,89 +1717,76 @@ State 10: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 171 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 185 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 11: stmt ::= * error SEMICOLON @@ -2465,72 +1815,20 @@ State 11: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2596,89 +1894,76 @@ State 11: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 172 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 186 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 12: stmt ::= * error SEMICOLON @@ -2707,73 +1992,21 @@ State 12: bodyStmt ::= * break_stmt SEMICOLON bodyStmt ::= * return_stmt SEMICOLON nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt constExpr ::= lambdaExprStart * stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -2838,89 +2071,76 @@ State 12: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 541 - vdef_stmt shift 539 - blockStmt shift 190 - stmt shift 222 - bodyStmt shift 194 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 596 + vdef_stmt shift 594 + blockStmt shift 204 + stmt shift 232 + bodyStmt shift 208 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 13: lbracket ::= * LBRACKET @@ -2949,72 +2169,20 @@ State 13: bodyStmtList ::= bodyStmtList * bodyStmt bodyStmtList ::= bodyStmtList * error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3054,7 +2222,7 @@ State 13: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (234) case_chunk ::= case_clause bodyStmtList * + (274) case_chunk ::= case_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3080,91 +2248,78 @@ State 13: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - RBRACKET reduce 234 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - CASE reduce 234 - DEFAULT reduce 234 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 315 - vdef_stmt shift 539 - blockStmt shift 190 - bodyStmt shift 316 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + RBRACKET reduce 274 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + CASE reduce 274 + DEFAULT reduce 274 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 350 + vdef_stmt shift 594 + blockStmt shift 204 + bodyStmt shift 351 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 14: lbracket ::= * LBRACKET @@ -3194,72 +2349,20 @@ State 14: bodyStmtList ::= * bodyStmtList bodyStmt bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3299,7 +2402,7 @@ State 14: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (233) case_chunk ::= case_clause * + (273) case_chunk ::= case_clause * case_chunk ::= case_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -3326,91 +2429,78 @@ State 14: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - RBRACKET reduce 233 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - CASE reduce 233 - DEFAULT reduce 233 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - vdef_stmt shift 539 - blockStmt shift 190 - bodyStmt shift 313 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + RBRACKET reduce 273 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + CASE reduce 273 + DEFAULT reduce 273 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + vdef_stmt shift 594 + blockStmt shift 204 + bodyStmt shift 348 lbracket shift 1 - blockStmtSub shift 156 + blockStmtSub shift 170 bodyStmtList shift 13 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 15: lbracket ::= * LBRACKET @@ -3439,72 +2529,20 @@ State 15: bodyStmtList ::= bodyStmtList * bodyStmt bodyStmtList ::= bodyStmtList * error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3544,7 +2582,7 @@ State 15: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (239) default_chunk ::= default_clause bodyStmtList * + (279) default_chunk ::= default_clause bodyStmtList * switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks switchcase_block ::= * switchcase_header RPAREN LBRACKET @@ -3570,89 +2608,76 @@ State 15: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - RBRACKET reduce 239 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 315 - vdef_stmt shift 539 - blockStmt shift 190 - bodyStmt shift 316 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + RBRACKET reduce 279 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 350 + vdef_stmt shift 594 + blockStmt shift 204 + bodyStmt shift 351 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 16: lbracket ::= * LBRACKET @@ -3682,72 +2707,20 @@ State 16: bodyStmtList ::= * bodyStmtList bodyStmt bodyStmtList ::= * bodyStmtList error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -3787,7 +2760,7 @@ State 16: if_stmt ::= * if_block if_stmt ::= * if_block else_header stmt switchcase_header ::= * SWITCHCASE LPAREN expr - (238) default_chunk ::= default_clause * + (278) default_chunk ::= default_clause * default_chunk ::= default_clause * bodyStmtList switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= * switchcase_header RPAREN LBRACKET case_chunks @@ -3814,89 +2787,76 @@ State 16: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - RBRACKET reduce 238 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - vdef_stmt shift 539 - blockStmt shift 190 - bodyStmt shift 313 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + RBRACKET reduce 278 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + vdef_stmt shift 594 + blockStmt shift 204 + bodyStmt shift 348 lbracket shift 1 - blockStmtSub shift 156 + blockStmtSub shift 170 bodyStmtList shift 15 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 17: lbracket ::= * LBRACKET @@ -3904,7 +2864,7 @@ State 17: blockStmt ::= * lbracket error RBRACKET blockStmtSub ::= * lbracket blockStmtSub ::= * lbracket bodyStmtList - (40) blockStmtSub ::= lbracket bodyStmtList * + (46) blockStmtSub ::= lbracket bodyStmtList * bodyStmt ::= * blockStmt bodyStmt ::= * SEMICOLON bodyStmt ::= * vdef_stmt SEMICOLON @@ -3926,72 +2886,20 @@ State 17: bodyStmtList ::= bodyStmtList * bodyStmt bodyStmtList ::= bodyStmtList * error nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * LNOT nonConstExpr vdef_stmt ::= * VAR nameList_nonEmpty vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty vdefAssignStatic_stmt ::= * STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty @@ -4056,154 +2964,78 @@ State 17: constActionList ::= * constActionList constAction actionStmt ::= * constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON actionStmt ::= * constActionList - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON shift 189 - NAME shift 329 - FUNCTION shift 542 - LBRACKET shift 318 - VAR shift 154 - RBRACKET reduce 40 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - STATIC shift 496 - CONST shift 152 - INC shift 86 - DEC shift 85 - ONCE shift 325 - IF shift 493 - SWITCHCASE shift 485 - WHILE shift 480 - FOR shift 476 - FOREACH shift 471 - CONTINUE shift 468 - BREAK shift 467 - RETURN shift 30 - ACTIONNAME shift 465 - error shift 315 - vdef_stmt shift 539 - blockStmt shift 190 - bodyStmt shift 316 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON shift 203 + NAME shift 367 + LBRACKET shift 353 + VAR shift 168 + RBRACKET reduce 46 + L2V shift 580 + STATIC shift 547 + CONST shift 166 + INC shift 134 + DEC shift 133 + ONCE shift 361 + IF shift 544 + SWITCHCASE shift 536 + WHILE shift 531 + FOR shift 527 + FOREACH shift 522 + CONTINUE shift 519 + BREAK shift 518 + RETURN shift 25 + ACTIONNAME shift 516 + error shift 350 + vdef_stmt shift 594 + blockStmt shift 204 + bodyStmt shift 351 lbracket shift 1 - blockStmtSub shift 156 - vdefAssignStatic_stmt shift 538 - vdefAssign_stmt shift 537 - cdef_stmt shift 536 - assign_stmt shift 535 - funcexprStmt shift 534 - actionStmt shift 182 - once_stmt shift 181 - if_stmt shift 180 - while_stmt shift 179 - for_stmt shift 178 - foreach_stmt shift 177 - switchcase_stmt shift 176 - continue_stmt shift 533 - break_stmt shift 532 - return_stmt shift 531 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 - lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - once_start shift 324 - once_header shift 494 - once_block shift 170 + blockStmtSub shift 170 + vdefAssignStatic_stmt shift 593 + vdefAssign_stmt shift 592 + cdef_stmt shift 591 + assign_stmt shift 590 + funcexprStmt shift 589 + actionStmt shift 196 + once_stmt shift 195 + if_stmt shift 194 + while_stmt shift 193 + for_stmt shift 192 + foreach_stmt shift 191 + switchcase_stmt shift 190 + continue_stmt shift 588 + break_stmt shift 587 + return_stmt shift 586 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + once_start shift 360 + once_header shift 545 + once_block shift 184 once_nocond shift 10 - if_start shift 492 - if_header shift 490 - if_block shift 115 - switchcase_header shift 483 - switchcase_block shift 481 - while_start shift 479 - while_header shift 477 - for_opener shift 19 - for_header1 shift 47 - for_header2 shift 27 - for_header shift 472 - foreach_opener shift 151 - foreach_header shift 469 - constAction shift 160 - constActionList shift 142 + if_start shift 543 + if_header shift 541 + if_block shift 130 + switchcase_header shift 534 + switchcase_block shift 532 + while_start shift 530 + while_header shift 528 + for_opener shift 97 + for_header1 shift 42 + for_header2 shift 108 + for_header shift 523 + foreach_opener shift 165 + foreach_header shift 520 + constAction shift 174 + constActionList shift 156 State 18: - (0) program ::= chunks * - chunks ::= chunks * chunk - chunks ::= chunks * error - chunk ::= * import_chunk - chunk ::= * fdef_chunk - chunk ::= * fdecl_chunk - chunk ::= * object_chunk - chunk ::= * vdef_stmt SEMICOLON - chunk ::= * vdefAssign_global_stmt SEMICOLON - chunk ::= * cdef_global_stmt SEMICOLON - chunk ::= * blockStmt - relimp_start ::= * IMPORT PERIOD - relimp_start ::= * relimp_start PERIOD - relimp_path ::= * relimp_start NAME - relimp_path ::= * relimp_path PERIOD NAME - import_chunk ::= * relimp_path SEMICOLON - import_chunk ::= * relimp_path AS NAME SEMICOLON - absimp_start ::= * IMPORT NAME - absimp_start ::= * absimp_start PERIOD NAME - import_chunk ::= * absimp_start AS NAME SEMICOLON - import_chunk ::= * absimp_start SEMICOLON - fdef_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes - fdef_chunk ::= * fdef_header stmt - fdecl_chunk ::= * FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON - object_body ::= * OBJECT NAME LBRACKET - object_body ::= * object_body VAR typedNameList_nonEmpty SEMICOLON - object_body ::= * object_body method_chunk - object_chunk ::= * object_body RBRACKET SEMICOLON - lbracket ::= * LBRACKET - blockStmt ::= * blockStmtSub rbracket - blockStmt ::= * lbracket error RBRACKET - blockStmtSub ::= * lbracket - blockStmtSub ::= * lbracket bodyStmtList - vdef_stmt ::= * VAR nameList_nonEmpty - vdefAssign_global_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - cdef_global_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty - - $ reduce 0 - IMPORT shift 446 - FUNCTION shift 550 - OBJECT shift 453 - LBRACKET shift 318 - VAR shift 150 - CONST shift 149 - error shift 358 - chunk shift 359 - import_chunk shift 357 - fdef_chunk shift 356 - fdecl_chunk shift 355 - object_chunk shift 354 - vdef_stmt shift 559 - vdefAssign_global_stmt shift 558 - cdef_global_stmt shift 557 - blockStmt shift 350 - relimp_start shift 444 - relimp_path shift 394 - absimp_start shift 392 - fdef_header shift 3 - object_body shift 139 - lbracket shift 1 - blockStmtSub shift 156 - -State 19: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -4214,10 +3046,24 @@ State 19: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt + fNonConstArg ::= * logicExpr + fConstArg ::= * constLogicExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fConstArgs_nonEmpty ::= * fConstArg + fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg + fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fArgs_nonEmpty ::= * fConstArgs_nonEmpty + fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty + (109) fArgs ::= * + fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -4227,121 +3073,166 @@ State 19: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - vdef_stmt ::= * VAR nameList_nonEmpty - vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_init_stmt_nonEmpty ::= * vdef_stmt - for_init_stmt_nonEmpty ::= * vdefAssign_stmt - for_init_stmt_nonEmpty ::= * cdef_stmt - for_init_stmt_nonEmpty ::= * assign_stmt - for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty - for_init_stmt ::= * for_init_stmt_nonEmpty - (254) for_init_stmt ::= * - for_header1 ::= for_opener * for_init_stmt SEMICOLON + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON reduce 254 - NAME shift 329 - FUNCTION shift 542 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - CONST shift 152 - INC shift 86 - DEC shift 85 - ACTIONNAME shift 504 - vdef_stmt shift 419 - vdefAssign_stmt shift 418 - cdef_stmt shift 417 - assign_stmt shift 416 - funcexpr shift 309 - nonConstExpr shift 342 - constExpr shift 339 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + RPAREN reduce 109 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - for_init_stmt_nonEmpty shift 415 - for_init_stmt shift 475 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 482 + fConstArg shift 486 + fConstArgs_nonEmpty shift 485 + fNonConstArgs_nonEmpty shift 481 + fArgs_nonEmpty shift 555 + fArgs shift 554 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 20: +State 19: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -4353,7 +3244,7 @@ State 20: lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr + fConstArg ::= * constLogicExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr fConstArg ::= * NAME ASSIGN STRING @@ -4364,12 +3255,12 @@ State 20: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (103) fArgs ::= * + (109) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -4380,116 +3271,165 @@ State 20: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN - actionStmt ::= ACTIONNAME LPAREN * fNonConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - RPAREN shift 462 - RPAREN reduce 103 -- dropped by precedence - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + RPAREN reduce 109 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 406 - fNonConstArgs_nonEmpty shift 405 - fArgs_nonEmpty shift 503 - fArgs shift 502 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 482 + fConstArg shift 486 + fConstArgs_nonEmpty shift 485 + fNonConstArgs_nonEmpty shift 481 + fArgs_nonEmpty shift 555 + fArgs shift 553 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 21: +State 20: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -4501,7 +3441,7 @@ State 21: lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr + fConstArg ::= * constLogicExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr fConstArg ::= * NAME ASSIGN STRING @@ -4512,12 +3452,13 @@ State 21: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (103) fArgs ::= * + (109) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -4528,112 +3469,164 @@ State 21: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - constExpr ::= ACTIONNAME LPAREN * fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - RPAREN reduce 103 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + RPAREN reduce 109 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 503 - fArgs shift 502 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 482 + fConstArg shift 486 + fConstArgs_nonEmpty shift 485 + fNonConstArgs_nonEmpty shift 481 + fArgs_nonEmpty shift 555 + fArgs shift 551 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 22: +State 21: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -4645,7 +3638,7 @@ State 22: lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr + fConstArg ::= * constLogicExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr fConstArg ::= * NAME ASSIGN STRING @@ -4656,12 +3649,13 @@ State 22: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (103) fArgs ::= * + (109) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= NAME LPAREN * fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -4672,112 +3666,164 @@ State 22: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= CONDITIONNAME LPAREN * fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - RPAREN reduce 103 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + RPAREN reduce 109 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 503 - fArgs shift 501 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 482 + fConstArg shift 486 + fConstArgs_nonEmpty shift 485 + fNonConstArgs_nonEmpty shift 481 + fArgs_nonEmpty shift 555 + fArgs shift 506 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 23: +State 22: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -4789,7 +3835,7 @@ State 23: lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr + fConstArg ::= * constLogicExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr fConstArg ::= * NAME ASSIGN STRING @@ -4800,13 +3846,12 @@ State 23: fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg fArgs_nonEmpty ::= * fConstArgs_nonEmpty fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (103) fArgs ::= * + (109) fArgs ::= * fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - funcexpr ::= nonConstExpr LPAREN * fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -4817,111 +3862,165 @@ State 23: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN + logicExpr ::= KILLS LPAREN * fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - RPAREN reduce 103 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + RPAREN reduce 109 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 503 - fArgs shift 498 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 482 + fConstArg shift 486 + fConstArgs_nonEmpty shift 485 + fNonConstArgs_nonEmpty shift 481 + fArgs_nonEmpty shift 555 + fArgs shift 505 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 24: +State 23: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -4933,7 +4032,7 @@ State 24: lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr + fConstArg ::= * constLogicExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr fConstArg ::= * NAME ASSIGN STRING @@ -4942,15 +4041,10 @@ State 24: fNonConstArgs_nonEmpty ::= * fNonConstArg fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg - fArgs_nonEmpty ::= * fConstArgs_nonEmpty - fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (103) fArgs ::= * - fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= NAME LPAREN * fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -4961,111 +4055,165 @@ State 24: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN + constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON + actionStmt ::= constActionList ACTIONNAME LPAREN * fNonConstArgs_nonEmpty RPAREN SEMICOLON constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - RPAREN reduce 103 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + RPAREN shift 513 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 503 - fArgs shift 455 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 482 + fConstArg shift 486 + fConstArgs_nonEmpty shift 454 + fNonConstArgs_nonEmpty shift 452 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 25: +State 24: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -5077,7 +4225,7 @@ State 25: lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr + fConstArg ::= * constLogicExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr fConstArg ::= * NAME ASSIGN STRING @@ -5086,14 +4234,10 @@ State 25: fNonConstArgs_nonEmpty ::= * fNonConstArg fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg - fArgs_nonEmpty ::= * fConstArgs_nonEmpty - fArgs_nonEmpty ::= * fNonConstArgs_nonEmpty - (103) fArgs ::= * - fArgs ::= * fArgs_nonEmpty funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -5104,113 +4248,171 @@ State 25: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN - logicExpr ::= KILLS LPAREN * fArgs RPAREN + actionStmt ::= ACTIONNAME LPAREN * fNonConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - RPAREN reduce 103 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + RPAREN shift 513 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 435 - fNonConstArgs_nonEmpty shift 431 - fArgs_nonEmpty shift 503 - fArgs shift 454 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 482 + fConstArg shift 486 + fConstArgs_nonEmpty shift 454 + fNonConstArgs_nonEmpty shift 453 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 26: +State 25: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr + (82) exprList ::= * + exprList ::= * exprList_nonEmpty constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -5220,10 +4422,12 @@ State 26: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt + expr ::= * constLogicExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -5233,117 +4437,162 @@ State 26: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - vdef_stmt ::= * VAR nameList_nonEmpty - vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_init_stmt_nonEmpty ::= * vdef_stmt - for_init_stmt_nonEmpty ::= * vdefAssign_stmt - for_init_stmt_nonEmpty ::= * cdef_stmt - for_init_stmt_nonEmpty ::= * assign_stmt - for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty - for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + return_stmt ::= RETURN * exprList + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 329 - FUNCTION shift 542 - VAR shift 154 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - CONST shift 152 - INC shift 86 - DEC shift 85 - ACTIONNAME shift 504 - vdef_stmt shift 419 - vdefAssign_stmt shift 418 - cdef_stmt shift 417 - assign_stmt shift 416 - funcexpr shift 309 - nonConstExpr shift 342 - constExpr shift 339 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + SEMICOLON reduce 82 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 455 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + exprList shift 517 + constExpr shift 242 lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - for_init_stmt_nonEmpty shift 414 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 27: +State 26: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -5354,11 +4603,18 @@ State 27: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexprStmt ::= * funcexpr + fNonConstArg ::= * logicExpr + fConstArg ::= * constLogicExpr + fConstArg ::= * STRING + fConstArg ::= * NAME ASSIGN expr + fConstArg ::= * NAME ASSIGN STRING + fArg ::= * fConstArg + fArg ::= * fNonConstArg + fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -5368,112 +4624,161 @@ State 27: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_action_stmt_nonEmpty ::= * funcexprStmt - for_action_stmt_nonEmpty ::= * assign_stmt - for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty - (258) for_action_stmt ::= * - for_action_stmt ::= * for_action_stmt_nonEmpty - for_header ::= for_header2 * for_action_stmt + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 329 - FUNCTION shift 542 - RPAREN reduce 258 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - INC shift 86 - DEC shift 85 - ACTIONNAME shift 504 - assign_stmt shift 412 - funcexprStmt shift 413 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - for_action_stmt_nonEmpty shift 411 - for_action_stmt shift 473 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 479 + fConstArg shift 480 + fArg shift 478 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 -State 28: +State 27: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -5485,19 +4790,16 @@ State 28: lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr + fConstArg ::= * constLogicExpr fConstArg ::= * STRING fConstArg ::= * NAME ASSIGN expr fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= * fConstArg - fConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= * fConstArgs_nonEmpty COMMA fNonConstArg - fNonConstArgs_nonEmpty ::= * fNonConstArgs_nonEmpty COMMA fArg + fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fConstArg + fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fNonConstArg funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -5508,113 +4810,345 @@ State 28: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 354 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + STRING shift 487 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 + lambdaExprStart shift 12 + constLogicExpr shift 488 + logicExpr shift 399 + fNonConstArg shift 483 + fConstArg shift 484 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 + +State 28: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr + constExpr ::= * NUMBER + constExpr ::= * KILLS + constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + expr ::= * constLogicExpr + expr ::= * logicExpr + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm + constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr + constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr + constExpr ::= * BITNOT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN - constAction ::= ACTIONNAME LPAREN * fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= ACTIONNAME LPAREN * RPAREN SEMICOLON - actionStmt ::= constActionList ACTIONNAME LPAREN * fNonConstArgs_nonEmpty RPAREN SEMICOLON constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - RPAREN shift 462 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 446 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 432 - fConstArg shift 436 - fConstArgs_nonEmpty shift 404 - fNonConstArgs_nonEmpty shift 403 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 29: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -5624,11 +5158,12 @@ State 29: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexprStmt ::= * funcexpr + expr ::= * constLogicExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -5638,114 +5173,164 @@ State 29: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - lvalueList_nonEmpty ::= * lvalue - lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue - assign_stmt ::= * lvalue ASSIGN expr - assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty - assign_stmt ::= * INC lvalue - assign_stmt ::= * lvalue INC - assign_stmt ::= * DEC lvalue - assign_stmt ::= * lvalue DEC - assign_stmt ::= * lvalue IADD expr - assign_stmt ::= * lvalue ISUB expr - assign_stmt ::= * lvalue IMUL expr - assign_stmt ::= * lvalue IDIV expr - assign_stmt ::= * lvalue IMOD expr - assign_stmt ::= * lvalue ILSH expr - assign_stmt ::= * lvalue IRSH expr - assign_stmt ::= * lvalue IBND expr - assign_stmt ::= * lvalue IBOR expr - assign_stmt ::= * lvalue IBXR expr - for_action_stmt_nonEmpty ::= * funcexprStmt - for_action_stmt_nonEmpty ::= * assign_stmt - for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty - for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA * for_action_stmt_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty + logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN + logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 329 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - INC shift 86 - DEC shift 85 - ACTIONNAME shift 504 - assign_stmt shift 412 - funcexprStmt shift 413 - funcexpr shift 338 - nonConstExpr shift 342 - constExpr shift 339 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 448 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - lvalue shift 341 - lvalueList_nonEmpty shift 422 - for_action_stmt_nonEmpty shift 410 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 30: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr - (76) exprList ::= * - exprList ::= * exprList_nonEmpty constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -5755,12 +5340,12 @@ State 30: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -5771,109 +5356,163 @@ State 30: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - return_stmt ::= RETURN * exprList + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + foreach_header ::= foreach_opener nameList_nonEmpty COLON * exprList_nonEmpty logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - SEMICOLON reduce 76 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 407 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - exprList shift 466 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 456 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 31: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -5883,18 +5522,12 @@ State 31: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fArg ::= * fConstArg - fArg ::= * fNonConstArg - fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA * fArg + expr ::= * constLogicExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -5905,108 +5538,163 @@ State 31: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + case_clause ::= case_start * exprList_nonEmpty COLON logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 468 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 429 - fConstArg shift 430 - fArg shift 428 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 32: + exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= * expr + exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -6016,17 +5704,12 @@ State 32: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - fNonConstArg ::= * logicExpr - fConstArg ::= * constExpr - fConstArg ::= * STRING - fConstArg ::= * NAME ASSIGN expr - fConstArg ::= * NAME ASSIGN STRING - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA * fNonConstArg + expr ::= * constLogicExpr + expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -6037,104 +5720,157 @@ State 32: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalueList_nonEmpty ASSIGN * exprList_nonEmpty logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 330 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 437 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 335 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 411 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 362 - fNonConstArg shift 433 - fConstArg shift 434 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 33: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6150,12 +5886,12 @@ State 33: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -6166,104 +5902,157 @@ State 33: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + cdef_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 397 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 471 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 34: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6279,12 +6068,12 @@ State 34: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -6295,104 +6084,157 @@ State 34: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 399 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 473 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 35: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6408,12 +6250,12 @@ State 35: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -6424,104 +6266,157 @@ State 35: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - foreach_header ::= foreach_opener nameList_nonEmpty COLON * exprList_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 408 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 475 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 36: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6537,12 +6432,12 @@ State 36: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -6553,104 +6448,157 @@ State 36: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= LIST LPAREN * exprList_nonEmpty commaSkippable RPAREN + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - case_clause ::= case_start * exprList_nonEmpty COLON + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 420 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 160 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 37: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6666,12 +6614,12 @@ State 37: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -6681,105 +6629,158 @@ State 37: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= VARRAY LPAREN * exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalueList_nonEmpty ASSIGN * exprList_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 374 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 161 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 38: exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET @@ -6795,14 +6796,15 @@ State 38: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= LSQBRACKET * exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -6811,106 +6813,159 @@ State 38: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - cdef_stmt ::= CONST nameList_nonEmpty ASSIGN * exprList_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 423 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 162 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 39: + fdef_rettypes ::= COLON * exprList_nonEmpty exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET exprList_nonEmpty ::= * expr @@ -6924,12 +6979,12 @@ State 39: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -6940,110 +6995,160 @@ State 39: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 425 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + exprList_nonEmpty shift 355 + expr shift 345 + funcexpr shift 223 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 40: - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr + exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -7053,13 +7158,14 @@ State 40: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN + (117) commaSkippable ::= COMMA * constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7069,110 +7175,160 @@ State 40: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN * exprList_nonEmpty + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 427 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + RPAREN reduce 117 + NUMBER shift 268 + RSQBRACKET reduce 117 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 347 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 41: - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -7182,12 +7338,14 @@ State 41: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr + fConstArg ::= NAME ASSIGN * expr + fConstArg ::= NAME ASSIGN * STRING funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -7198,110 +7356,159 @@ State 41: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= LIST LPAREN * exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 146 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + STRING shift 449 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 450 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 42: - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -7311,12 +7518,12 @@ State 42: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -7326,111 +7533,160 @@ State 42: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= VARRAY LPAREN * exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + for_header2 ::= for_header1 * expr SEMICOLON logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 147 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 525 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 43: - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -7440,15 +7696,14 @@ State 43: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - constExpr ::= LSQBRACKET * exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -7457,110 +7712,159 @@ State 43: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + while_header ::= while_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 148 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 529 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 44: - fdef_rettypes ::= COLON * exprList_nonEmpty - exprList_nonEmpty ::= * funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= * expr - exprList_nonEmpty ::= * exprList_nonEmpty COMMA expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -7570,12 +7874,12 @@ State 44: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -7586,107 +7890,159 @@ State 44: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + switchcase_header ::= SWITCHCASE LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - exprList_nonEmpty shift 319 - expr shift 310 - funcexpr shift 293 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 535 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 45: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -7696,14 +8052,13 @@ State 45: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - (111) commaSkippable ::= COMMA * constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -7713,104 +8068,156 @@ State 45: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + elif_header ::= elif_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - RPAREN reduce 111 - NUMBER shift 307 - RSQBRACKET reduce 111 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 312 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 538 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 46: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -7823,14 +8230,12 @@ State 46: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr - fConstArg ::= NAME ASSIGN * expr - fConstArg ::= NAME ASSIGN * STRING funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -7841,103 +8246,156 @@ State 46: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + if_header ::= if_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - STRING shift 400 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 401 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 542 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 47: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -7950,12 +8408,12 @@ State 47: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -7966,103 +8424,156 @@ State 47: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - for_header2 ::= for_header1 * expr SEMICOLON + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + once_header ::= once_start LPAREN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 474 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 546 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 48: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8075,12 +8586,12 @@ State 48: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -8091,103 +8602,156 @@ State 48: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - while_header ::= while_start LPAREN * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue IBXR * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 478 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 412 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 49: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8200,12 +8764,12 @@ State 49: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -8216,103 +8780,156 @@ State 49: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - switchcase_header ::= SWITCHCASE LPAREN * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue IBOR * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 484 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 413 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 50: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8325,12 +8942,12 @@ State 50: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -8341,103 +8958,156 @@ State 50: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - elif_header ::= elif_start LPAREN * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue IBND * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 487 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 414 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 51: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8450,12 +9120,12 @@ State 51: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -8466,103 +9136,156 @@ State 51: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - if_header ::= if_start LPAREN * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue IRSH * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 491 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 415 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 52: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8575,12 +9298,12 @@ State 52: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -8591,103 +9314,156 @@ State 52: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - once_header ::= once_start LPAREN * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue ILSH * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 495 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 416 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 53: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8700,12 +9476,12 @@ State 53: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -8716,103 +9492,156 @@ State 53: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBXR * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue IMOD * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 375 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 417 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 54: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8825,12 +9654,12 @@ State 54: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -8841,103 +9670,156 @@ State 54: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBOR * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue IDIV * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 376 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 418 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 55: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -8950,12 +9832,12 @@ State 55: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -8966,103 +9848,156 @@ State 55: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IBND * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue IMUL * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 377 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 419 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 56: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9075,12 +10010,12 @@ State 56: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -9091,103 +10026,156 @@ State 56: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IRSH * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue ISUB * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 378 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 420 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 57: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9200,12 +10188,12 @@ State 57: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -9216,103 +10204,156 @@ State 57: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ILSH * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue IADD * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 379 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 421 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 58: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9325,12 +10366,12 @@ State 58: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -9341,103 +10382,156 @@ State 58: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IMOD * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + assign_stmt ::= lvalue ASSIGN * expr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 380 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 424 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 59: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9450,12 +10544,12 @@ State 59: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -9466,103 +10560,156 @@ State 59: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + logicExpr ::= logicExpr QMARK expr COLON * expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IDIV * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 381 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 337 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 60: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9575,15 +10722,16 @@ State 60: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= L2V LPAREN * expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN @@ -9591,103 +10739,155 @@ State 60: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IMUL * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 382 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 579 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 61: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9700,12 +10900,12 @@ State 61: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -9716,103 +10916,156 @@ State 61: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + logicExpr ::= logicExpr QMARK * expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ISUB * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 383 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 549 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 62: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -9823,14 +11076,15 @@ State 62: nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + nonConstExpr ::= nonConstExpr LSQBRACKET * expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -9841,105 +11095,159 @@ State 62: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue IADD * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr + lvalue ::= nonConstExpr LSQBRACKET * expr RSQBRACKET logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 384 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 585 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 63: + typedName ::= NAME COLON * expr nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -9950,12 +11258,12 @@ State 63: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -9966,103 +11274,155 @@ State 63: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - assign_stmt ::= lvalue ASSIGN * expr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 387 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 431 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 64: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10073,14 +11433,15 @@ State 64: nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + nonConstExpr ::= nonConstExpr LSQBRACKET * expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -10091,106 +11452,159 @@ State 64: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - nonConstExpr ::= nonConstExpr QMARK expr COLON * expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 228 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 598 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 65: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -10200,12 +11614,12 @@ State 65: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr + expr ::= * constLogicExpr expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -10216,103 +11630,155 @@ State 65: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - nonConstExpr ::= nonConstExpr BITXOR * expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 269 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + expr shift 347 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 344 + logicExpr shift 343 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 66: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10325,13 +11791,13 @@ State 66: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN + constExpr ::= LPAREN * constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= LPAREN * logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10341,103 +11807,154 @@ State 66: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - nonConstExpr ::= nonConstExpr BITOR * expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 270 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 584 + logicExpr shift 429 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 341 + logicAndExpr shift 316 State 67: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10450,13 +11967,12 @@ State 67: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= LPAREN * logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -10466,103 +11982,152 @@ State 67: constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - nonConstExpr ::= nonConstExpr BITAND * expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + logicExpr ::= * logicExpr QMARK expr COLON expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + logicExpr ::= * logicAndExpr + logicExpr ::= * logicExpr LOR logicAndExpr + logicExpr ::= * logicExpr LOR constLogicExpr + logicExpr ::= * constLogicAndExpr LOR logicAndExpr logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN logicExpr ::= * KILLS LPAREN fArgs RPAREN constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 271 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 267 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + LIST shift 561 + CONDITIONNAME shift 556 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + logicExpr shift 429 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 558 + logicAndExpr shift 316 State 68: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10575,12 +12140,10 @@ State 68: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -10590,104 +12153,146 @@ State 68: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - nonConstExpr ::= nonConstExpr RSHIFT * expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + constLogicAndExpr ::= * constCompExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + constLogicExpr ::= * constLogicAndExpr + logicExpr ::= logicExpr LOR * logicAndExpr + logicExpr ::= logicExpr LOR * constLogicExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 272 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constLogicExpr shift 338 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 319 + compExpr shift 317 + constLogicAndExpr shift 339 + logicAndExpr shift 312 State 69: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10700,12 +12305,10 @@ State 69: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -10715,104 +12318,141 @@ State 69: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - nonConstExpr ::= nonConstExpr LSHIFT * expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + logicAndExpr ::= * compExpr + logicAndExpr ::= * logicAndExpr LAND compExpr + logicAndExpr ::= * logicAndExpr LAND constCompExpr + logicAndExpr ::= * constCompExpr LAND compExpr + logicExpr ::= constLogicAndExpr LOR * logicAndExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 273 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 557 + compExpr shift 317 + logicAndExpr shift 313 State 70: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10825,12 +12465,10 @@ State 70: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -10840,104 +12478,137 @@ State 70: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - nonConstExpr ::= nonConstExpr MOD * expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + logicAndExpr ::= logicAndExpr LAND * compExpr + logicAndExpr ::= logicAndExpr LAND * constCompExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 275 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 311 + eqExpr shift 310 + constCompExpr shift 314 + compExpr shift 315 State 71: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -10950,12 +12621,10 @@ State 71: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -10965,104 +12634,130 @@ State 71: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - nonConstExpr ::= nonConstExpr DIVIDE * expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= * eqExpr + compExpr ::= * constEqExpr LE eqExpr + compExpr ::= * eqExpr LE constEqExpr + compExpr ::= * eqExpr LE eqExpr + compExpr ::= * constEqExpr GE eqExpr + compExpr ::= * eqExpr GE constEqExpr + compExpr ::= * eqExpr GE eqExpr + compExpr ::= * constEqExpr LT eqExpr + compExpr ::= * eqExpr LT constEqExpr + compExpr ::= * eqExpr LT eqExpr + compExpr ::= * constEqExpr GT eqExpr + compExpr ::= * eqExpr GT constEqExpr + compExpr ::= * eqExpr GT eqExpr + logicAndExpr ::= constCompExpr LAND * compExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 277 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 397 + eqExpr shift 310 + compExpr shift 318 State 72: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11075,12 +12770,10 @@ State 72: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -11090,104 +12783,117 @@ State 72: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - nonConstExpr ::= nonConstExpr MULTIPLY * expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= eqExpr GT * constEqExpr + compExpr ::= eqExpr GT * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 279 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 321 + eqExpr shift 320 State 73: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11200,12 +12906,10 @@ State 73: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -11215,104 +12919,117 @@ State 73: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - nonConstExpr ::= nonConstExpr MINUS * expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= eqExpr LT * constEqExpr + compExpr ::= eqExpr LT * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 281 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 323 + eqExpr shift 322 State 74: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11325,12 +13042,10 @@ State 74: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -11340,104 +13055,117 @@ State 74: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - nonConstExpr ::= nonConstExpr PLUS * expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= eqExpr GE * constEqExpr + compExpr ::= eqExpr GE * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 283 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 325 + eqExpr shift 324 State 75: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11450,119 +13178,130 @@ State 75: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - nonConstExpr ::= L2V LPAREN * expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= eqExpr LE * constEqExpr + compExpr ::= eqExpr LE * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 525 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 327 + eqExpr shift 326 State 76: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11575,12 +13314,10 @@ State 76: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -11590,104 +13327,117 @@ State 76: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - nonConstExpr ::= nonConstExpr QMARK * expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= constEqExpr GT * constEqExpr + compExpr ::= constEqExpr GT * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 499 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 329 + eqExpr shift 328 State 77: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11698,15 +13448,12 @@ State 77: nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - nonConstExpr ::= nonConstExpr LSQBRACKET * expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -11716,107 +13463,119 @@ State 77: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - lvalue ::= nonConstExpr LSQBRACKET * expr RSQBRACKET - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= constEqExpr LT * constEqExpr + compExpr ::= constEqExpr LT * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 530 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 331 + eqExpr shift 330 State 78: - typedName ::= NAME COLON * expr nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -11827,12 +13586,10 @@ State 78: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -11842,103 +13599,117 @@ State 78: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= constEqExpr GE * constEqExpr + compExpr ::= constEqExpr GE * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 390 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 333 + eqExpr shift 332 State 79: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -11949,15 +13720,12 @@ State 79: nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - nonConstExpr ::= nonConstExpr LSQBRACKET * expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -11967,107 +13735,120 @@ State 79: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + constCompExpr ::= constEqExpr LE * constEqExpr + compExpr ::= constEqExpr LE * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 543 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 301 + bitOrTerm shift 300 + constEqExpr shift 335 + eqExpr shift 334 State 80: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - exprList_nonEmpty ::= exprList_nonEmpty COMMA * expr constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST @@ -12077,12 +13858,10 @@ State 80: nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - expr ::= * constExpr - expr ::= * logicExpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -12092,103 +13871,112 @@ State 80: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= constEqExpr GT * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - expr shift 312 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 298 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 294 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 426 + bitOrTerm shift 300 + eqExpr shift 328 State 81: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12204,7 +13992,7 @@ State 81: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -12214,103 +14002,112 @@ State 81: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= LNOT * logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= constEqExpr LT * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 340 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 234 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 426 + bitOrTerm shift 300 + eqExpr shift 330 State 82: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12326,7 +14123,7 @@ State 82: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -12336,103 +14133,112 @@ State 82: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= logicExpr LOR * logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= constEqExpr GE * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 340 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 229 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 426 + bitOrTerm shift 300 + eqExpr shift 332 State 83: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -12448,10 +14254,8 @@ State 83: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - constExpr ::= LPAREN * constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - nonConstExpr ::= LPAREN * logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN @@ -12460,104 +14264,183 @@ State 83: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + eqExpr ::= * bitOrTerm + eqExpr ::= * constBitOrTerm EQ bitOrTerm + eqExpr ::= * bitOrTerm EQ constBitOrTerm + eqExpr ::= * bitOrTerm EQ bitOrTerm + eqExpr ::= * constBitOrTerm NE bitOrTerm + eqExpr ::= * bitOrTerm NE constBitOrTerm + eqExpr ::= * bitOrTerm NE bitOrTerm + compExpr ::= constEqExpr LE * eqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 337 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 389 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 426 + bitOrTerm shift 300 + eqExpr shift 334 State 84: + (0) program ::= chunks * + chunks ::= chunks * chunk + chunks ::= chunks * error + chunk ::= * import_chunk + chunk ::= * fdef_chunk + chunk ::= * fdecl_chunk + chunk ::= * object_chunk + chunk ::= * vdef_stmt SEMICOLON + chunk ::= * vdefAssign_global_stmt SEMICOLON + chunk ::= * cdef_global_stmt SEMICOLON + chunk ::= * blockStmt + relimp_start ::= * IMPORT PERIOD + relimp_start ::= * relimp_start PERIOD + relimp_path ::= * relimp_start NAME + relimp_path ::= * relimp_start TRGCONST + relimp_path ::= * relimp_path PERIOD NAME + relimp_path ::= * relimp_path PERIOD TRGCONST + import_chunk ::= * relimp_path SEMICOLON + import_chunk ::= * relimp_path AS NAME SEMICOLON + import_chunk ::= * relimp_path AS TRGCONST SEMICOLON + absimp_start ::= * IMPORT NAME + absimp_start ::= * IMPORT TRGCONST + absimp_start ::= * absimp_start PERIOD NAME + absimp_start ::= * absimp_start PERIOD TRGCONST + import_chunk ::= * absimp_start AS NAME SEMICOLON + import_chunk ::= * absimp_start AS TRGCONST SEMICOLON + import_chunk ::= * absimp_start SEMICOLON + fdef_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes + fdef_chunk ::= * fdef_header stmt + fdecl_chunk ::= * FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON + object_body ::= * OBJECT NAME LBRACKET + object_body ::= * object_body VAR typedNameList_nonEmpty SEMICOLON + object_body ::= * object_body method_chunk + object_chunk ::= * object_body RBRACKET SEMICOLON + lbracket ::= * LBRACKET + blockStmt ::= * blockStmtSub rbracket + blockStmt ::= * lbracket error RBRACKET + blockStmtSub ::= * lbracket + blockStmtSub ::= * lbracket bodyStmtList + vdef_stmt ::= * VAR nameList_nonEmpty + vdefAssign_global_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_global_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty + + $ reduce 0 + IMPORT shift 445 + FUNCTION shift 605 + OBJECT shift 504 + LBRACKET shift 353 + VAR shift 164 + CONST shift 163 + error shift 390 + chunk shift 391 + import_chunk shift 389 + fdef_chunk shift 388 + fdecl_chunk shift 387 + object_chunk shift 386 + vdef_stmt shift 612 + vdefAssign_global_stmt shift 611 + cdef_global_stmt shift 610 + blockStmt shift 382 + relimp_start shift 441 + relimp_path shift 437 + absimp_start shift 434 + fdef_header shift 3 + object_body shift 153 + lbracket shift 1 + blockStmtSub shift 170 + +State 85: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -12571,7 +14454,7 @@ State 84: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -12581,105 +14464,107 @@ State 84: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - logicExpr ::= * LIST LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= * constExpr EQ nonConstExpr - logicExpr ::= * nonConstExpr EQ constExpr - logicExpr ::= * nonConstExpr EQ nonConstExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= * constExpr NE nonConstExpr - logicExpr ::= * nonConstExpr NE constExpr - logicExpr ::= * nonConstExpr NE nonConstExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= * constExpr LE nonConstExpr - logicExpr ::= * nonConstExpr LE constExpr - logicExpr ::= * nonConstExpr LE nonConstExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= * constExpr GE nonConstExpr - logicExpr ::= * nonConstExpr GE constExpr - logicExpr ::= * nonConstExpr GE nonConstExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= * constExpr LT nonConstExpr - logicExpr ::= * nonConstExpr LT constExpr - logicExpr ::= * nonConstExpr LT nonConstExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= * constExpr GT nonConstExpr - logicExpr ::= * nonConstExpr GT constExpr - logicExpr ::= * nonConstExpr GT nonConstExpr - logicExpr ::= * nonConstExpr - logicExpr ::= * logicExpr LAND logicExpr - logicExpr ::= logicExpr LAND * logicExpr - logicExpr ::= * logicExpr LOR logicExpr - logicExpr ::= * LNOT logicExpr - logicExpr ::= * CONDITIONNAME LPAREN fArgs RPAREN - logicExpr ::= * KILLS LPAREN fArgs RPAREN + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + eqExpr ::= bitOrTerm NE * constBitOrTerm + eqExpr ::= bitOrTerm NE * bitOrTerm constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - LNOT shift 81 - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 306 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - LIST shift 507 - CONDITIONNAME shift 505 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 303 - constExpr shift 340 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - logicExpr shift 225 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 303 + bitOrTerm shift 302 -State 85: +State 86: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -12693,7 +14578,7 @@ State 85: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -12703,81 +14588,107 @@ State 85: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - assign_stmt ::= DEC * lvalue + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + eqExpr ::= bitOrTerm EQ * constBitOrTerm + eqExpr ::= bitOrTerm EQ * bitOrTerm constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 329 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 342 - constExpr shift 339 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - lvalue shift 372 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 305 + bitOrTerm shift 304 -State 86: +State 87: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -12791,7 +14702,7 @@ State 86: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -12801,81 +14712,107 @@ State 86: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - assign_stmt ::= INC * lvalue + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= constBitOrTerm NE * constBitOrTerm + eqExpr ::= constBitOrTerm NE * bitOrTerm constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 329 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 342 - constExpr shift 339 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - lvalue shift 373 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 307 + bitOrTerm shift 306 -State 87: +State 88: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -12889,7 +14826,7 @@ State 87: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -12899,100 +14836,105 @@ State 87: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - lvalue ::= * NAME - lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lvalue ::= * nonConstExpr PERIOD NAME - lvalue ::= * nonConstExpr PERIOD TRGCONST - lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA * lvalue + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + constEqExpr ::= constBitOrTerm EQ * constBitOrTerm + eqExpr ::= constBitOrTerm EQ * bitOrTerm constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 329 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 342 - constExpr shift 339 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - lvalue shift 421 - -State 88: - case_start ::= * CASE - case_clause ::= * case_start exprList_nonEmpty COLON - case_chunk ::= * case_clause - case_chunk ::= * case_clause bodyStmtList - case_chunks ::= case_chunks * case_chunk - default_clause ::= * DEFAULT COLON - default_chunk ::= * default_clause - default_chunk ::= * default_clause bodyStmtList - switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * default_chunk - (241) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * - - RBRACKET reduce 241 - CASE shift 334 - DEFAULT shift 459 - case_start shift 36 - case_clause shift 14 - case_chunk shift 371 - default_clause shift 16 - default_chunk shift 458 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 299 + bitXorTerm shift 297 + constBitOrTerm shift 309 + bitOrTerm shift 308 State 89: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13008,7 +14950,7 @@ State 89: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -13018,75 +14960,101 @@ State 89: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - logicExpr ::= nonConstExpr GT * constExpr - logicExpr ::= nonConstExpr GT * nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + eqExpr ::= constBitOrTerm NE * bitOrTerm constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 216 - constExpr shift 196 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 476 + bitXorTerm shift 297 + bitOrTerm shift 306 State 90: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13102,7 +15070,7 @@ State 90: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -13112,75 +15080,101 @@ State 90: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + bitOrTerm ::= * bitXorTerm + bitOrTerm ::= * constBitXorTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR bitXorTerm + bitOrTerm ::= * bitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - logicExpr ::= nonConstExpr LT * constExpr - logicExpr ::= nonConstExpr LT * nonConstExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr + eqExpr ::= constBitOrTerm EQ * bitOrTerm constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 217 - constExpr shift 197 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 476 + bitXorTerm shift 297 + bitOrTerm shift 308 State 91: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13196,7 +15190,7 @@ State 91: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -13206,75 +15200,97 @@ State 91: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + bitOrTerm ::= bitOrTerm BITOR * bitXorTerm + bitOrTerm ::= bitOrTerm BITOR * constBitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - logicExpr ::= nonConstExpr GE * constExpr - logicExpr ::= nonConstExpr GE * nonConstExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 218 - constExpr shift 198 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 293 + bitAndTerm shift 291 + constBitXorTerm shift 295 + bitXorTerm shift 294 State 92: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13290,7 +15306,7 @@ State 92: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -13300,75 +15316,93 @@ State 92: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + bitXorTerm ::= * bitAndTerm + bitXorTerm ::= * constBitAndTerm BITXOR bitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR constBitAndTerm + bitXorTerm ::= * bitXorTerm BITXOR bitAndTerm + bitOrTerm ::= constBitXorTerm BITOR * bitXorTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - logicExpr ::= nonConstExpr LE * constExpr - logicExpr ::= nonConstExpr LE * nonConstExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 219 - constExpr shift 199 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 477 + bitAndTerm shift 291 + bitXorTerm shift 298 State 93: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13384,7 +15418,7 @@ State 93: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -13394,169 +15428,166 @@ State 93: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + bitXorTerm ::= bitXorTerm BITXOR * constBitAndTerm + bitXorTerm ::= bitXorTerm BITXOR * bitAndTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - logicExpr ::= nonConstExpr NE * constExpr - logicExpr ::= nonConstExpr NE * nonConstExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 220 - constExpr shift 200 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 284 + shTerm shift 274 + constBitAndTerm shift 289 + bitAndTerm shift 288 State 94: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr PERIOD TRGCONST - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN + constExpr ::= LPAREN * constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - logicExpr ::= nonConstExpr EQ * constExpr - logicExpr ::= nonConstExpr EQ * nonConstExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + constCompExpr ::= * constEqExpr + constCompExpr ::= * constEqExpr LE constEqExpr + constCompExpr ::= * constEqExpr GE constEqExpr + constCompExpr ::= * constEqExpr LT constEqExpr + constCompExpr ::= * constEqExpr GT constEqExpr + constLogicAndExpr ::= * constCompExpr + constLogicExpr ::= * constLogicAndExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 221 - constExpr shift 201 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constLogicExpr shift 584 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 287 + constBitXorTerm shift 371 + constBitOrTerm shift 372 + constEqExpr shift 393 + constCompExpr shift 552 + constLogicAndExpr shift 339 State 95: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13572,7 +15603,7 @@ State 95: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -13582,75 +15613,85 @@ State 95: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + bitAndTerm ::= * shTerm + bitAndTerm ::= * constShTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND shTerm + bitAndTerm ::= * bitAndTerm BITAND constShTerm + bitXorTerm ::= constBitAndTerm BITXOR * bitAndTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - constExpr ::= constExpr GT * constExpr - logicExpr ::= constExpr GT * nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 237 - constExpr shift 202 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 427 + shTerm shift 274 + bitAndTerm shift 292 State 96: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13666,7 +15707,7 @@ State 96: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -13676,169 +15717,153 @@ State 96: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + bitAndTerm ::= bitAndTerm BITAND * shTerm + bitAndTerm ::= bitAndTerm BITAND * constShTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= constExpr LT * constExpr - logicExpr ::= constExpr LT * nonConstExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 238 - constExpr shift 203 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 286 + constFactor shift 257 + term shift 285 + factor shift 249 + constShTerm shift 271 + shTerm shift 270 State 97: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= constExpr GE * constExpr - logicExpr ::= constExpr GE * nonConstExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + nonConstExpr ::= * LNOT nonConstExpr + vdef_stmt ::= * VAR nameList_nonEmpty + vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_init_stmt_nonEmpty ::= * vdef_stmt + for_init_stmt_nonEmpty ::= * vdefAssign_stmt + for_init_stmt_nonEmpty ::= * cdef_stmt + for_init_stmt_nonEmpty ::= * assign_stmt + for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty + for_init_stmt ::= * for_init_stmt_nonEmpty + (294) for_init_stmt ::= * + for_header1 ::= for_opener * for_init_stmt SEMICOLON - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 239 - constExpr shift 204 - lambdaExprStart shift 12 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + SEMICOLON reduce 294 + NAME shift 367 + VAR shift 168 + L2V shift 580 + CONST shift 166 + INC shift 134 + DEC shift 133 + vdef_stmt shift 467 + vdefAssign_stmt shift 466 + cdef_stmt shift 465 + assign_stmt shift 464 + funcexpr shift 231 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + for_init_stmt_nonEmpty shift 463 + for_init_stmt shift 526 State 98: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -13854,7 +15879,7 @@ State 98: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -13864,545 +15889,412 @@ State 98: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + shTerm ::= * term + shTerm ::= * constTerm RSHIFT term + shTerm ::= * shTerm RSHIFT term + shTerm ::= * shTerm RSHIFT constTerm + shTerm ::= * constTerm LSHIFT term + shTerm ::= * shTerm LSHIFT constTerm + shTerm ::= * shTerm LSHIFT term + bitAndTerm ::= constShTerm BITAND * shTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= constExpr LE * constExpr - logicExpr ::= constExpr LE * nonConstExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 240 - constExpr shift 205 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 398 + constFactor shift 257 + term shift 285 + factor shift 249 + shTerm shift 279 State 99: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr PERIOD TRGCONST - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= constExpr NE * constExpr - logicExpr ::= constExpr NE * nonConstExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + constCompExpr ::= constEqExpr GT * constEqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 241 - constExpr shift 206 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 287 + constBitXorTerm shift 371 + constBitOrTerm shift 372 + constEqExpr shift 329 State 100: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr PERIOD TRGCONST - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= constExpr EQ * constExpr - logicExpr ::= constExpr EQ * nonConstExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + constCompExpr ::= constEqExpr LT * constEqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 242 - constExpr shift 207 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 287 + constBitXorTerm shift 371 + constBitOrTerm shift 372 + constEqExpr shift 331 State 101: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr PERIOD TRGCONST - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - constExpr ::= constExpr BITXOR * constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= constExpr BITXOR * nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + constCompExpr ::= constEqExpr GE * constEqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 257 - constExpr shift 256 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 287 + constBitXorTerm shift 371 + constBitOrTerm shift 372 + constEqExpr shift 333 State 102: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr PERIOD TRGCONST - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= constExpr BITOR * constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= constExpr BITOR * nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + constEqExpr ::= * constBitOrTerm + constEqExpr ::= * constBitOrTerm EQ constBitOrTerm + constEqExpr ::= * constBitOrTerm NE constBitOrTerm + constCompExpr ::= constEqExpr LE * constEqExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 259 - constExpr shift 258 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 287 + constBitXorTerm shift 371 + constBitOrTerm shift 372 + constEqExpr shift 335 State 103: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= constExpr BITAND * constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= constExpr BITAND * nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + nonConstExpr ::= * LNOT nonConstExpr + vdef_stmt ::= * VAR nameList_nonEmpty + vdefAssign_stmt ::= * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty + cdef_stmt ::= * CONST nameList_nonEmpty ASSIGN exprList_nonEmpty + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_init_stmt_nonEmpty ::= * vdef_stmt + for_init_stmt_nonEmpty ::= * vdefAssign_stmt + for_init_stmt_nonEmpty ::= * cdef_stmt + for_init_stmt_nonEmpty ::= * assign_stmt + for_init_stmt_nonEmpty ::= * for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty + for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA * for_init_stmt_nonEmpty - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 261 - constExpr shift 260 - lambdaExprStart shift 12 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 367 + VAR shift 168 + L2V shift 580 + CONST shift 166 + INC shift 134 + DEC shift 133 + vdef_stmt shift 467 + vdefAssign_stmt shift 466 + cdef_stmt shift 465 + assign_stmt shift 464 + funcexpr shift 231 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + for_init_stmt_nonEmpty shift 462 State 104: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -14418,7 +16310,7 @@ State 104: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -14428,75 +16320,69 @@ State 104: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= constExpr RSHIFT * constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= constExpr RSHIFT * nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + shTerm ::= shTerm LSHIFT * constTerm + shTerm ::= shTerm LSHIFT * term constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 263 - constExpr shift 262 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 276 + constFactor shift 257 + term shift 275 + factor shift 249 State 105: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -14512,7 +16398,7 @@ State 105: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -14522,357 +16408,259 @@ State 105: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= constExpr LSHIFT * constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= constExpr LSHIFT * nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + shTerm ::= shTerm RSHIFT * term + shTerm ::= shTerm RSHIFT * constTerm constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 265 - constExpr shift 264 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constTerm shift 278 + constFactor shift 257 + term shift 277 + factor shift 249 State 106: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr PERIOD TRGCONST - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - constExpr ::= constExpr MOD * constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= constExpr MOD * nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + constEqExpr ::= constBitOrTerm NE * constBitOrTerm constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 267 - constExpr shift 266 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 287 + constBitXorTerm shift 371 + constBitOrTerm shift 307 State 107: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr PERIOD TRGCONST - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= constExpr DIVIDE * constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= constExpr DIVIDE * nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + constBitOrTerm ::= * constBitXorTerm + constBitOrTerm ::= * constBitOrTerm BITOR constBitXorTerm constExpr ::= * PLUS constExpr - nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + constEqExpr ::= constBitOrTerm EQ * constBitOrTerm constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 276 - constExpr shift 268 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 287 + constBitXorTerm shift 371 + constBitOrTerm shift 309 State 108: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST nonConstExpr ::= * NAME nonConstExpr ::= * nonConstExpr PERIOD NAME nonConstExpr ::= * nonConstExpr PERIOD TRGCONST nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt + funcexprStmt ::= * funcexpr funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= constExpr MULTIPLY * constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= constExpr MULTIPLY * nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr - constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr - constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr - constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + nonConstExpr ::= * LNOT nonConstExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_action_stmt_nonEmpty ::= * funcexprStmt + for_action_stmt_nonEmpty ::= * assign_stmt + for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty + (298) for_action_stmt ::= * + for_action_stmt ::= * for_action_stmt_nonEmpty + for_header ::= for_header2 * for_action_stmt - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 278 - constExpr shift 235 - lambdaExprStart shift 12 + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 367 + RPAREN reduce 298 + L2V shift 580 + INC shift 134 + DEC shift 133 + assign_stmt shift 460 + funcexprStmt shift 461 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + for_action_stmt_nonEmpty shift 459 + for_action_stmt shift 524 State 109: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -14888,7 +16676,7 @@ State 109: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -14898,75 +16686,64 @@ State 109: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + shTerm ::= constTerm LSHIFT * term constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= BITNOT * constExpr nonConstExpr ::= * BITNOT nonConstExpr - nonConstExpr ::= BITNOT * nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 280 - constExpr shift 233 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constFactor shift 394 + term shift 280 + factor shift 249 State 110: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET @@ -14982,7 +16759,7 @@ State 110: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -14992,171 +16769,186 @@ State 110: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + term ::= * factor + term ::= * constFactor PLUS factor + term ::= * term PLUS constFactor + term ::= * term PLUS factor + term ::= * constFactor MINUS factor + term ::= * term MINUS constFactor + term ::= * term MINUS factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr + shTerm ::= constTerm RSHIFT * term constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - constExpr ::= MINUS * constExpr nonConstExpr ::= * MINUS nonConstExpr - nonConstExpr ::= MINUS * nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 282 - constExpr shift 232 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constFactor shift 394 + term shift 281 + factor shift 249 State 111: - nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST - nonConstExpr ::= * NAME - nonConstExpr ::= * nonConstExpr PERIOD NAME - nonConstExpr ::= * nonConstExpr PERIOD TRGCONST - nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - funcexpr ::= * NAME LPAREN fArgs RPAREN - funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN - nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN - nonConstExpr ::= * LPAREN logicExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= * constBitAndTerm + constBitXorTerm ::= * constBitXorTerm BITXOR constBitAndTerm + constBitOrTerm ::= constBitOrTerm BITOR * constBitXorTerm constExpr ::= * PLUS constExpr - constExpr ::= PLUS * constExpr - nonConstExpr ::= * PLUS nonConstExpr - nonConstExpr ::= PLUS * nonConstExpr constExpr ::= * MINUS constExpr - nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 284 - constExpr shift 231 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 287 + constBitXorTerm shift 296 State 112: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexprStmt ::= * funcexpr + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= * lvalue + lvalueList_nonEmpty ::= * lvalueList_nonEmpty COMMA lvalue + assign_stmt ::= * lvalue ASSIGN expr + assign_stmt ::= * lvalueList_nonEmpty ASSIGN exprList_nonEmpty + assign_stmt ::= * INC lvalue + assign_stmt ::= * lvalue INC + assign_stmt ::= * DEC lvalue + assign_stmt ::= * lvalue DEC + assign_stmt ::= * lvalue IADD expr + assign_stmt ::= * lvalue ISUB expr + assign_stmt ::= * lvalue IMUL expr + assign_stmt ::= * lvalue IDIV expr + assign_stmt ::= * lvalue IMOD expr + assign_stmt ::= * lvalue ILSH expr + assign_stmt ::= * lvalue IRSH expr + assign_stmt ::= * lvalue IBND expr + assign_stmt ::= * lvalue IBOR expr + assign_stmt ::= * lvalue IBXR expr + for_action_stmt_nonEmpty ::= * funcexprStmt + for_action_stmt_nonEmpty ::= * assign_stmt + for_action_stmt_nonEmpty ::= * for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty + for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA * for_action_stmt_nonEmpty + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 367 + L2V shift 580 + INC shift 134 + DEC shift 133 + assign_stmt shift 460 + funcexprStmt shift 461 + funcexpr shift 392 + nonConstExpr shift 430 + lvalue shift 368 + lvalueList_nonEmpty shift 470 + for_action_stmt_nonEmpty shift 458 + +State 113: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -15170,7 +16962,7 @@ State 112: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -15180,77 +16972,59 @@ State 112: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= constExpr MINUS * constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= constExpr MINUS * nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + term ::= term MINUS * constFactor + term ::= term MINUS * factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 295 - constExpr shift 227 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 + constFactor shift 238 + factor shift 237 -State 113: +State 114: nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS @@ -15264,7 +17038,7 @@ State 113: funcexpr ::= * NAME LPAREN fArgs RPAREN funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN nonConstExpr ::= * funcexpr - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET nonConstExpr ::= * L2V LPAREN expr RPAREN @@ -15274,223 +17048,65 @@ State 113: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - nonConstExpr ::= * nonConstExpr QMARK expr COLON expr - constExpr ::= * constExpr PLUS constExpr - constExpr ::= constExpr PLUS * constExpr - nonConstExpr ::= * constExpr PLUS nonConstExpr - nonConstExpr ::= constExpr PLUS * nonConstExpr - nonConstExpr ::= * nonConstExpr PLUS expr - constExpr ::= * constExpr MINUS constExpr - nonConstExpr ::= * constExpr MINUS nonConstExpr - nonConstExpr ::= * nonConstExpr MINUS expr - constExpr ::= * constExpr MULTIPLY constExpr - nonConstExpr ::= * constExpr MULTIPLY nonConstExpr - nonConstExpr ::= * nonConstExpr MULTIPLY expr - constExpr ::= * constExpr DIVIDE constExpr - nonConstExpr ::= * constExpr DIVIDE nonConstExpr - nonConstExpr ::= * nonConstExpr DIVIDE expr - constExpr ::= * constExpr MOD constExpr - nonConstExpr ::= * constExpr MOD nonConstExpr - nonConstExpr ::= * nonConstExpr MOD expr - constExpr ::= * constExpr LSHIFT constExpr - nonConstExpr ::= * constExpr LSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr LSHIFT expr - constExpr ::= * constExpr RSHIFT constExpr - nonConstExpr ::= * constExpr RSHIFT nonConstExpr - nonConstExpr ::= * nonConstExpr RSHIFT expr - constExpr ::= * constExpr BITAND constExpr - nonConstExpr ::= * constExpr BITAND nonConstExpr - nonConstExpr ::= * nonConstExpr BITAND expr - constExpr ::= * constExpr BITOR constExpr - nonConstExpr ::= * constExpr BITOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITOR expr - constExpr ::= * constExpr BITXOR constExpr - nonConstExpr ::= * constExpr BITXOR nonConstExpr - nonConstExpr ::= * nonConstExpr BITXOR expr + term ::= term PLUS * constFactor + term ::= term PLUS * factor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr constExpr ::= * PLUS constExpr nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr nonConstExpr ::= * BITNOT nonConstExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 111 - MINUS shift 110 - BITNOT shift 109 - LPAREN shift 83 - LSQBRACKET shift 43 - NAME shift 304 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - L2V shift 526 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - funcexpr shift 309 - nonConstExpr shift 297 - constExpr shift 223 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 242 lambdaExprStart shift 12 - -State 114: - case_start ::= * CASE - case_clause ::= * case_start exprList_nonEmpty COLON - case_chunk ::= * case_clause - case_chunk ::= * case_clause bodyStmtList - case_chunks ::= * case_chunks case_chunk - case_chunks ::= * case_chunk - switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks default_chunk - switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks - (242) switchcase_block ::= switchcase_header RPAREN LBRACKET * - - RBRACKET reduce 242 - CASE shift 334 - case_start shift 36 - case_clause shift 14 - case_chunk shift 370 - case_chunks shift 88 + constFactor shift 246 + factor shift 243 State 115: - elif_start ::= * ELSE IF - elif_header ::= * elif_start LPAREN expr - if_block ::= if_block * elif_header RPAREN stmt - else_header ::= * ELSE - (228) if_stmt ::= if_block * - if_stmt ::= if_block * else_header stmt - - $ reduce 228 - ELSE shift 323 - ELSE reduce 228 -- dropped by precedence - QMARK reduce 228 - COMMA reduce 228 - LOR reduce 228 - LAND reduce 228 - EQ reduce 228 - LE reduce 228 - LT reduce 228 - GE reduce 228 - GT reduce 228 - NE reduce 228 - BITOR reduce 228 - BITXOR reduce 228 - BITAND reduce 228 - LSHIFT reduce 228 - RSHIFT reduce 228 - PLUS reduce 228 - MINUS reduce 228 - DIVIDE reduce 228 - MULTIPLY reduce 228 - MOD reduce 228 - BITNOT reduce 228 - LPAREN reduce 228 - LSQBRACKET reduce 228 - PERIOD reduce 228 - SEMICOLON reduce 228 - IMPORT reduce 228 - NAME reduce 228 - COLON reduce 228 - FUNCTION reduce 228 - RPAREN reduce 228 - OBJECT reduce 228 - LBRACKET reduce 228 - VAR reduce 228 - RBRACKET reduce 228 - NUMBER reduce 228 - RSQBRACKET reduce 228 - KILLS reduce 228 - TRGCONST reduce 228 - L2V reduce 228 - MAPSTRING reduce 228 - UNIT reduce 228 - SWITCH reduce 228 - LOCATION reduce 228 - STATTXTTBL reduce 228 - VARRAY reduce 228 - STATIC reduce 228 - CONST reduce 228 - INC reduce 228 - DEC reduce 228 - ONCE reduce 228 - IF reduce 228 - SWITCHCASE reduce 228 - CASE reduce 228 - DEFAULT reduce 228 - WHILE reduce 228 - FOR reduce 228 - FOREACH reduce 228 - CONTINUE reduce 228 - BREAK reduce 228 - RETURN reduce 228 - ACTIONNAME reduce 228 - elif_start shift 488 - elif_header shift 486 - else_header shift 4 - -State 116: - method_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (68) typedNameList ::= * - typedNameList ::= * typedNameList_nonEmpty - - NAME shift 363 - RPAREN reduce 68 - typedNameList shift 448 - typedNameList_nonEmpty shift 457 - typedName shift 369 - -State 117: - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (68) typedNameList ::= * - typedNameList ::= * typedNameList_nonEmpty - lambdaExprStart ::= FUNCTION LPAREN * typedNameList RPAREN fdef_rettypes - - NAME shift 363 - RPAREN reduce 68 - typedNameList shift 456 - typedNameList_nonEmpty shift 457 - typedName shift 369 - -State 118: - fdef_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN * typedNameList RPAREN SEMICOLON - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - (68) typedNameList ::= * - typedNameList ::= * typedNameList_nonEmpty - - NAME shift 363 - RPAREN reduce 68 - typedNameList shift 548 - typedNameList_nonEmpty shift 457 - typedName shift 369 - -State 119: constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -15498,164 +17114,196 @@ State 119: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= * constShTerm + constBitAndTerm ::= * constBitAndTerm BITAND constShTerm + constBitXorTerm ::= constBitXorTerm BITXOR * constBitAndTerm constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= BITNOT * constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 243 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 269 + constBitAndTerm shift 290 -State 120: +State 116: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + term ::= constFactor MINUS * factor + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr - constExpr ::= MINUS * constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 244 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 428 lambdaExprStart shift 12 + factor shift 239 -State 121: +State 117: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + term ::= constFactor PLUS * factor + factor ::= * nonConstExpr + factor ::= * constExpr MULTIPLY nonConstExpr + factor ::= * factor MULTIPLY constExpr + factor ::= * factor MULTIPLY nonConstExpr + factor ::= * constExpr DIVIDE nonConstExpr + factor ::= * factor DIVIDE constExpr + factor ::= * factor DIVIDE nonConstExpr + factor ::= * constExpr MOD nonConstExpr + factor ::= * factor MOD constExpr + factor ::= * factor MOD nonConstExpr constExpr ::= * PLUS constExpr - constExpr ::= PLUS * constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 245 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 228 + constExpr shift 428 lambdaExprStart shift 12 + factor shift 256 -State 122: +State 118: constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -15663,494 +17311,494 @@ State 122: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= * constTerm + constShTerm ::= * constShTerm RSHIFT constTerm + constShTerm ::= * constShTerm LSHIFT constTerm + constBitAndTerm ::= constBitAndTerm BITAND * constShTerm constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - constExpr ::= constExpr GT * constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 209 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 273 + constFactor shift 255 + constShTerm shift 272 -State 123: - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr - constExpr ::= * PLUS constExpr - constExpr ::= * MINUS constExpr - constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= constExpr LT * constExpr - constExpr ::= * constExpr GT constExpr - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN +State 119: + case_start ::= * CASE + case_clause ::= * case_start exprList_nonEmpty COLON + case_chunk ::= * case_clause + case_chunk ::= * case_clause bodyStmtList + case_chunks ::= case_chunks * case_chunk + default_clause ::= * DEFAULT COLON + default_chunk ::= * default_clause + default_chunk ::= * default_clause bodyStmtList + switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * default_chunk + (281) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks * - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 210 - lambdaExprStart shift 12 + RBRACKET reduce 281 + CASE shift 363 + DEFAULT shift 510 + case_start shift 31 + case_clause shift 14 + case_chunk shift 408 + default_clause shift 16 + default_chunk shift 509 -State 124: +State 120: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + factor ::= factor MOD * constExpr + factor ::= factor MOD * nonConstExpr constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= constExpr GE * constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 211 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 215 + constExpr shift 247 lambdaExprStart shift 12 -State 125: +State 121: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= constExpr LE * constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + constExpr ::= LNOT * constExpr + nonConstExpr ::= * LNOT nonConstExpr + nonConstExpr ::= LNOT * nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 212 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 216 + constExpr shift 250 lambdaExprStart shift 12 -State 126: +State 122: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= constExpr NE * constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= BITNOT * constExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= BITNOT * nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 213 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 217 + constExpr shift 251 lambdaExprStart shift 12 -State 127: +State 123: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr - constExpr ::= constExpr BITXOR * constExpr constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + constExpr ::= MINUS * constExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= MINUS * nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 246 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 218 + constExpr shift 252 lambdaExprStart shift 12 -State 128: +State 124: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= constExpr BITOR * constExpr - constExpr ::= * constExpr BITXOR constExpr constExpr ::= * PLUS constExpr + constExpr ::= PLUS * constExpr + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= PLUS * nonConstExpr constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 247 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 219 + constExpr shift 253 lambdaExprStart shift 12 -State 129: +State 125: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= constExpr BITAND * constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + factor ::= factor DIVIDE * constExpr + factor ::= factor DIVIDE * nonConstExpr constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 220 constExpr shift 248 lambdaExprStart shift 12 -State 130: +State 126: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + constExpr ::= * LPAREN constLogicExpr RPAREN + nonConstExpr ::= * LPAREN logicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + nonConstExpr ::= * L2V LPAREN expr RPAREN constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN constExpr ::= * SWITCH LPAREN STRING RPAREN constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= constExpr RSHIFT * constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + factor ::= factor MULTIPLY * constExpr + factor ::= factor MULTIPLY * nonConstExpr constExpr ::= * PLUS constExpr + nonConstExpr ::= * PLUS nonConstExpr constExpr ::= * MINUS constExpr + nonConstExpr ::= * MINUS nonConstExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + nonConstExpr ::= * BITNOT nonConstExpr + constExpr ::= * LNOT constExpr + nonConstExpr ::= * LNOT nonConstExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 249 + LNOT shift 121 + PLUS shift 124 + MINUS shift 123 + BITNOT shift 122 + LPAREN shift 66 + LSQBRACKET shift 38 + NAME shift 229 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + L2V shift 580 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + funcexpr shift 231 + nonConstExpr shift 221 + constExpr shift 234 lambdaExprStart shift 12 -State 131: +State 127: constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -16158,54 +17806,49 @@ State 131: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= constExpr LSHIFT * constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= constShTerm LSHIFT * constTerm constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 250 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 282 + constFactor shift 255 -State 132: +State 128: constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -16213,164 +17856,133 @@ State 132: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= constExpr MOD * constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + constTerm ::= * constFactor + constTerm ::= * constTerm PLUS constFactor + constTerm ::= * constTerm MINUS constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr + constShTerm ::= constShTerm RSHIFT * constTerm constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 251 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constTerm shift 283 + constFactor shift 255 -State 133: - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= constExpr DIVIDE * constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr - constExpr ::= * PLUS constExpr - constExpr ::= * MINUS constExpr - constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN +State 129: + case_start ::= * CASE + case_clause ::= * case_start exprList_nonEmpty COLON + case_chunk ::= * case_clause + case_chunk ::= * case_clause bodyStmtList + case_chunks ::= * case_chunks case_chunk + case_chunks ::= * case_chunk + switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks default_chunk + switchcase_block ::= switchcase_header RPAREN LBRACKET * case_chunks + (282) switchcase_block ::= switchcase_header RPAREN LBRACKET * - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 252 - lambdaExprStart shift 12 + RBRACKET reduce 282 + CASE shift 363 + case_start shift 31 + case_clause shift 14 + case_chunk shift 407 + case_chunks shift 119 -State 134: - constExpr ::= * NUMBER - constExpr ::= * KILLS - constExpr ::= * TRGCONST - lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes - constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN - constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET - constExpr ::= * MAPSTRING LPAREN STRING RPAREN - constExpr ::= * UNIT LPAREN STRING RPAREN - constExpr ::= * SWITCH LPAREN STRING RPAREN - constExpr ::= * LOCATION LPAREN STRING RPAREN - constExpr ::= * STATTXTTBL LPAREN STRING RPAREN - constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= constExpr MULTIPLY * constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr - constExpr ::= * PLUS constExpr - constExpr ::= * MINUS constExpr - constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr - constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN +State 130: + elif_start ::= * ELSE IF + elif_header ::= * elif_start LPAREN expr + if_block ::= if_block * elif_header RPAREN stmt + else_header ::= * ELSE + (268) if_stmt ::= if_block * + if_stmt ::= if_block * else_header stmt - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 253 - lambdaExprStart shift 12 + $ reduce 268 + ELSE shift 359 + ELSE reduce 268 -- dropped by precedence + QMARK reduce 268 + COMMA reduce 268 + LOR reduce 268 + LAND reduce 268 + LNOT reduce 268 + EQ reduce 268 + LE reduce 268 + LT reduce 268 + GE reduce 268 + GT reduce 268 + NE reduce 268 + BITOR reduce 268 + BITXOR reduce 268 + BITAND reduce 268 + LSHIFT reduce 268 + RSHIFT reduce 268 + PLUS reduce 268 + MINUS reduce 268 + DIVIDE reduce 268 + MULTIPLY reduce 268 + MOD reduce 268 + BITNOT reduce 268 + LPAREN reduce 268 + SEMICOLON reduce 268 + IMPORT reduce 268 + NAME reduce 268 + COLON reduce 268 + FUNCTION reduce 268 + RPAREN reduce 268 + OBJECT reduce 268 + LBRACKET reduce 268 + VAR reduce 268 + RBRACKET reduce 268 + RSQBRACKET reduce 268 + L2V reduce 268 + STATIC reduce 268 + CONST reduce 268 + INC reduce 268 + DEC reduce 268 + ONCE reduce 268 + IF reduce 268 + SWITCHCASE reduce 268 + CASE reduce 268 + DEFAULT reduce 268 + WHILE reduce 268 + FOR reduce 268 + FOREACH reduce 268 + CONTINUE reduce 268 + BREAK reduce 268 + RETURN reduce 268 + ACTIONNAME reduce 268 + elif_start shift 539 + elif_header shift 537 + else_header shift 4 -State 135: +State 131: constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -16378,54 +17990,45 @@ State 135: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= constExpr MINUS * constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + constTerm ::= constTerm MINUS * constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 254 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constFactor shift 241 -State 136: +State 132: constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -16433,55 +18036,187 @@ State 136: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= constExpr PLUS * constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + constTerm ::= constTerm PLUS * constFactor + constFactor ::= * constExpr + constFactor ::= * constFactor MULTIPLY constExpr + constFactor ::= * constFactor MOD constExpr + constFactor ::= * constFactor DIVIDE constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 255 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 240 lambdaExprStart shift 12 + constFactor shift 235 + +State 133: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + assign_stmt ::= DEC * lvalue + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 367 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 430 + lvalue shift 409 + +State 134: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + assign_stmt ::= INC * lvalue + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 367 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 430 + lvalue shift 410 + +State 135: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + lvalue ::= * NAME + lvalue ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + lvalue ::= * nonConstExpr PERIOD NAME + lvalue ::= * nonConstExpr PERIOD TRGCONST + lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA * lvalue + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 367 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 430 + lvalue shift 469 + +State 136: + method_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + (74) typedNameList ::= * + typedNameList ::= * typedNameList_nonEmpty + + NAME shift 400 + RPAREN reduce 74 + typedNameList shift 499 + typedNameList_nonEmpty shift 508 + typedName shift 406 State 137: + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + (74) typedNameList ::= * + typedNameList ::= * typedNameList_nonEmpty + lambdaExprStart ::= FUNCTION LPAREN * typedNameList RPAREN fdef_rettypes + + NAME shift 400 + RPAREN reduce 74 + typedNameList shift 507 + typedNameList_nonEmpty shift 508 + typedName shift 406 + +State 138: + fdef_header ::= FUNCTION NAME LPAREN * typedNameList RPAREN fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN * typedNameList RPAREN SEMICOLON + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + (74) typedNameList ::= * + typedNameList ::= * typedNameList_nonEmpty + + NAME shift 400 + RPAREN reduce 74 + typedNameList shift 603 + typedNameList_nonEmpty shift 508 + typedName shift 406 + +State 139: constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN - constExpr ::= LPAREN * constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -16489,53 +18224,40 @@ State 137: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + constFactor ::= constFactor DIVIDE * constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 336 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 244 lambdaExprStart shift 12 -State 138: +State 140: constExpr ::= * NUMBER constExpr ::= * KILLS constExpr ::= * TRGCONST lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes constExpr ::= * lambdaExprStart stmt - constExpr ::= * LPAREN constExpr RPAREN + constExpr ::= * LPAREN constLogicExpr RPAREN constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET constExpr ::= * MAPSTRING LPAREN STRING RPAREN constExpr ::= * UNIT LPAREN STRING RPAREN @@ -16543,850 +18265,1348 @@ State 138: constExpr ::= * LOCATION LPAREN STRING RPAREN constExpr ::= * STATTXTTBL LPAREN STRING RPAREN constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN - constExpr ::= * constExpr PLUS constExpr - constExpr ::= * constExpr MINUS constExpr - constExpr ::= * constExpr MULTIPLY constExpr - constExpr ::= * constExpr DIVIDE constExpr - constExpr ::= * constExpr MOD constExpr - constExpr ::= * constExpr LSHIFT constExpr - constExpr ::= * constExpr RSHIFT constExpr - constExpr ::= * constExpr BITAND constExpr - constExpr ::= * constExpr BITOR constExpr - constExpr ::= * constExpr BITXOR constExpr + constFactor ::= constFactor MOD * constExpr constExpr ::= * PLUS constExpr constExpr ::= * MINUS constExpr constExpr ::= * BITNOT constExpr - constExpr ::= * constExpr EQ constExpr - constExpr ::= constExpr EQ * constExpr - constExpr ::= * constExpr NE constExpr - constExpr ::= * constExpr LE constExpr - constExpr ::= * constExpr GE constExpr - constExpr ::= * constExpr LT constExpr - constExpr ::= * constExpr GT constExpr + constExpr ::= * LNOT constExpr constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS shift 121 - MINUS shift 120 - BITNOT shift 119 - LPAREN shift 137 - LSQBRACKET shift 43 - FUNCTION shift 542 - NUMBER shift 307 - KILLS shift 299 - TRGCONST shift 305 - MAPSTRING shift 524 - UNIT shift 521 - SWITCH shift 518 - LOCATION shift 515 - STATTXTTBL shift 512 - VARRAY shift 509 - ACTIONNAME shift 504 - constExpr shift 208 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 245 lambdaExprStart shift 12 -State 139: - object_body ::= object_body * VAR typedNameList_nonEmpty SEMICOLON - method_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes - method_chunk ::= * method_header stmt - object_body ::= object_body * method_chunk - object_chunk ::= object_body * RBRACKET SEMICOLON - - FUNCTION shift 450 - VAR shift 140 - RBRACKET shift 447 - method_header shift 2 - method_chunk shift 365 - -State 140: - object_body ::= object_body VAR * typedNameList_nonEmpty SEMICOLON - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - - NAME shift 363 - typedNameList_nonEmpty shift 451 - typedName shift 369 - State 141: - typedName ::= * NAME - typedName ::= * NAME COLON expr - typedNameList_nonEmpty ::= * typedName - typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty - typedNameList_nonEmpty ::= typedName COMMA * typedNameList_nonEmpty + constExpr ::= * NUMBER + constExpr ::= * KILLS + constExpr ::= * TRGCONST + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constLogicExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= LNOT * constExpr + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - NAME shift 363 - typedNameList_nonEmpty shift 402 - typedName shift 369 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 250 + lambdaExprStart shift 12 State 142: - constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON - constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON - constActionList ::= constActionList * constAction - actionStmt ::= constActionList * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - (278) actionStmt ::= constActionList * - - $ reduce 278 - ELSE reduce 278 - QMARK reduce 278 - COMMA reduce 278 - LOR reduce 278 - LAND reduce 278 - EQ reduce 278 - LE reduce 278 - LT reduce 278 - GE reduce 278 - GT reduce 278 - NE reduce 278 - BITOR reduce 278 - BITXOR reduce 278 - BITAND reduce 278 - LSHIFT reduce 278 - RSHIFT reduce 278 - PLUS reduce 278 - MINUS reduce 278 - DIVIDE reduce 278 - MULTIPLY reduce 278 - MOD reduce 278 - BITNOT reduce 278 - LPAREN reduce 278 - LSQBRACKET reduce 278 - PERIOD reduce 278 - SEMICOLON reduce 278 - IMPORT reduce 278 - NAME reduce 278 - COLON reduce 278 - FUNCTION reduce 278 - RPAREN reduce 278 - OBJECT reduce 278 - LBRACKET reduce 278 - VAR reduce 278 - RBRACKET reduce 278 - NUMBER reduce 278 - RSQBRACKET reduce 278 - KILLS reduce 278 - TRGCONST reduce 278 - L2V reduce 278 - MAPSTRING reduce 278 - UNIT reduce 278 - SWITCH reduce 278 - LOCATION reduce 278 - STATTXTTBL reduce 278 - VARRAY reduce 278 - STATIC reduce 278 - CONST reduce 278 - INC reduce 278 - DEC reduce 278 - ONCE reduce 278 - IF reduce 278 - SWITCHCASE reduce 278 - CASE reduce 278 - DEFAULT reduce 278 - WHILE reduce 278 - FOR reduce 278 - FOREACH reduce 278 - CONTINUE reduce 278 - BREAK reduce 278 - RETURN reduce 278 - ACTIONNAME shift 461 - ACTIONNAME reduce 278 -- dropped by precedence - constAction shift 158 + constExpr ::= * NUMBER + constExpr ::= * KILLS + constExpr ::= * TRGCONST + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constLogicExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= BITNOT * constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN + + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 251 + lambdaExprStart shift 12 State 143: - (22) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + constExpr ::= * NUMBER + constExpr ::= * KILLS + constExpr ::= * TRGCONST + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constLogicExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= MINUS * constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS reduce 22 - MINUS reduce 22 - BITNOT reduce 22 - LPAREN reduce 22 - LSQBRACKET reduce 22 - SEMICOLON reduce 22 - NAME reduce 22 - COLON shift 44 - FUNCTION reduce 22 - LBRACKET reduce 22 - VAR reduce 22 - NUMBER reduce 22 - KILLS reduce 22 - TRGCONST reduce 22 - L2V reduce 22 - MAPSTRING reduce 22 - UNIT reduce 22 - SWITCH reduce 22 - LOCATION reduce 22 - STATTXTTBL reduce 22 - VARRAY reduce 22 - STATIC reduce 22 - CONST reduce 22 - INC reduce 22 - DEC reduce 22 - ONCE reduce 22 - IF reduce 22 - SWITCHCASE reduce 22 - WHILE reduce 22 - FOR reduce 22 - FOREACH reduce 22 - CONTINUE reduce 22 - BREAK reduce 22 - RETURN reduce 22 - ACTIONNAME reduce 22 - fdef_rettypes shift 320 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 252 + lambdaExprStart shift 12 State 144: - (22) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes + constExpr ::= * NUMBER + constExpr ::= * KILLS + constExpr ::= * TRGCONST + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constLogicExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constExpr ::= * PLUS constExpr + constExpr ::= PLUS * constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS reduce 22 - MINUS reduce 22 - BITNOT reduce 22 - LPAREN reduce 22 - LSQBRACKET reduce 22 - SEMICOLON reduce 22 - NAME reduce 22 - COLON shift 44 - FUNCTION reduce 22 - LBRACKET reduce 22 - VAR reduce 22 - NUMBER reduce 22 - KILLS reduce 22 - TRGCONST reduce 22 - L2V reduce 22 - MAPSTRING reduce 22 - UNIT reduce 22 - SWITCH reduce 22 - LOCATION reduce 22 - STATTXTTBL reduce 22 - VARRAY reduce 22 - STATIC reduce 22 - CONST reduce 22 - INC reduce 22 - DEC reduce 22 - ONCE reduce 22 - IF reduce 22 - SWITCHCASE reduce 22 - WHILE reduce 22 - FOR reduce 22 - FOREACH reduce 22 - CONTINUE reduce 22 - BREAK reduce 22 - RETURN reduce 22 - ACTIONNAME reduce 22 - fdef_rettypes shift 322 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 253 + lambdaExprStart shift 12 State 145: - (22) fdef_rettypes ::= * - fdef_rettypes ::= * COLON exprList_nonEmpty - fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes - fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON + constExpr ::= * NUMBER + constExpr ::= * KILLS + constExpr ::= * TRGCONST + lambdaExprStart ::= * FUNCTION LPAREN typedNameList RPAREN fdef_rettypes + constExpr ::= * lambdaExprStart stmt + constExpr ::= * LPAREN constLogicExpr RPAREN + constExpr ::= * LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET + constExpr ::= * MAPSTRING LPAREN STRING RPAREN + constExpr ::= * UNIT LPAREN STRING RPAREN + constExpr ::= * SWITCH LPAREN STRING RPAREN + constExpr ::= * LOCATION LPAREN STRING RPAREN + constExpr ::= * STATTXTTBL LPAREN STRING RPAREN + constExpr ::= * VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN + constFactor ::= constFactor MULTIPLY * constExpr + constExpr ::= * PLUS constExpr + constExpr ::= * MINUS constExpr + constExpr ::= * BITNOT constExpr + constExpr ::= * LNOT constExpr + constExpr ::= * ACTIONNAME LPAREN fArgs RPAREN - PLUS reduce 22 - MINUS reduce 22 - BITNOT reduce 22 - LPAREN reduce 22 - LSQBRACKET reduce 22 - SEMICOLON shift 345 - SEMICOLON reduce 22 -- dropped by precedence - NAME reduce 22 - COLON shift 44 - FUNCTION reduce 22 - LBRACKET reduce 22 - VAR reduce 22 - NUMBER reduce 22 - KILLS reduce 22 - TRGCONST reduce 22 - L2V reduce 22 - MAPSTRING reduce 22 - UNIT reduce 22 - SWITCH reduce 22 - LOCATION reduce 22 - STATTXTTBL reduce 22 - VARRAY reduce 22 - STATIC reduce 22 - CONST reduce 22 - INC reduce 22 - DEC reduce 22 - ONCE reduce 22 - IF reduce 22 - SWITCHCASE reduce 22 - WHILE reduce 22 - FOR reduce 22 - FOREACH reduce 22 - CONTINUE reduce 22 - BREAK reduce 22 - RETURN reduce 22 - ACTIONNAME reduce 22 - fdef_rettypes shift 321 + LNOT shift 141 + PLUS shift 144 + MINUS shift 143 + BITNOT shift 142 + LPAREN shift 94 + LSQBRACKET shift 38 + TRGCONST shift 266 + FUNCTION shift 597 + NUMBER shift 268 + KILLS shift 264 + MAPSTRING shift 578 + UNIT shift 575 + SWITCH shift 572 + LOCATION shift 569 + STATTXTTBL shift 566 + VARRAY shift 563 + ACTIONNAME shift 559 + constExpr shift 254 + lambdaExprStart shift 12 State 146: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (112) commaSkippable ::= * - logicExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN - - COMMA shift 45 - RPAREN reduce 112 - commaSkippable shift 506 + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + factor ::= constExpr MOD * nonConstExpr + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 229 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 212 State 147: - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - commaSkippable ::= * COMMA - (112) commaSkippable ::= * - constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN - - COMMA shift 45 - RPAREN reduce 112 - commaSkippable shift 508 - + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + nonConstExpr ::= LNOT * nonConstExpr + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 229 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 216 + State 148: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= BITNOT * nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 229 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 217 + +State 149: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= MINUS * nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 229 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 218 + +State 150: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= PLUS * nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 229 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 219 + +State 151: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + factor ::= constExpr DIVIDE * nonConstExpr + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 229 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 213 + +State 152: + nonConstExpr ::= * funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + nonConstExpr ::= * NAME + nonConstExpr ::= * nonConstExpr PERIOD NAME + nonConstExpr ::= * nonConstExpr PERIOD TRGCONST + nonConstExpr ::= * nonConstExpr LSQBRACKET expr RSQBRACKET + funcexpr ::= * NAME LPAREN fArgs RPAREN + funcexpr ::= * nonConstExpr LPAREN fArgs RPAREN + nonConstExpr ::= * funcexpr + nonConstExpr ::= * LPAREN logicExpr RPAREN + nonConstExpr ::= * L2V LPAREN expr RPAREN + factor ::= constExpr MULTIPLY * nonConstExpr + nonConstExpr ::= * PLUS nonConstExpr + nonConstExpr ::= * MINUS nonConstExpr + nonConstExpr ::= * BITNOT nonConstExpr + nonConstExpr ::= * LNOT nonConstExpr + + LNOT shift 147 + PLUS shift 150 + MINUS shift 149 + BITNOT shift 148 + LPAREN shift 67 + NAME shift 229 + L2V shift 580 + funcexpr shift 231 + nonConstExpr shift 214 + +State 153: + object_body ::= object_body * VAR typedNameList_nonEmpty SEMICOLON + method_header ::= * FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes + method_chunk ::= * method_header stmt + object_body ::= object_body * method_chunk + object_chunk ::= object_body * RBRACKET SEMICOLON + + FUNCTION shift 501 + VAR shift 154 + RBRACKET shift 498 + method_header shift 2 + method_chunk shift 402 + +State 154: + object_body ::= object_body VAR * typedNameList_nonEmpty SEMICOLON + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + + NAME shift 400 + typedNameList_nonEmpty shift 502 + typedName shift 406 + +State 155: + typedName ::= * NAME + typedName ::= * NAME COLON expr + typedNameList_nonEmpty ::= * typedName + typedNameList_nonEmpty ::= * typedName COMMA typedNameList_nonEmpty + typedNameList_nonEmpty ::= typedName COMMA * typedNameList_nonEmpty + + NAME shift 400 + typedNameList_nonEmpty shift 451 + typedName shift 406 + +State 156: + constAction ::= * ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON + constAction ::= * ACTIONNAME LPAREN RPAREN SEMICOLON + constActionList ::= constActionList * constAction + actionStmt ::= constActionList * ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON + (318) actionStmt ::= constActionList * + + $ reduce 318 + ELSE reduce 318 + QMARK reduce 318 + COMMA reduce 318 + LOR reduce 318 + LAND reduce 318 + LNOT reduce 318 + EQ reduce 318 + LE reduce 318 + LT reduce 318 + GE reduce 318 + GT reduce 318 + NE reduce 318 + BITOR reduce 318 + BITXOR reduce 318 + BITAND reduce 318 + LSHIFT reduce 318 + RSHIFT reduce 318 + PLUS reduce 318 + MINUS reduce 318 + DIVIDE reduce 318 + MULTIPLY reduce 318 + MOD reduce 318 + BITNOT reduce 318 + LPAREN reduce 318 + SEMICOLON reduce 318 + IMPORT reduce 318 + NAME reduce 318 + COLON reduce 318 + FUNCTION reduce 318 + RPAREN reduce 318 + OBJECT reduce 318 + LBRACKET reduce 318 + VAR reduce 318 + RBRACKET reduce 318 + RSQBRACKET reduce 318 + L2V reduce 318 + STATIC reduce 318 + CONST reduce 318 + INC reduce 318 + DEC reduce 318 + ONCE reduce 318 + IF reduce 318 + SWITCHCASE reduce 318 + CASE reduce 318 + DEFAULT reduce 318 + WHILE reduce 318 + FOR reduce 318 + FOREACH reduce 318 + CONTINUE reduce 318 + BREAK reduce 318 + RETURN reduce 318 + ACTIONNAME shift 512 + ACTIONNAME reduce 318 -- dropped by precedence + constAction shift 172 + +State 157: + (28) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + + LNOT reduce 28 + PLUS reduce 28 + MINUS reduce 28 + BITNOT reduce 28 + LPAREN reduce 28 + SEMICOLON reduce 28 + NAME reduce 28 + COLON shift 39 + LBRACKET reduce 28 + VAR reduce 28 + L2V reduce 28 + STATIC reduce 28 + CONST reduce 28 + INC reduce 28 + DEC reduce 28 + ONCE reduce 28 + IF reduce 28 + SWITCHCASE reduce 28 + WHILE reduce 28 + FOR reduce 28 + FOREACH reduce 28 + CONTINUE reduce 28 + BREAK reduce 28 + RETURN reduce 28 + ACTIONNAME reduce 28 + fdef_rettypes shift 356 + +State 158: + (28) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN * fdef_rettypes + + LNOT reduce 28 + PLUS reduce 28 + MINUS reduce 28 + BITNOT reduce 28 + LPAREN reduce 28 + SEMICOLON reduce 28 + NAME reduce 28 + COLON shift 39 + LBRACKET reduce 28 + VAR reduce 28 + L2V reduce 28 + STATIC reduce 28 + CONST reduce 28 + INC reduce 28 + DEC reduce 28 + ONCE reduce 28 + IF reduce 28 + SWITCHCASE reduce 28 + WHILE reduce 28 + FOR reduce 28 + FOREACH reduce 28 + CONTINUE reduce 28 + BREAK reduce 28 + RETURN reduce 28 + ACTIONNAME reduce 28 + fdef_rettypes shift 358 + +State 159: + (28) fdef_rettypes ::= * + fdef_rettypes ::= * COLON exprList_nonEmpty + fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN * fdef_rettypes + fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN * SEMICOLON + + LNOT reduce 28 + PLUS reduce 28 + MINUS reduce 28 + BITNOT reduce 28 + LPAREN reduce 28 + SEMICOLON shift 375 + SEMICOLON reduce 28 -- dropped by precedence + NAME reduce 28 + COLON shift 39 + LBRACKET reduce 28 + VAR reduce 28 + L2V reduce 28 + STATIC reduce 28 + CONST reduce 28 + INC reduce 28 + DEC reduce 28 + ONCE reduce 28 + IF reduce 28 + SWITCHCASE reduce 28 + WHILE reduce 28 + FOR reduce 28 + FOREACH reduce 28 + CONTINUE reduce 28 + BREAK reduce 28 + RETURN reduce 28 + ACTIONNAME reduce 28 + fdef_rettypes shift 357 + +State 160: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (118) commaSkippable ::= * + logicExpr ::= LIST LPAREN exprList_nonEmpty * commaSkippable RPAREN + + COMMA shift 40 + RPAREN reduce 118 + commaSkippable shift 560 + +State 161: + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr + commaSkippable ::= * COMMA + (118) commaSkippable ::= * + constExpr ::= VARRAY LPAREN exprList_nonEmpty * commaSkippable RPAREN + + COMMA shift 40 + RPAREN reduce 118 + commaSkippable shift 562 + +State 162: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr commaSkippable ::= * COMMA - (112) commaSkippable ::= * + (118) commaSkippable ::= * constExpr ::= LSQBRACKET exprList_nonEmpty * commaSkippable RSQBRACKET - COMMA shift 45 - RSQBRACKET reduce 112 - commaSkippable shift 500 + COMMA shift 40 + RSQBRACKET reduce 118 + commaSkippable shift 550 -State 149: +State 163: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME cdef_global_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 398 + NAME shift 396 + nameList_nonEmpty shift 447 -State 150: +State 164: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME vdef_stmt ::= VAR * nameList_nonEmpty vdefAssign_global_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 364 + NAME shift 396 + nameList_nonEmpty shift 401 -State 151: +State 165: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME foreach_header ::= foreach_opener * nameList_nonEmpty COLON exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 409 + NAME shift 396 + nameList_nonEmpty shift 457 -State 152: +State 166: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME cdef_stmt ::= CONST * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 424 + NAME shift 396 + nameList_nonEmpty shift 472 -State 153: +State 167: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME vdefAssignStatic_stmt ::= STATIC VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 426 + NAME shift 396 + nameList_nonEmpty shift 474 -State 154: +State 168: nameList_nonEmpty ::= * NAME nameList_nonEmpty ::= * nameList_nonEmpty COMMA NAME vdef_stmt ::= VAR * nameList_nonEmpty vdefAssign_stmt ::= VAR * nameList_nonEmpty ASSIGN exprList_nonEmpty - NAME shift 361 - nameList_nonEmpty shift 388 + NAME shift 396 + nameList_nonEmpty shift 425 -State 155: +State 169: numList_nonEmpty ::= * NUMBER numList_nonEmpty ::= * numList_nonEmpty COMMA NUMBER exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET * numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET - NUMBER shift 440 - numList_nonEmpty shift 439 + NUMBER shift 491 + numList_nonEmpty shift 490 -State 156: +State 170: rbracket ::= * RBRACKET blockStmt ::= blockStmtSub * rbracket - RBRACKET shift 193 - rbracket shift 192 + RBRACKET shift 207 + rbracket shift 206 -State 157: - (229) if_stmt ::= if_block else_header stmt * - - $ reduce 229 - ELSE reduce 229 - QMARK reduce 229 - COMMA reduce 229 - LOR reduce 229 - LAND reduce 229 - EQ reduce 229 - LE reduce 229 - LT reduce 229 - GE reduce 229 - GT reduce 229 - NE reduce 229 - BITOR reduce 229 - BITXOR reduce 229 - BITAND reduce 229 - LSHIFT reduce 229 - RSHIFT reduce 229 - PLUS reduce 229 - MINUS reduce 229 - DIVIDE reduce 229 - MULTIPLY reduce 229 - MOD reduce 229 - BITNOT reduce 229 - LPAREN reduce 229 - LSQBRACKET reduce 229 - PERIOD reduce 229 - SEMICOLON reduce 229 - IMPORT reduce 229 - NAME reduce 229 - COLON reduce 229 - FUNCTION reduce 229 - RPAREN reduce 229 - OBJECT reduce 229 - LBRACKET reduce 229 - VAR reduce 229 - RBRACKET reduce 229 - NUMBER reduce 229 - RSQBRACKET reduce 229 - KILLS reduce 229 - TRGCONST reduce 229 - L2V reduce 229 - MAPSTRING reduce 229 - UNIT reduce 229 - SWITCH reduce 229 - LOCATION reduce 229 - STATTXTTBL reduce 229 - VARRAY reduce 229 - STATIC reduce 229 - CONST reduce 229 - INC reduce 229 - DEC reduce 229 - ONCE reduce 229 - IF reduce 229 - SWITCHCASE reduce 229 - CASE reduce 229 - DEFAULT reduce 229 - WHILE reduce 229 - FOR reduce 229 - FOREACH reduce 229 - CONTINUE reduce 229 - BREAK reduce 229 - RETURN reduce 229 - ACTIONNAME reduce 229 +State 171: + (269) if_stmt ::= if_block else_header stmt * + + $ reduce 269 + ELSE reduce 269 + QMARK reduce 269 + COMMA reduce 269 + LOR reduce 269 + LAND reduce 269 + LNOT reduce 269 + EQ reduce 269 + LE reduce 269 + LT reduce 269 + GE reduce 269 + GT reduce 269 + NE reduce 269 + BITOR reduce 269 + BITXOR reduce 269 + BITAND reduce 269 + LSHIFT reduce 269 + RSHIFT reduce 269 + PLUS reduce 269 + MINUS reduce 269 + DIVIDE reduce 269 + MULTIPLY reduce 269 + MOD reduce 269 + BITNOT reduce 269 + LPAREN reduce 269 + SEMICOLON reduce 269 + IMPORT reduce 269 + NAME reduce 269 + COLON reduce 269 + FUNCTION reduce 269 + RPAREN reduce 269 + OBJECT reduce 269 + LBRACKET reduce 269 + VAR reduce 269 + RBRACKET reduce 269 + RSQBRACKET reduce 269 + L2V reduce 269 + STATIC reduce 269 + CONST reduce 269 + INC reduce 269 + DEC reduce 269 + ONCE reduce 269 + IF reduce 269 + SWITCHCASE reduce 269 + CASE reduce 269 + DEFAULT reduce 269 + WHILE reduce 269 + FOR reduce 269 + FOREACH reduce 269 + CONTINUE reduce 269 + BREAK reduce 269 + RETURN reduce 269 + ACTIONNAME reduce 269 -State 158: - (276) constActionList ::= constActionList constAction * - - $ reduce 276 - ELSE reduce 276 - QMARK reduce 276 - COMMA reduce 276 - LOR reduce 276 - LAND reduce 276 - EQ reduce 276 - LE reduce 276 - LT reduce 276 - GE reduce 276 - GT reduce 276 - NE reduce 276 - BITOR reduce 276 - BITXOR reduce 276 - BITAND reduce 276 - LSHIFT reduce 276 - RSHIFT reduce 276 - PLUS reduce 276 - MINUS reduce 276 - DIVIDE reduce 276 - MULTIPLY reduce 276 - MOD reduce 276 - BITNOT reduce 276 - LPAREN reduce 276 - LSQBRACKET reduce 276 - PERIOD reduce 276 - SEMICOLON reduce 276 - IMPORT reduce 276 - NAME reduce 276 - COLON reduce 276 - FUNCTION reduce 276 - RPAREN reduce 276 - OBJECT reduce 276 - LBRACKET reduce 276 - VAR reduce 276 - RBRACKET reduce 276 - NUMBER reduce 276 - RSQBRACKET reduce 276 - KILLS reduce 276 - TRGCONST reduce 276 - L2V reduce 276 - MAPSTRING reduce 276 - UNIT reduce 276 - SWITCH reduce 276 - LOCATION reduce 276 - STATTXTTBL reduce 276 - VARRAY reduce 276 - STATIC reduce 276 - CONST reduce 276 - INC reduce 276 - DEC reduce 276 - ONCE reduce 276 - IF reduce 276 - SWITCHCASE reduce 276 - CASE reduce 276 - DEFAULT reduce 276 - WHILE reduce 276 - FOR reduce 276 - FOREACH reduce 276 - CONTINUE reduce 276 - BREAK reduce 276 - RETURN reduce 276 - ACTIONNAME reduce 276 +State 172: + (316) constActionList ::= constActionList constAction * + + $ reduce 316 + ELSE reduce 316 + QMARK reduce 316 + COMMA reduce 316 + LOR reduce 316 + LAND reduce 316 + LNOT reduce 316 + EQ reduce 316 + LE reduce 316 + LT reduce 316 + GE reduce 316 + GT reduce 316 + NE reduce 316 + BITOR reduce 316 + BITXOR reduce 316 + BITAND reduce 316 + LSHIFT reduce 316 + RSHIFT reduce 316 + PLUS reduce 316 + MINUS reduce 316 + DIVIDE reduce 316 + MULTIPLY reduce 316 + MOD reduce 316 + BITNOT reduce 316 + LPAREN reduce 316 + SEMICOLON reduce 316 + IMPORT reduce 316 + NAME reduce 316 + COLON reduce 316 + FUNCTION reduce 316 + RPAREN reduce 316 + OBJECT reduce 316 + LBRACKET reduce 316 + VAR reduce 316 + RBRACKET reduce 316 + RSQBRACKET reduce 316 + L2V reduce 316 + STATIC reduce 316 + CONST reduce 316 + INC reduce 316 + DEC reduce 316 + ONCE reduce 316 + IF reduce 316 + SWITCHCASE reduce 316 + CASE reduce 316 + DEFAULT reduce 316 + WHILE reduce 316 + FOR reduce 316 + FOREACH reduce 316 + CONTINUE reduce 316 + BREAK reduce 316 + RETURN reduce 316 + ACTIONNAME reduce 316 -State 159: - (277) actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * - - $ reduce 277 - ELSE reduce 277 - QMARK reduce 277 - COMMA reduce 277 - LOR reduce 277 - LAND reduce 277 - EQ reduce 277 - LE reduce 277 - LT reduce 277 - GE reduce 277 - GT reduce 277 - NE reduce 277 - BITOR reduce 277 - BITXOR reduce 277 - BITAND reduce 277 - LSHIFT reduce 277 - RSHIFT reduce 277 - PLUS reduce 277 - MINUS reduce 277 - DIVIDE reduce 277 - MULTIPLY reduce 277 - MOD reduce 277 - BITNOT reduce 277 - LPAREN reduce 277 - LSQBRACKET reduce 277 - PERIOD reduce 277 - SEMICOLON reduce 277 - IMPORT reduce 277 - NAME reduce 277 - COLON reduce 277 - FUNCTION reduce 277 - RPAREN reduce 277 - OBJECT reduce 277 - LBRACKET reduce 277 - VAR reduce 277 - RBRACKET reduce 277 - NUMBER reduce 277 - RSQBRACKET reduce 277 - KILLS reduce 277 - TRGCONST reduce 277 - L2V reduce 277 - MAPSTRING reduce 277 - UNIT reduce 277 - SWITCH reduce 277 - LOCATION reduce 277 - STATTXTTBL reduce 277 - VARRAY reduce 277 - STATIC reduce 277 - CONST reduce 277 - INC reduce 277 - DEC reduce 277 - ONCE reduce 277 - IF reduce 277 - SWITCHCASE reduce 277 - CASE reduce 277 - DEFAULT reduce 277 - WHILE reduce 277 - FOR reduce 277 - FOREACH reduce 277 - CONTINUE reduce 277 - BREAK reduce 277 - RETURN reduce 277 - ACTIONNAME reduce 277 +State 173: + (317) actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 317 + ELSE reduce 317 + QMARK reduce 317 + COMMA reduce 317 + LOR reduce 317 + LAND reduce 317 + LNOT reduce 317 + EQ reduce 317 + LE reduce 317 + LT reduce 317 + GE reduce 317 + GT reduce 317 + NE reduce 317 + BITOR reduce 317 + BITXOR reduce 317 + BITAND reduce 317 + LSHIFT reduce 317 + RSHIFT reduce 317 + PLUS reduce 317 + MINUS reduce 317 + DIVIDE reduce 317 + MULTIPLY reduce 317 + MOD reduce 317 + BITNOT reduce 317 + LPAREN reduce 317 + SEMICOLON reduce 317 + IMPORT reduce 317 + NAME reduce 317 + COLON reduce 317 + FUNCTION reduce 317 + RPAREN reduce 317 + OBJECT reduce 317 + LBRACKET reduce 317 + VAR reduce 317 + RBRACKET reduce 317 + RSQBRACKET reduce 317 + L2V reduce 317 + STATIC reduce 317 + CONST reduce 317 + INC reduce 317 + DEC reduce 317 + ONCE reduce 317 + IF reduce 317 + SWITCHCASE reduce 317 + CASE reduce 317 + DEFAULT reduce 317 + WHILE reduce 317 + FOR reduce 317 + FOREACH reduce 317 + CONTINUE reduce 317 + BREAK reduce 317 + RETURN reduce 317 + ACTIONNAME reduce 317 -State 160: - (275) constActionList ::= constAction * - - $ reduce 275 - ELSE reduce 275 - QMARK reduce 275 - COMMA reduce 275 - LOR reduce 275 - LAND reduce 275 - EQ reduce 275 - LE reduce 275 - LT reduce 275 - GE reduce 275 - GT reduce 275 - NE reduce 275 - BITOR reduce 275 - BITXOR reduce 275 - BITAND reduce 275 - LSHIFT reduce 275 - RSHIFT reduce 275 - PLUS reduce 275 - MINUS reduce 275 - DIVIDE reduce 275 - MULTIPLY reduce 275 - MOD reduce 275 - BITNOT reduce 275 - LPAREN reduce 275 - LSQBRACKET reduce 275 - PERIOD reduce 275 - SEMICOLON reduce 275 - IMPORT reduce 275 - NAME reduce 275 - COLON reduce 275 - FUNCTION reduce 275 - RPAREN reduce 275 - OBJECT reduce 275 - LBRACKET reduce 275 - VAR reduce 275 - RBRACKET reduce 275 - NUMBER reduce 275 - RSQBRACKET reduce 275 - KILLS reduce 275 - TRGCONST reduce 275 - L2V reduce 275 - MAPSTRING reduce 275 - UNIT reduce 275 - SWITCH reduce 275 - LOCATION reduce 275 - STATTXTTBL reduce 275 - VARRAY reduce 275 - STATIC reduce 275 - CONST reduce 275 - INC reduce 275 - DEC reduce 275 - ONCE reduce 275 - IF reduce 275 - SWITCHCASE reduce 275 - CASE reduce 275 - DEFAULT reduce 275 - WHILE reduce 275 - FOR reduce 275 - FOREACH reduce 275 - CONTINUE reduce 275 - BREAK reduce 275 - RETURN reduce 275 - ACTIONNAME reduce 275 +State 174: + (315) constActionList ::= constAction * + + $ reduce 315 + ELSE reduce 315 + QMARK reduce 315 + COMMA reduce 315 + LOR reduce 315 + LAND reduce 315 + LNOT reduce 315 + EQ reduce 315 + LE reduce 315 + LT reduce 315 + GE reduce 315 + GT reduce 315 + NE reduce 315 + BITOR reduce 315 + BITXOR reduce 315 + BITAND reduce 315 + LSHIFT reduce 315 + RSHIFT reduce 315 + PLUS reduce 315 + MINUS reduce 315 + DIVIDE reduce 315 + MULTIPLY reduce 315 + MOD reduce 315 + BITNOT reduce 315 + LPAREN reduce 315 + SEMICOLON reduce 315 + IMPORT reduce 315 + NAME reduce 315 + COLON reduce 315 + FUNCTION reduce 315 + RPAREN reduce 315 + OBJECT reduce 315 + LBRACKET reduce 315 + VAR reduce 315 + RBRACKET reduce 315 + RSQBRACKET reduce 315 + L2V reduce 315 + STATIC reduce 315 + CONST reduce 315 + INC reduce 315 + DEC reduce 315 + ONCE reduce 315 + IF reduce 315 + SWITCHCASE reduce 315 + CASE reduce 315 + DEFAULT reduce 315 + WHILE reduce 315 + FOR reduce 315 + FOREACH reduce 315 + CONTINUE reduce 315 + BREAK reduce 315 + RETURN reduce 315 + ACTIONNAME reduce 315 -State 161: - (274) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * - - $ reduce 274 - ELSE reduce 274 - QMARK reduce 274 - COMMA reduce 274 - LOR reduce 274 - LAND reduce 274 - EQ reduce 274 - LE reduce 274 - LT reduce 274 - GE reduce 274 - GT reduce 274 - NE reduce 274 - BITOR reduce 274 - BITXOR reduce 274 - BITAND reduce 274 - LSHIFT reduce 274 - RSHIFT reduce 274 - PLUS reduce 274 - MINUS reduce 274 - DIVIDE reduce 274 - MULTIPLY reduce 274 - MOD reduce 274 - BITNOT reduce 274 - LPAREN reduce 274 - LSQBRACKET reduce 274 - PERIOD reduce 274 - SEMICOLON reduce 274 - IMPORT reduce 274 - NAME reduce 274 - COLON reduce 274 - FUNCTION reduce 274 - RPAREN reduce 274 - OBJECT reduce 274 - LBRACKET reduce 274 - VAR reduce 274 - RBRACKET reduce 274 - NUMBER reduce 274 - RSQBRACKET reduce 274 - KILLS reduce 274 - TRGCONST reduce 274 - L2V reduce 274 - MAPSTRING reduce 274 - UNIT reduce 274 - SWITCH reduce 274 - LOCATION reduce 274 - STATTXTTBL reduce 274 - VARRAY reduce 274 - STATIC reduce 274 - CONST reduce 274 - INC reduce 274 - DEC reduce 274 - ONCE reduce 274 - IF reduce 274 - SWITCHCASE reduce 274 - CASE reduce 274 - DEFAULT reduce 274 - WHILE reduce 274 - FOR reduce 274 - FOREACH reduce 274 - CONTINUE reduce 274 - BREAK reduce 274 - RETURN reduce 274 - ACTIONNAME reduce 274 +State 175: + (314) constAction ::= ACTIONNAME LPAREN RPAREN SEMICOLON * + + $ reduce 314 + ELSE reduce 314 + QMARK reduce 314 + COMMA reduce 314 + LOR reduce 314 + LAND reduce 314 + LNOT reduce 314 + EQ reduce 314 + LE reduce 314 + LT reduce 314 + GE reduce 314 + GT reduce 314 + NE reduce 314 + BITOR reduce 314 + BITXOR reduce 314 + BITAND reduce 314 + LSHIFT reduce 314 + RSHIFT reduce 314 + PLUS reduce 314 + MINUS reduce 314 + DIVIDE reduce 314 + MULTIPLY reduce 314 + MOD reduce 314 + BITNOT reduce 314 + LPAREN reduce 314 + SEMICOLON reduce 314 + IMPORT reduce 314 + NAME reduce 314 + COLON reduce 314 + FUNCTION reduce 314 + RPAREN reduce 314 + OBJECT reduce 314 + LBRACKET reduce 314 + VAR reduce 314 + RBRACKET reduce 314 + RSQBRACKET reduce 314 + L2V reduce 314 + STATIC reduce 314 + CONST reduce 314 + INC reduce 314 + DEC reduce 314 + ONCE reduce 314 + IF reduce 314 + SWITCHCASE reduce 314 + CASE reduce 314 + DEFAULT reduce 314 + WHILE reduce 314 + FOR reduce 314 + FOREACH reduce 314 + CONTINUE reduce 314 + BREAK reduce 314 + RETURN reduce 314 + ACTIONNAME reduce 314 -State 162: - (272) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * - - $ reduce 272 - ELSE reduce 272 - QMARK reduce 272 - COMMA reduce 272 - LOR reduce 272 - LAND reduce 272 - EQ reduce 272 - LE reduce 272 - LT reduce 272 - GE reduce 272 - GT reduce 272 - NE reduce 272 - BITOR reduce 272 - BITXOR reduce 272 - BITAND reduce 272 - LSHIFT reduce 272 - RSHIFT reduce 272 - PLUS reduce 272 - MINUS reduce 272 - DIVIDE reduce 272 - MULTIPLY reduce 272 - MOD reduce 272 - BITNOT reduce 272 - LPAREN reduce 272 - LSQBRACKET reduce 272 - PERIOD reduce 272 - SEMICOLON reduce 272 - IMPORT reduce 272 - NAME reduce 272 - COLON reduce 272 - FUNCTION reduce 272 - RPAREN reduce 272 - OBJECT reduce 272 - LBRACKET reduce 272 - VAR reduce 272 - RBRACKET reduce 272 - NUMBER reduce 272 - RSQBRACKET reduce 272 - KILLS reduce 272 - TRGCONST reduce 272 - L2V reduce 272 - MAPSTRING reduce 272 - UNIT reduce 272 - SWITCH reduce 272 - LOCATION reduce 272 - STATTXTTBL reduce 272 - VARRAY reduce 272 - STATIC reduce 272 - CONST reduce 272 - INC reduce 272 - DEC reduce 272 - ONCE reduce 272 - IF reduce 272 - SWITCHCASE reduce 272 - CASE reduce 272 - DEFAULT reduce 272 - WHILE reduce 272 - FOR reduce 272 - FOREACH reduce 272 - CONTINUE reduce 272 - BREAK reduce 272 - RETURN reduce 272 - ACTIONNAME reduce 272 +State 176: + (312) actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 312 + ELSE reduce 312 + QMARK reduce 312 + COMMA reduce 312 + LOR reduce 312 + LAND reduce 312 + LNOT reduce 312 + EQ reduce 312 + LE reduce 312 + LT reduce 312 + GE reduce 312 + GT reduce 312 + NE reduce 312 + BITOR reduce 312 + BITXOR reduce 312 + BITAND reduce 312 + LSHIFT reduce 312 + RSHIFT reduce 312 + PLUS reduce 312 + MINUS reduce 312 + DIVIDE reduce 312 + MULTIPLY reduce 312 + MOD reduce 312 + BITNOT reduce 312 + LPAREN reduce 312 + SEMICOLON reduce 312 + IMPORT reduce 312 + NAME reduce 312 + COLON reduce 312 + FUNCTION reduce 312 + RPAREN reduce 312 + OBJECT reduce 312 + LBRACKET reduce 312 + VAR reduce 312 + RBRACKET reduce 312 + RSQBRACKET reduce 312 + L2V reduce 312 + STATIC reduce 312 + CONST reduce 312 + INC reduce 312 + DEC reduce 312 + ONCE reduce 312 + IF reduce 312 + SWITCHCASE reduce 312 + CASE reduce 312 + DEFAULT reduce 312 + WHILE reduce 312 + FOR reduce 312 + FOREACH reduce 312 + CONTINUE reduce 312 + BREAK reduce 312 + RETURN reduce 312 + ACTIONNAME reduce 312 -State 163: - (273) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * - - $ reduce 273 - ELSE reduce 273 - QMARK reduce 273 - COMMA reduce 273 - LOR reduce 273 - LAND reduce 273 - EQ reduce 273 - LE reduce 273 - LT reduce 273 - GE reduce 273 - GT reduce 273 - NE reduce 273 - BITOR reduce 273 - BITXOR reduce 273 - BITAND reduce 273 - LSHIFT reduce 273 - RSHIFT reduce 273 - PLUS reduce 273 - MINUS reduce 273 - DIVIDE reduce 273 - MULTIPLY reduce 273 - MOD reduce 273 - BITNOT reduce 273 - LPAREN reduce 273 - LSQBRACKET reduce 273 - PERIOD reduce 273 - SEMICOLON reduce 273 - IMPORT reduce 273 - NAME reduce 273 - COLON reduce 273 - FUNCTION reduce 273 - RPAREN reduce 273 - OBJECT reduce 273 - LBRACKET reduce 273 - VAR reduce 273 - RBRACKET reduce 273 - NUMBER reduce 273 - RSQBRACKET reduce 273 - KILLS reduce 273 - TRGCONST reduce 273 - L2V reduce 273 - MAPSTRING reduce 273 - UNIT reduce 273 - SWITCH reduce 273 - LOCATION reduce 273 - STATTXTTBL reduce 273 - VARRAY reduce 273 - STATIC reduce 273 - CONST reduce 273 - INC reduce 273 - DEC reduce 273 - ONCE reduce 273 - IF reduce 273 - SWITCHCASE reduce 273 - CASE reduce 273 - DEFAULT reduce 273 - WHILE reduce 273 - FOR reduce 273 - FOREACH reduce 273 - CONTINUE reduce 273 - BREAK reduce 273 - RETURN reduce 273 - ACTIONNAME reduce 273 +State 177: + (313) constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON * + + $ reduce 313 + ELSE reduce 313 + QMARK reduce 313 + COMMA reduce 313 + LOR reduce 313 + LAND reduce 313 + LNOT reduce 313 + EQ reduce 313 + LE reduce 313 + LT reduce 313 + GE reduce 313 + GT reduce 313 + NE reduce 313 + BITOR reduce 313 + BITXOR reduce 313 + BITAND reduce 313 + LSHIFT reduce 313 + RSHIFT reduce 313 + PLUS reduce 313 + MINUS reduce 313 + DIVIDE reduce 313 + MULTIPLY reduce 313 + MOD reduce 313 + BITNOT reduce 313 + LPAREN reduce 313 + SEMICOLON reduce 313 + IMPORT reduce 313 + NAME reduce 313 + COLON reduce 313 + FUNCTION reduce 313 + RPAREN reduce 313 + OBJECT reduce 313 + LBRACKET reduce 313 + VAR reduce 313 + RBRACKET reduce 313 + RSQBRACKET reduce 313 + L2V reduce 313 + STATIC reduce 313 + CONST reduce 313 + INC reduce 313 + DEC reduce 313 + ONCE reduce 313 + IF reduce 313 + SWITCHCASE reduce 313 + CASE reduce 313 + DEFAULT reduce 313 + WHILE reduce 313 + FOR reduce 313 + FOREACH reduce 313 + CONTINUE reduce 313 + BREAK reduce 313 + RETURN reduce 313 + ACTIONNAME reduce 313 -State 164: - (266) foreach_stmt ::= foreach_header RPAREN stmt * +State 178: + (306) foreach_stmt ::= foreach_header RPAREN stmt * + + $ reduce 306 + ELSE reduce 306 + QMARK reduce 306 + COMMA reduce 306 + LOR reduce 306 + LAND reduce 306 + LNOT reduce 306 + EQ reduce 306 + LE reduce 306 + LT reduce 306 + GE reduce 306 + GT reduce 306 + NE reduce 306 + BITOR reduce 306 + BITXOR reduce 306 + BITAND reduce 306 + LSHIFT reduce 306 + RSHIFT reduce 306 + PLUS reduce 306 + MINUS reduce 306 + DIVIDE reduce 306 + MULTIPLY reduce 306 + MOD reduce 306 + BITNOT reduce 306 + LPAREN reduce 306 + SEMICOLON reduce 306 + IMPORT reduce 306 + NAME reduce 306 + COLON reduce 306 + FUNCTION reduce 306 + RPAREN reduce 306 + OBJECT reduce 306 + LBRACKET reduce 306 + VAR reduce 306 + RBRACKET reduce 306 + RSQBRACKET reduce 306 + L2V reduce 306 + STATIC reduce 306 + CONST reduce 306 + INC reduce 306 + DEC reduce 306 + ONCE reduce 306 + IF reduce 306 + SWITCHCASE reduce 306 + CASE reduce 306 + DEFAULT reduce 306 + WHILE reduce 306 + FOR reduce 306 + FOREACH reduce 306 + CONTINUE reduce 306 + BREAK reduce 306 + RETURN reduce 306 + ACTIONNAME reduce 306 + +State 179: + (303) for_stmt ::= for_header RPAREN stmt * + + $ reduce 303 + ELSE reduce 303 + QMARK reduce 303 + COMMA reduce 303 + LOR reduce 303 + LAND reduce 303 + LNOT reduce 303 + EQ reduce 303 + LE reduce 303 + LT reduce 303 + GE reduce 303 + GT reduce 303 + NE reduce 303 + BITOR reduce 303 + BITXOR reduce 303 + BITAND reduce 303 + LSHIFT reduce 303 + RSHIFT reduce 303 + PLUS reduce 303 + MINUS reduce 303 + DIVIDE reduce 303 + MULTIPLY reduce 303 + MOD reduce 303 + BITNOT reduce 303 + LPAREN reduce 303 + SEMICOLON reduce 303 + IMPORT reduce 303 + NAME reduce 303 + COLON reduce 303 + FUNCTION reduce 303 + RPAREN reduce 303 + OBJECT reduce 303 + LBRACKET reduce 303 + VAR reduce 303 + RBRACKET reduce 303 + RSQBRACKET reduce 303 + L2V reduce 303 + STATIC reduce 303 + CONST reduce 303 + INC reduce 303 + DEC reduce 303 + ONCE reduce 303 + IF reduce 303 + SWITCHCASE reduce 303 + CASE reduce 303 + DEFAULT reduce 303 + WHILE reduce 303 + FOR reduce 303 + FOREACH reduce 303 + CONTINUE reduce 303 + BREAK reduce 303 + RETURN reduce 303 + ACTIONNAME reduce 303 + +State 180: + (286) while_stmt ::= while_header RPAREN stmt * + + $ reduce 286 + ELSE reduce 286 + QMARK reduce 286 + COMMA reduce 286 + LOR reduce 286 + LAND reduce 286 + LNOT reduce 286 + EQ reduce 286 + LE reduce 286 + LT reduce 286 + GE reduce 286 + GT reduce 286 + NE reduce 286 + BITOR reduce 286 + BITXOR reduce 286 + BITAND reduce 286 + LSHIFT reduce 286 + RSHIFT reduce 286 + PLUS reduce 286 + MINUS reduce 286 + DIVIDE reduce 286 + MULTIPLY reduce 286 + MOD reduce 286 + BITNOT reduce 286 + LPAREN reduce 286 + SEMICOLON reduce 286 + IMPORT reduce 286 + NAME reduce 286 + COLON reduce 286 + FUNCTION reduce 286 + RPAREN reduce 286 + OBJECT reduce 286 + LBRACKET reduce 286 + VAR reduce 286 + RBRACKET reduce 286 + RSQBRACKET reduce 286 + L2V reduce 286 + STATIC reduce 286 + CONST reduce 286 + INC reduce 286 + DEC reduce 286 + ONCE reduce 286 + IF reduce 286 + SWITCHCASE reduce 286 + CASE reduce 286 + DEFAULT reduce 286 + WHILE reduce 286 + FOR reduce 286 + FOREACH reduce 286 + CONTINUE reduce 286 + BREAK reduce 286 + RETURN reduce 286 + ACTIONNAME reduce 286 + +State 181: + (283) switchcase_stmt ::= switchcase_block RBRACKET * + + $ reduce 283 + ELSE reduce 283 + QMARK reduce 283 + COMMA reduce 283 + LOR reduce 283 + LAND reduce 283 + LNOT reduce 283 + EQ reduce 283 + LE reduce 283 + LT reduce 283 + GE reduce 283 + GT reduce 283 + NE reduce 283 + BITOR reduce 283 + BITXOR reduce 283 + BITAND reduce 283 + LSHIFT reduce 283 + RSHIFT reduce 283 + PLUS reduce 283 + MINUS reduce 283 + DIVIDE reduce 283 + MULTIPLY reduce 283 + MOD reduce 283 + BITNOT reduce 283 + LPAREN reduce 283 + SEMICOLON reduce 283 + IMPORT reduce 283 + NAME reduce 283 + COLON reduce 283 + FUNCTION reduce 283 + RPAREN reduce 283 + OBJECT reduce 283 + LBRACKET reduce 283 + VAR reduce 283 + RBRACKET reduce 283 + RSQBRACKET reduce 283 + L2V reduce 283 + STATIC reduce 283 + CONST reduce 283 + INC reduce 283 + DEC reduce 283 + ONCE reduce 283 + IF reduce 283 + SWITCHCASE reduce 283 + CASE reduce 283 + DEFAULT reduce 283 + WHILE reduce 283 + FOR reduce 283 + FOREACH reduce 283 + CONTINUE reduce 283 + BREAK reduce 283 + RETURN reduce 283 + ACTIONNAME reduce 283 + +State 182: + (266) if_block ::= if_block elif_header RPAREN stmt * $ reduce 266 ELSE reduce 266 @@ -17394,6 +19614,7 @@ State 164: COMMA reduce 266 LOR reduce 266 LAND reduce 266 + LNOT reduce 266 EQ reduce 266 LE reduce 266 LT reduce 266 @@ -17412,8 +19633,6 @@ State 164: MOD reduce 266 BITNOT reduce 266 LPAREN reduce 266 - LSQBRACKET reduce 266 - PERIOD reduce 266 SEMICOLON reduce 266 IMPORT reduce 266 NAME reduce 266 @@ -17424,17 +19643,8 @@ State 164: LBRACKET reduce 266 VAR reduce 266 RBRACKET reduce 266 - NUMBER reduce 266 RSQBRACKET reduce 266 - KILLS reduce 266 - TRGCONST reduce 266 L2V reduce 266 - MAPSTRING reduce 266 - UNIT reduce 266 - SWITCH reduce 266 - LOCATION reduce 266 - STATTXTTBL reduce 266 - VARRAY reduce 266 STATIC reduce 266 CONST reduce 266 INC reduce 266 @@ -17452,8 +19662,8 @@ State 164: RETURN reduce 266 ACTIONNAME reduce 266 -State 165: - (263) for_stmt ::= for_header RPAREN stmt * +State 183: + (263) if_block ::= if_header RPAREN stmt * $ reduce 263 ELSE reduce 263 @@ -17461,6 +19671,7 @@ State 165: COMMA reduce 263 LOR reduce 263 LAND reduce 263 + LNOT reduce 263 EQ reduce 263 LE reduce 263 LT reduce 263 @@ -17479,8 +19690,6 @@ State 165: MOD reduce 263 BITNOT reduce 263 LPAREN reduce 263 - LSQBRACKET reduce 263 - PERIOD reduce 263 SEMICOLON reduce 263 IMPORT reduce 263 NAME reduce 263 @@ -17491,17 +19700,8 @@ State 165: LBRACKET reduce 263 VAR reduce 263 RBRACKET reduce 263 - NUMBER reduce 263 RSQBRACKET reduce 263 - KILLS reduce 263 - TRGCONST reduce 263 L2V reduce 263 - MAPSTRING reduce 263 - UNIT reduce 263 - SWITCH reduce 263 - LOCATION reduce 263 - STATTXTTBL reduce 263 - VARRAY reduce 263 STATIC reduce 263 CONST reduce 263 INC reduce 263 @@ -17519,477 +19719,521 @@ State 165: RETURN reduce 263 ACTIONNAME reduce 263 -State 166: - (246) while_stmt ::= while_header RPAREN stmt * - - $ reduce 246 - ELSE reduce 246 - QMARK reduce 246 - COMMA reduce 246 - LOR reduce 246 - LAND reduce 246 - EQ reduce 246 - LE reduce 246 - LT reduce 246 - GE reduce 246 - GT reduce 246 - NE reduce 246 - BITOR reduce 246 - BITXOR reduce 246 - BITAND reduce 246 - LSHIFT reduce 246 - RSHIFT reduce 246 - PLUS reduce 246 - MINUS reduce 246 - DIVIDE reduce 246 - MULTIPLY reduce 246 - MOD reduce 246 - BITNOT reduce 246 - LPAREN reduce 246 - LSQBRACKET reduce 246 - PERIOD reduce 246 - SEMICOLON reduce 246 - IMPORT reduce 246 - NAME reduce 246 - COLON reduce 246 - FUNCTION reduce 246 - RPAREN reduce 246 - OBJECT reduce 246 - LBRACKET reduce 246 - VAR reduce 246 - RBRACKET reduce 246 - NUMBER reduce 246 - RSQBRACKET reduce 246 - KILLS reduce 246 - TRGCONST reduce 246 - L2V reduce 246 - MAPSTRING reduce 246 - UNIT reduce 246 - SWITCH reduce 246 - LOCATION reduce 246 - STATTXTTBL reduce 246 - VARRAY reduce 246 - STATIC reduce 246 - CONST reduce 246 - INC reduce 246 - DEC reduce 246 - ONCE reduce 246 - IF reduce 246 - SWITCHCASE reduce 246 - CASE reduce 246 - DEFAULT reduce 246 - WHILE reduce 246 - FOR reduce 246 - FOREACH reduce 246 - CONTINUE reduce 246 - BREAK reduce 246 - RETURN reduce 246 - ACTIONNAME reduce 246 +State 184: + (260) once_stmt ::= once_block * + + $ reduce 260 + ELSE reduce 260 + QMARK reduce 260 + COMMA reduce 260 + LOR reduce 260 + LAND reduce 260 + LNOT reduce 260 + EQ reduce 260 + LE reduce 260 + LT reduce 260 + GE reduce 260 + GT reduce 260 + NE reduce 260 + BITOR reduce 260 + BITXOR reduce 260 + BITAND reduce 260 + LSHIFT reduce 260 + RSHIFT reduce 260 + PLUS reduce 260 + MINUS reduce 260 + DIVIDE reduce 260 + MULTIPLY reduce 260 + MOD reduce 260 + BITNOT reduce 260 + LPAREN reduce 260 + SEMICOLON reduce 260 + IMPORT reduce 260 + NAME reduce 260 + COLON reduce 260 + FUNCTION reduce 260 + RPAREN reduce 260 + OBJECT reduce 260 + LBRACKET reduce 260 + VAR reduce 260 + RBRACKET reduce 260 + RSQBRACKET reduce 260 + L2V reduce 260 + STATIC reduce 260 + CONST reduce 260 + INC reduce 260 + DEC reduce 260 + ONCE reduce 260 + IF reduce 260 + SWITCHCASE reduce 260 + CASE reduce 260 + DEFAULT reduce 260 + WHILE reduce 260 + FOR reduce 260 + FOREACH reduce 260 + CONTINUE reduce 260 + BREAK reduce 260 + RETURN reduce 260 + ACTIONNAME reduce 260 -State 167: - (243) switchcase_stmt ::= switchcase_block RBRACKET * +State 185: + (259) once_block ::= once_nocond stmt * + + $ reduce 259 + ELSE reduce 259 + QMARK reduce 259 + COMMA reduce 259 + LOR reduce 259 + LAND reduce 259 + LNOT reduce 259 + EQ reduce 259 + LE reduce 259 + LT reduce 259 + GE reduce 259 + GT reduce 259 + NE reduce 259 + BITOR reduce 259 + BITXOR reduce 259 + BITAND reduce 259 + LSHIFT reduce 259 + RSHIFT reduce 259 + PLUS reduce 259 + MINUS reduce 259 + DIVIDE reduce 259 + MULTIPLY reduce 259 + MOD reduce 259 + BITNOT reduce 259 + LPAREN reduce 259 + SEMICOLON reduce 259 + IMPORT reduce 259 + NAME reduce 259 + COLON reduce 259 + FUNCTION reduce 259 + RPAREN reduce 259 + OBJECT reduce 259 + LBRACKET reduce 259 + VAR reduce 259 + RBRACKET reduce 259 + RSQBRACKET reduce 259 + L2V reduce 259 + STATIC reduce 259 + CONST reduce 259 + INC reduce 259 + DEC reduce 259 + ONCE reduce 259 + IF reduce 259 + SWITCHCASE reduce 259 + CASE reduce 259 + DEFAULT reduce 259 + WHILE reduce 259 + FOR reduce 259 + FOREACH reduce 259 + CONTINUE reduce 259 + BREAK reduce 259 + RETURN reduce 259 + ACTIONNAME reduce 259 - $ reduce 243 - ELSE reduce 243 - QMARK reduce 243 - COMMA reduce 243 - LOR reduce 243 - LAND reduce 243 - EQ reduce 243 - LE reduce 243 - LT reduce 243 - GE reduce 243 - GT reduce 243 - NE reduce 243 - BITOR reduce 243 - BITXOR reduce 243 - BITAND reduce 243 - LSHIFT reduce 243 - RSHIFT reduce 243 - PLUS reduce 243 - MINUS reduce 243 - DIVIDE reduce 243 - MULTIPLY reduce 243 - MOD reduce 243 - BITNOT reduce 243 - LPAREN reduce 243 - LSQBRACKET reduce 243 - PERIOD reduce 243 - SEMICOLON reduce 243 - IMPORT reduce 243 - NAME reduce 243 - COLON reduce 243 - FUNCTION reduce 243 - RPAREN reduce 243 - OBJECT reduce 243 - LBRACKET reduce 243 - VAR reduce 243 - RBRACKET reduce 243 - NUMBER reduce 243 - RSQBRACKET reduce 243 - KILLS reduce 243 - TRGCONST reduce 243 - L2V reduce 243 - MAPSTRING reduce 243 - UNIT reduce 243 - SWITCH reduce 243 - LOCATION reduce 243 - STATTXTTBL reduce 243 - VARRAY reduce 243 - STATIC reduce 243 - CONST reduce 243 - INC reduce 243 - DEC reduce 243 - ONCE reduce 243 - IF reduce 243 - SWITCHCASE reduce 243 - CASE reduce 243 - DEFAULT reduce 243 - WHILE reduce 243 - FOR reduce 243 - FOREACH reduce 243 - CONTINUE reduce 243 - BREAK reduce 243 - RETURN reduce 243 - ACTIONNAME reduce 243 +State 186: + (257) once_block ::= once_header RPAREN stmt * -State 168: - (226) if_block ::= if_block elif_header RPAREN stmt * + $ reduce 257 + ELSE reduce 257 + QMARK reduce 257 + COMMA reduce 257 + LOR reduce 257 + LAND reduce 257 + LNOT reduce 257 + EQ reduce 257 + LE reduce 257 + LT reduce 257 + GE reduce 257 + GT reduce 257 + NE reduce 257 + BITOR reduce 257 + BITXOR reduce 257 + BITAND reduce 257 + LSHIFT reduce 257 + RSHIFT reduce 257 + PLUS reduce 257 + MINUS reduce 257 + DIVIDE reduce 257 + MULTIPLY reduce 257 + MOD reduce 257 + BITNOT reduce 257 + LPAREN reduce 257 + SEMICOLON reduce 257 + IMPORT reduce 257 + NAME reduce 257 + COLON reduce 257 + FUNCTION reduce 257 + RPAREN reduce 257 + OBJECT reduce 257 + LBRACKET reduce 257 + VAR reduce 257 + RBRACKET reduce 257 + RSQBRACKET reduce 257 + L2V reduce 257 + STATIC reduce 257 + CONST reduce 257 + INC reduce 257 + DEC reduce 257 + ONCE reduce 257 + IF reduce 257 + SWITCHCASE reduce 257 + CASE reduce 257 + DEFAULT reduce 257 + WHILE reduce 257 + FOR reduce 257 + FOREACH reduce 257 + CONTINUE reduce 257 + BREAK reduce 257 + RETURN reduce 257 + ACTIONNAME reduce 257 - $ reduce 226 - ELSE reduce 226 - QMARK reduce 226 - COMMA reduce 226 - LOR reduce 226 - LAND reduce 226 - EQ reduce 226 - LE reduce 226 - LT reduce 226 - GE reduce 226 - GT reduce 226 - NE reduce 226 - BITOR reduce 226 - BITXOR reduce 226 - BITAND reduce 226 - LSHIFT reduce 226 - RSHIFT reduce 226 - PLUS reduce 226 - MINUS reduce 226 - DIVIDE reduce 226 - MULTIPLY reduce 226 - MOD reduce 226 - BITNOT reduce 226 - LPAREN reduce 226 - LSQBRACKET reduce 226 - PERIOD reduce 226 - SEMICOLON reduce 226 - IMPORT reduce 226 - NAME reduce 226 - COLON reduce 226 - FUNCTION reduce 226 - RPAREN reduce 226 - OBJECT reduce 226 - LBRACKET reduce 226 - VAR reduce 226 - RBRACKET reduce 226 - NUMBER reduce 226 - RSQBRACKET reduce 226 - KILLS reduce 226 - TRGCONST reduce 226 - L2V reduce 226 - MAPSTRING reduce 226 - UNIT reduce 226 - SWITCH reduce 226 - LOCATION reduce 226 - STATTXTTBL reduce 226 - VARRAY reduce 226 - STATIC reduce 226 - CONST reduce 226 - INC reduce 226 - DEC reduce 226 - ONCE reduce 226 - IF reduce 226 - SWITCHCASE reduce 226 - CASE reduce 226 - DEFAULT reduce 226 - WHILE reduce 226 - FOR reduce 226 - FOREACH reduce 226 - CONTINUE reduce 226 - BREAK reduce 226 - RETURN reduce 226 - ACTIONNAME reduce 226 +State 187: + (64) bodyStmt ::= return_stmt SEMICOLON * -State 169: - (223) if_block ::= if_header RPAREN stmt * + $ reduce 64 + ELSE reduce 64 + QMARK reduce 64 + COMMA reduce 64 + LOR reduce 64 + LAND reduce 64 + LNOT reduce 64 + EQ reduce 64 + LE reduce 64 + LT reduce 64 + GE reduce 64 + GT reduce 64 + NE reduce 64 + BITOR reduce 64 + BITXOR reduce 64 + BITAND reduce 64 + LSHIFT reduce 64 + RSHIFT reduce 64 + PLUS reduce 64 + MINUS reduce 64 + DIVIDE reduce 64 + MULTIPLY reduce 64 + MOD reduce 64 + BITNOT reduce 64 + LPAREN reduce 64 + SEMICOLON reduce 64 + IMPORT reduce 64 + NAME reduce 64 + COLON reduce 64 + FUNCTION reduce 64 + RPAREN reduce 64 + OBJECT reduce 64 + LBRACKET reduce 64 + VAR reduce 64 + RBRACKET reduce 64 + RSQBRACKET reduce 64 + L2V reduce 64 + STATIC reduce 64 + CONST reduce 64 + INC reduce 64 + DEC reduce 64 + ONCE reduce 64 + IF reduce 64 + SWITCHCASE reduce 64 + CASE reduce 64 + DEFAULT reduce 64 + WHILE reduce 64 + FOR reduce 64 + FOREACH reduce 64 + CONTINUE reduce 64 + BREAK reduce 64 + RETURN reduce 64 + ACTIONNAME reduce 64 - $ reduce 223 - ELSE reduce 223 - QMARK reduce 223 - COMMA reduce 223 - LOR reduce 223 - LAND reduce 223 - EQ reduce 223 - LE reduce 223 - LT reduce 223 - GE reduce 223 - GT reduce 223 - NE reduce 223 - BITOR reduce 223 - BITXOR reduce 223 - BITAND reduce 223 - LSHIFT reduce 223 - RSHIFT reduce 223 - PLUS reduce 223 - MINUS reduce 223 - DIVIDE reduce 223 - MULTIPLY reduce 223 - MOD reduce 223 - BITNOT reduce 223 - LPAREN reduce 223 - LSQBRACKET reduce 223 - PERIOD reduce 223 - SEMICOLON reduce 223 - IMPORT reduce 223 - NAME reduce 223 - COLON reduce 223 - FUNCTION reduce 223 - RPAREN reduce 223 - OBJECT reduce 223 - LBRACKET reduce 223 - VAR reduce 223 - RBRACKET reduce 223 - NUMBER reduce 223 - RSQBRACKET reduce 223 - KILLS reduce 223 - TRGCONST reduce 223 - L2V reduce 223 - MAPSTRING reduce 223 - UNIT reduce 223 - SWITCH reduce 223 - LOCATION reduce 223 - STATTXTTBL reduce 223 - VARRAY reduce 223 - STATIC reduce 223 - CONST reduce 223 - INC reduce 223 - DEC reduce 223 - ONCE reduce 223 - IF reduce 223 - SWITCHCASE reduce 223 - CASE reduce 223 - DEFAULT reduce 223 - WHILE reduce 223 - FOR reduce 223 - FOREACH reduce 223 - CONTINUE reduce 223 - BREAK reduce 223 - RETURN reduce 223 - ACTIONNAME reduce 223 +State 188: + (63) bodyStmt ::= break_stmt SEMICOLON * -State 170: - (220) once_stmt ::= once_block * + $ reduce 63 + ELSE reduce 63 + QMARK reduce 63 + COMMA reduce 63 + LOR reduce 63 + LAND reduce 63 + LNOT reduce 63 + EQ reduce 63 + LE reduce 63 + LT reduce 63 + GE reduce 63 + GT reduce 63 + NE reduce 63 + BITOR reduce 63 + BITXOR reduce 63 + BITAND reduce 63 + LSHIFT reduce 63 + RSHIFT reduce 63 + PLUS reduce 63 + MINUS reduce 63 + DIVIDE reduce 63 + MULTIPLY reduce 63 + MOD reduce 63 + BITNOT reduce 63 + LPAREN reduce 63 + SEMICOLON reduce 63 + IMPORT reduce 63 + NAME reduce 63 + COLON reduce 63 + FUNCTION reduce 63 + RPAREN reduce 63 + OBJECT reduce 63 + LBRACKET reduce 63 + VAR reduce 63 + RBRACKET reduce 63 + RSQBRACKET reduce 63 + L2V reduce 63 + STATIC reduce 63 + CONST reduce 63 + INC reduce 63 + DEC reduce 63 + ONCE reduce 63 + IF reduce 63 + SWITCHCASE reduce 63 + CASE reduce 63 + DEFAULT reduce 63 + WHILE reduce 63 + FOR reduce 63 + FOREACH reduce 63 + CONTINUE reduce 63 + BREAK reduce 63 + RETURN reduce 63 + ACTIONNAME reduce 63 - $ reduce 220 - ELSE reduce 220 - QMARK reduce 220 - COMMA reduce 220 - LOR reduce 220 - LAND reduce 220 - EQ reduce 220 - LE reduce 220 - LT reduce 220 - GE reduce 220 - GT reduce 220 - NE reduce 220 - BITOR reduce 220 - BITXOR reduce 220 - BITAND reduce 220 - LSHIFT reduce 220 - RSHIFT reduce 220 - PLUS reduce 220 - MINUS reduce 220 - DIVIDE reduce 220 - MULTIPLY reduce 220 - MOD reduce 220 - BITNOT reduce 220 - LPAREN reduce 220 - LSQBRACKET reduce 220 - PERIOD reduce 220 - SEMICOLON reduce 220 - IMPORT reduce 220 - NAME reduce 220 - COLON reduce 220 - FUNCTION reduce 220 - RPAREN reduce 220 - OBJECT reduce 220 - LBRACKET reduce 220 - VAR reduce 220 - RBRACKET reduce 220 - NUMBER reduce 220 - RSQBRACKET reduce 220 - KILLS reduce 220 - TRGCONST reduce 220 - L2V reduce 220 - MAPSTRING reduce 220 - UNIT reduce 220 - SWITCH reduce 220 - LOCATION reduce 220 - STATTXTTBL reduce 220 - VARRAY reduce 220 - STATIC reduce 220 - CONST reduce 220 - INC reduce 220 - DEC reduce 220 - ONCE reduce 220 - IF reduce 220 - SWITCHCASE reduce 220 - CASE reduce 220 - DEFAULT reduce 220 - WHILE reduce 220 - FOR reduce 220 - FOREACH reduce 220 - CONTINUE reduce 220 - BREAK reduce 220 - RETURN reduce 220 - ACTIONNAME reduce 220 +State 189: + (62) bodyStmt ::= continue_stmt SEMICOLON * -State 171: - (219) once_block ::= once_nocond stmt * + $ reduce 62 + ELSE reduce 62 + QMARK reduce 62 + COMMA reduce 62 + LOR reduce 62 + LAND reduce 62 + LNOT reduce 62 + EQ reduce 62 + LE reduce 62 + LT reduce 62 + GE reduce 62 + GT reduce 62 + NE reduce 62 + BITOR reduce 62 + BITXOR reduce 62 + BITAND reduce 62 + LSHIFT reduce 62 + RSHIFT reduce 62 + PLUS reduce 62 + MINUS reduce 62 + DIVIDE reduce 62 + MULTIPLY reduce 62 + MOD reduce 62 + BITNOT reduce 62 + LPAREN reduce 62 + SEMICOLON reduce 62 + IMPORT reduce 62 + NAME reduce 62 + COLON reduce 62 + FUNCTION reduce 62 + RPAREN reduce 62 + OBJECT reduce 62 + LBRACKET reduce 62 + VAR reduce 62 + RBRACKET reduce 62 + RSQBRACKET reduce 62 + L2V reduce 62 + STATIC reduce 62 + CONST reduce 62 + INC reduce 62 + DEC reduce 62 + ONCE reduce 62 + IF reduce 62 + SWITCHCASE reduce 62 + CASE reduce 62 + DEFAULT reduce 62 + WHILE reduce 62 + FOR reduce 62 + FOREACH reduce 62 + CONTINUE reduce 62 + BREAK reduce 62 + RETURN reduce 62 + ACTIONNAME reduce 62 - $ reduce 219 - ELSE reduce 219 - QMARK reduce 219 - COMMA reduce 219 - LOR reduce 219 - LAND reduce 219 - EQ reduce 219 - LE reduce 219 - LT reduce 219 - GE reduce 219 - GT reduce 219 - NE reduce 219 - BITOR reduce 219 - BITXOR reduce 219 - BITAND reduce 219 - LSHIFT reduce 219 - RSHIFT reduce 219 - PLUS reduce 219 - MINUS reduce 219 - DIVIDE reduce 219 - MULTIPLY reduce 219 - MOD reduce 219 - BITNOT reduce 219 - LPAREN reduce 219 - LSQBRACKET reduce 219 - PERIOD reduce 219 - SEMICOLON reduce 219 - IMPORT reduce 219 - NAME reduce 219 - COLON reduce 219 - FUNCTION reduce 219 - RPAREN reduce 219 - OBJECT reduce 219 - LBRACKET reduce 219 - VAR reduce 219 - RBRACKET reduce 219 - NUMBER reduce 219 - RSQBRACKET reduce 219 - KILLS reduce 219 - TRGCONST reduce 219 - L2V reduce 219 - MAPSTRING reduce 219 - UNIT reduce 219 - SWITCH reduce 219 - LOCATION reduce 219 - STATTXTTBL reduce 219 - VARRAY reduce 219 - STATIC reduce 219 - CONST reduce 219 - INC reduce 219 - DEC reduce 219 - ONCE reduce 219 - IF reduce 219 - SWITCHCASE reduce 219 - CASE reduce 219 - DEFAULT reduce 219 - WHILE reduce 219 - FOR reduce 219 - FOREACH reduce 219 - CONTINUE reduce 219 - BREAK reduce 219 - RETURN reduce 219 - ACTIONNAME reduce 219 +State 190: + (61) bodyStmt ::= switchcase_stmt * + + $ reduce 61 + ELSE reduce 61 + QMARK reduce 61 + COMMA reduce 61 + LOR reduce 61 + LAND reduce 61 + LNOT reduce 61 + EQ reduce 61 + LE reduce 61 + LT reduce 61 + GE reduce 61 + GT reduce 61 + NE reduce 61 + BITOR reduce 61 + BITXOR reduce 61 + BITAND reduce 61 + LSHIFT reduce 61 + RSHIFT reduce 61 + PLUS reduce 61 + MINUS reduce 61 + DIVIDE reduce 61 + MULTIPLY reduce 61 + MOD reduce 61 + BITNOT reduce 61 + LPAREN reduce 61 + SEMICOLON reduce 61 + IMPORT reduce 61 + NAME reduce 61 + COLON reduce 61 + FUNCTION reduce 61 + RPAREN reduce 61 + OBJECT reduce 61 + LBRACKET reduce 61 + VAR reduce 61 + RBRACKET reduce 61 + RSQBRACKET reduce 61 + L2V reduce 61 + STATIC reduce 61 + CONST reduce 61 + INC reduce 61 + DEC reduce 61 + ONCE reduce 61 + IF reduce 61 + SWITCHCASE reduce 61 + CASE reduce 61 + DEFAULT reduce 61 + WHILE reduce 61 + FOR reduce 61 + FOREACH reduce 61 + CONTINUE reduce 61 + BREAK reduce 61 + RETURN reduce 61 + ACTIONNAME reduce 61 -State 172: - (217) once_block ::= once_header RPAREN stmt * +State 191: + (60) bodyStmt ::= foreach_stmt * + + $ reduce 60 + ELSE reduce 60 + QMARK reduce 60 + COMMA reduce 60 + LOR reduce 60 + LAND reduce 60 + LNOT reduce 60 + EQ reduce 60 + LE reduce 60 + LT reduce 60 + GE reduce 60 + GT reduce 60 + NE reduce 60 + BITOR reduce 60 + BITXOR reduce 60 + BITAND reduce 60 + LSHIFT reduce 60 + RSHIFT reduce 60 + PLUS reduce 60 + MINUS reduce 60 + DIVIDE reduce 60 + MULTIPLY reduce 60 + MOD reduce 60 + BITNOT reduce 60 + LPAREN reduce 60 + SEMICOLON reduce 60 + IMPORT reduce 60 + NAME reduce 60 + COLON reduce 60 + FUNCTION reduce 60 + RPAREN reduce 60 + OBJECT reduce 60 + LBRACKET reduce 60 + VAR reduce 60 + RBRACKET reduce 60 + RSQBRACKET reduce 60 + L2V reduce 60 + STATIC reduce 60 + CONST reduce 60 + INC reduce 60 + DEC reduce 60 + ONCE reduce 60 + IF reduce 60 + SWITCHCASE reduce 60 + CASE reduce 60 + DEFAULT reduce 60 + WHILE reduce 60 + FOR reduce 60 + FOREACH reduce 60 + CONTINUE reduce 60 + BREAK reduce 60 + RETURN reduce 60 + ACTIONNAME reduce 60 - $ reduce 217 - ELSE reduce 217 - QMARK reduce 217 - COMMA reduce 217 - LOR reduce 217 - LAND reduce 217 - EQ reduce 217 - LE reduce 217 - LT reduce 217 - GE reduce 217 - GT reduce 217 - NE reduce 217 - BITOR reduce 217 - BITXOR reduce 217 - BITAND reduce 217 - LSHIFT reduce 217 - RSHIFT reduce 217 - PLUS reduce 217 - MINUS reduce 217 - DIVIDE reduce 217 - MULTIPLY reduce 217 - MOD reduce 217 - BITNOT reduce 217 - LPAREN reduce 217 - LSQBRACKET reduce 217 - PERIOD reduce 217 - SEMICOLON reduce 217 - IMPORT reduce 217 - NAME reduce 217 - COLON reduce 217 - FUNCTION reduce 217 - RPAREN reduce 217 - OBJECT reduce 217 - LBRACKET reduce 217 - VAR reduce 217 - RBRACKET reduce 217 - NUMBER reduce 217 - RSQBRACKET reduce 217 - KILLS reduce 217 - TRGCONST reduce 217 - L2V reduce 217 - MAPSTRING reduce 217 - UNIT reduce 217 - SWITCH reduce 217 - LOCATION reduce 217 - STATTXTTBL reduce 217 - VARRAY reduce 217 - STATIC reduce 217 - CONST reduce 217 - INC reduce 217 - DEC reduce 217 - ONCE reduce 217 - IF reduce 217 - SWITCHCASE reduce 217 - CASE reduce 217 - DEFAULT reduce 217 - WHILE reduce 217 - FOR reduce 217 - FOREACH reduce 217 - CONTINUE reduce 217 - BREAK reduce 217 - RETURN reduce 217 - ACTIONNAME reduce 217 +State 192: + (59) bodyStmt ::= for_stmt * + + $ reduce 59 + ELSE reduce 59 + QMARK reduce 59 + COMMA reduce 59 + LOR reduce 59 + LAND reduce 59 + LNOT reduce 59 + EQ reduce 59 + LE reduce 59 + LT reduce 59 + GE reduce 59 + GT reduce 59 + NE reduce 59 + BITOR reduce 59 + BITXOR reduce 59 + BITAND reduce 59 + LSHIFT reduce 59 + RSHIFT reduce 59 + PLUS reduce 59 + MINUS reduce 59 + DIVIDE reduce 59 + MULTIPLY reduce 59 + MOD reduce 59 + BITNOT reduce 59 + LPAREN reduce 59 + SEMICOLON reduce 59 + IMPORT reduce 59 + NAME reduce 59 + COLON reduce 59 + FUNCTION reduce 59 + RPAREN reduce 59 + OBJECT reduce 59 + LBRACKET reduce 59 + VAR reduce 59 + RBRACKET reduce 59 + RSQBRACKET reduce 59 + L2V reduce 59 + STATIC reduce 59 + CONST reduce 59 + INC reduce 59 + DEC reduce 59 + ONCE reduce 59 + IF reduce 59 + SWITCHCASE reduce 59 + CASE reduce 59 + DEFAULT reduce 59 + WHILE reduce 59 + FOR reduce 59 + FOREACH reduce 59 + CONTINUE reduce 59 + BREAK reduce 59 + RETURN reduce 59 + ACTIONNAME reduce 59 -State 173: - (58) bodyStmt ::= return_stmt SEMICOLON * +State 193: + (58) bodyStmt ::= while_stmt * $ reduce 58 ELSE reduce 58 @@ -17997,6 +20241,7 @@ State 173: COMMA reduce 58 LOR reduce 58 LAND reduce 58 + LNOT reduce 58 EQ reduce 58 LE reduce 58 LT reduce 58 @@ -18015,8 +20260,6 @@ State 173: MOD reduce 58 BITNOT reduce 58 LPAREN reduce 58 - LSQBRACKET reduce 58 - PERIOD reduce 58 SEMICOLON reduce 58 IMPORT reduce 58 NAME reduce 58 @@ -18027,17 +20270,8 @@ State 173: LBRACKET reduce 58 VAR reduce 58 RBRACKET reduce 58 - NUMBER reduce 58 RSQBRACKET reduce 58 - KILLS reduce 58 - TRGCONST reduce 58 L2V reduce 58 - MAPSTRING reduce 58 - UNIT reduce 58 - SWITCH reduce 58 - LOCATION reduce 58 - STATTXTTBL reduce 58 - VARRAY reduce 58 STATIC reduce 58 CONST reduce 58 INC reduce 58 @@ -18055,8 +20289,8 @@ State 173: RETURN reduce 58 ACTIONNAME reduce 58 -State 174: - (57) bodyStmt ::= break_stmt SEMICOLON * +State 194: + (57) bodyStmt ::= if_stmt * $ reduce 57 ELSE reduce 57 @@ -18064,6 +20298,7 @@ State 174: COMMA reduce 57 LOR reduce 57 LAND reduce 57 + LNOT reduce 57 EQ reduce 57 LE reduce 57 LT reduce 57 @@ -18082,8 +20317,6 @@ State 174: MOD reduce 57 BITNOT reduce 57 LPAREN reduce 57 - LSQBRACKET reduce 57 - PERIOD reduce 57 SEMICOLON reduce 57 IMPORT reduce 57 NAME reduce 57 @@ -18094,17 +20327,8 @@ State 174: LBRACKET reduce 57 VAR reduce 57 RBRACKET reduce 57 - NUMBER reduce 57 RSQBRACKET reduce 57 - KILLS reduce 57 - TRGCONST reduce 57 L2V reduce 57 - MAPSTRING reduce 57 - UNIT reduce 57 - SWITCH reduce 57 - LOCATION reduce 57 - STATTXTTBL reduce 57 - VARRAY reduce 57 STATIC reduce 57 CONST reduce 57 INC reduce 57 @@ -18122,8 +20346,8 @@ State 174: RETURN reduce 57 ACTIONNAME reduce 57 -State 175: - (56) bodyStmt ::= continue_stmt SEMICOLON * +State 195: + (56) bodyStmt ::= once_stmt * $ reduce 56 ELSE reduce 56 @@ -18131,6 +20355,7 @@ State 175: COMMA reduce 56 LOR reduce 56 LAND reduce 56 + LNOT reduce 56 EQ reduce 56 LE reduce 56 LT reduce 56 @@ -18149,8 +20374,6 @@ State 175: MOD reduce 56 BITNOT reduce 56 LPAREN reduce 56 - LSQBRACKET reduce 56 - PERIOD reduce 56 SEMICOLON reduce 56 IMPORT reduce 56 NAME reduce 56 @@ -18161,17 +20384,8 @@ State 175: LBRACKET reduce 56 VAR reduce 56 RBRACKET reduce 56 - NUMBER reduce 56 RSQBRACKET reduce 56 - KILLS reduce 56 - TRGCONST reduce 56 L2V reduce 56 - MAPSTRING reduce 56 - UNIT reduce 56 - SWITCH reduce 56 - LOCATION reduce 56 - STATTXTTBL reduce 56 - VARRAY reduce 56 STATIC reduce 56 CONST reduce 56 INC reduce 56 @@ -18189,8 +20403,8 @@ State 175: RETURN reduce 56 ACTIONNAME reduce 56 -State 176: - (55) bodyStmt ::= switchcase_stmt * +State 196: + (55) bodyStmt ::= actionStmt * $ reduce 55 ELSE reduce 55 @@ -18198,6 +20412,7 @@ State 176: COMMA reduce 55 LOR reduce 55 LAND reduce 55 + LNOT reduce 55 EQ reduce 55 LE reduce 55 LT reduce 55 @@ -18216,8 +20431,6 @@ State 176: MOD reduce 55 BITNOT reduce 55 LPAREN reduce 55 - LSQBRACKET reduce 55 - PERIOD reduce 55 SEMICOLON reduce 55 IMPORT reduce 55 NAME reduce 55 @@ -18228,17 +20441,8 @@ State 176: LBRACKET reduce 55 VAR reduce 55 RBRACKET reduce 55 - NUMBER reduce 55 RSQBRACKET reduce 55 - KILLS reduce 55 - TRGCONST reduce 55 L2V reduce 55 - MAPSTRING reduce 55 - UNIT reduce 55 - SWITCH reduce 55 - LOCATION reduce 55 - STATTXTTBL reduce 55 - VARRAY reduce 55 STATIC reduce 55 CONST reduce 55 INC reduce 55 @@ -18256,8 +20460,8 @@ State 176: RETURN reduce 55 ACTIONNAME reduce 55 -State 177: - (54) bodyStmt ::= foreach_stmt * +State 197: + (54) bodyStmt ::= funcexprStmt SEMICOLON * $ reduce 54 ELSE reduce 54 @@ -18265,6 +20469,7 @@ State 177: COMMA reduce 54 LOR reduce 54 LAND reduce 54 + LNOT reduce 54 EQ reduce 54 LE reduce 54 LT reduce 54 @@ -18283,8 +20488,6 @@ State 177: MOD reduce 54 BITNOT reduce 54 LPAREN reduce 54 - LSQBRACKET reduce 54 - PERIOD reduce 54 SEMICOLON reduce 54 IMPORT reduce 54 NAME reduce 54 @@ -18295,17 +20498,8 @@ State 177: LBRACKET reduce 54 VAR reduce 54 RBRACKET reduce 54 - NUMBER reduce 54 RSQBRACKET reduce 54 - KILLS reduce 54 - TRGCONST reduce 54 L2V reduce 54 - MAPSTRING reduce 54 - UNIT reduce 54 - SWITCH reduce 54 - LOCATION reduce 54 - STATTXTTBL reduce 54 - VARRAY reduce 54 STATIC reduce 54 CONST reduce 54 INC reduce 54 @@ -18323,8 +20517,8 @@ State 177: RETURN reduce 54 ACTIONNAME reduce 54 -State 178: - (53) bodyStmt ::= for_stmt * +State 198: + (53) bodyStmt ::= assign_stmt SEMICOLON * $ reduce 53 ELSE reduce 53 @@ -18332,6 +20526,7 @@ State 178: COMMA reduce 53 LOR reduce 53 LAND reduce 53 + LNOT reduce 53 EQ reduce 53 LE reduce 53 LT reduce 53 @@ -18350,8 +20545,6 @@ State 178: MOD reduce 53 BITNOT reduce 53 LPAREN reduce 53 - LSQBRACKET reduce 53 - PERIOD reduce 53 SEMICOLON reduce 53 IMPORT reduce 53 NAME reduce 53 @@ -18362,17 +20555,8 @@ State 178: LBRACKET reduce 53 VAR reduce 53 RBRACKET reduce 53 - NUMBER reduce 53 RSQBRACKET reduce 53 - KILLS reduce 53 - TRGCONST reduce 53 L2V reduce 53 - MAPSTRING reduce 53 - UNIT reduce 53 - SWITCH reduce 53 - LOCATION reduce 53 - STATTXTTBL reduce 53 - VARRAY reduce 53 STATIC reduce 53 CONST reduce 53 INC reduce 53 @@ -18390,8 +20574,8 @@ State 178: RETURN reduce 53 ACTIONNAME reduce 53 -State 179: - (52) bodyStmt ::= while_stmt * +State 199: + (52) bodyStmt ::= cdef_stmt SEMICOLON * $ reduce 52 ELSE reduce 52 @@ -18399,6 +20583,7 @@ State 179: COMMA reduce 52 LOR reduce 52 LAND reduce 52 + LNOT reduce 52 EQ reduce 52 LE reduce 52 LT reduce 52 @@ -18417,8 +20602,6 @@ State 179: MOD reduce 52 BITNOT reduce 52 LPAREN reduce 52 - LSQBRACKET reduce 52 - PERIOD reduce 52 SEMICOLON reduce 52 IMPORT reduce 52 NAME reduce 52 @@ -18429,17 +20612,8 @@ State 179: LBRACKET reduce 52 VAR reduce 52 RBRACKET reduce 52 - NUMBER reduce 52 RSQBRACKET reduce 52 - KILLS reduce 52 - TRGCONST reduce 52 L2V reduce 52 - MAPSTRING reduce 52 - UNIT reduce 52 - SWITCH reduce 52 - LOCATION reduce 52 - STATTXTTBL reduce 52 - VARRAY reduce 52 STATIC reduce 52 CONST reduce 52 INC reduce 52 @@ -18457,8 +20631,8 @@ State 179: RETURN reduce 52 ACTIONNAME reduce 52 -State 180: - (51) bodyStmt ::= if_stmt * +State 200: + (51) bodyStmt ::= vdefAssign_stmt SEMICOLON * $ reduce 51 ELSE reduce 51 @@ -18466,6 +20640,7 @@ State 180: COMMA reduce 51 LOR reduce 51 LAND reduce 51 + LNOT reduce 51 EQ reduce 51 LE reduce 51 LT reduce 51 @@ -18484,8 +20659,6 @@ State 180: MOD reduce 51 BITNOT reduce 51 LPAREN reduce 51 - LSQBRACKET reduce 51 - PERIOD reduce 51 SEMICOLON reduce 51 IMPORT reduce 51 NAME reduce 51 @@ -18496,17 +20669,8 @@ State 180: LBRACKET reduce 51 VAR reduce 51 RBRACKET reduce 51 - NUMBER reduce 51 RSQBRACKET reduce 51 - KILLS reduce 51 - TRGCONST reduce 51 L2V reduce 51 - MAPSTRING reduce 51 - UNIT reduce 51 - SWITCH reduce 51 - LOCATION reduce 51 - STATTXTTBL reduce 51 - VARRAY reduce 51 STATIC reduce 51 CONST reduce 51 INC reduce 51 @@ -18524,8 +20688,8 @@ State 180: RETURN reduce 51 ACTIONNAME reduce 51 -State 181: - (50) bodyStmt ::= once_stmt * +State 201: + (50) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * $ reduce 50 ELSE reduce 50 @@ -18533,6 +20697,7 @@ State 181: COMMA reduce 50 LOR reduce 50 LAND reduce 50 + LNOT reduce 50 EQ reduce 50 LE reduce 50 LT reduce 50 @@ -18551,8 +20716,6 @@ State 181: MOD reduce 50 BITNOT reduce 50 LPAREN reduce 50 - LSQBRACKET reduce 50 - PERIOD reduce 50 SEMICOLON reduce 50 IMPORT reduce 50 NAME reduce 50 @@ -18563,17 +20726,8 @@ State 181: LBRACKET reduce 50 VAR reduce 50 RBRACKET reduce 50 - NUMBER reduce 50 RSQBRACKET reduce 50 - KILLS reduce 50 - TRGCONST reduce 50 L2V reduce 50 - MAPSTRING reduce 50 - UNIT reduce 50 - SWITCH reduce 50 - LOCATION reduce 50 - STATTXTTBL reduce 50 - VARRAY reduce 50 STATIC reduce 50 CONST reduce 50 INC reduce 50 @@ -18591,8 +20745,8 @@ State 181: RETURN reduce 50 ACTIONNAME reduce 50 -State 182: - (49) bodyStmt ::= actionStmt * +State 202: + (49) bodyStmt ::= vdef_stmt SEMICOLON * $ reduce 49 ELSE reduce 49 @@ -18600,6 +20754,7 @@ State 182: COMMA reduce 49 LOR reduce 49 LAND reduce 49 + LNOT reduce 49 EQ reduce 49 LE reduce 49 LT reduce 49 @@ -18618,8 +20773,6 @@ State 182: MOD reduce 49 BITNOT reduce 49 LPAREN reduce 49 - LSQBRACKET reduce 49 - PERIOD reduce 49 SEMICOLON reduce 49 IMPORT reduce 49 NAME reduce 49 @@ -18630,17 +20783,8 @@ State 182: LBRACKET reduce 49 VAR reduce 49 RBRACKET reduce 49 - NUMBER reduce 49 RSQBRACKET reduce 49 - KILLS reduce 49 - TRGCONST reduce 49 L2V reduce 49 - MAPSTRING reduce 49 - UNIT reduce 49 - SWITCH reduce 49 - LOCATION reduce 49 - STATTXTTBL reduce 49 - VARRAY reduce 49 STATIC reduce 49 CONST reduce 49 INC reduce 49 @@ -18658,8 +20802,8 @@ State 182: RETURN reduce 49 ACTIONNAME reduce 49 -State 183: - (48) bodyStmt ::= funcexprStmt SEMICOLON * +State 203: + (48) bodyStmt ::= SEMICOLON * $ reduce 48 ELSE reduce 48 @@ -18667,6 +20811,7 @@ State 183: COMMA reduce 48 LOR reduce 48 LAND reduce 48 + LNOT reduce 48 EQ reduce 48 LE reduce 48 LT reduce 48 @@ -18685,8 +20830,6 @@ State 183: MOD reduce 48 BITNOT reduce 48 LPAREN reduce 48 - LSQBRACKET reduce 48 - PERIOD reduce 48 SEMICOLON reduce 48 IMPORT reduce 48 NAME reduce 48 @@ -18697,17 +20840,8 @@ State 183: LBRACKET reduce 48 VAR reduce 48 RBRACKET reduce 48 - NUMBER reduce 48 RSQBRACKET reduce 48 - KILLS reduce 48 - TRGCONST reduce 48 L2V reduce 48 - MAPSTRING reduce 48 - UNIT reduce 48 - SWITCH reduce 48 - LOCATION reduce 48 - STATTXTTBL reduce 48 - VARRAY reduce 48 STATIC reduce 48 CONST reduce 48 INC reduce 48 @@ -18725,8 +20859,8 @@ State 183: RETURN reduce 48 ACTIONNAME reduce 48 -State 184: - (47) bodyStmt ::= assign_stmt SEMICOLON * +State 204: + (47) bodyStmt ::= blockStmt * $ reduce 47 ELSE reduce 47 @@ -18734,6 +20868,7 @@ State 184: COMMA reduce 47 LOR reduce 47 LAND reduce 47 + LNOT reduce 47 EQ reduce 47 LE reduce 47 LT reduce 47 @@ -18752,8 +20887,6 @@ State 184: MOD reduce 47 BITNOT reduce 47 LPAREN reduce 47 - LSQBRACKET reduce 47 - PERIOD reduce 47 SEMICOLON reduce 47 IMPORT reduce 47 NAME reduce 47 @@ -18764,17 +20897,8 @@ State 184: LBRACKET reduce 47 VAR reduce 47 RBRACKET reduce 47 - NUMBER reduce 47 RSQBRACKET reduce 47 - KILLS reduce 47 - TRGCONST reduce 47 L2V reduce 47 - MAPSTRING reduce 47 - UNIT reduce 47 - SWITCH reduce 47 - LOCATION reduce 47 - STATTXTTBL reduce 47 - VARRAY reduce 47 STATIC reduce 47 CONST reduce 47 INC reduce 47 @@ -18792,142 +20916,8 @@ State 184: RETURN reduce 47 ACTIONNAME reduce 47 -State 185: - (46) bodyStmt ::= cdef_stmt SEMICOLON * - - $ reduce 46 - ELSE reduce 46 - QMARK reduce 46 - COMMA reduce 46 - LOR reduce 46 - LAND reduce 46 - EQ reduce 46 - LE reduce 46 - LT reduce 46 - GE reduce 46 - GT reduce 46 - NE reduce 46 - BITOR reduce 46 - BITXOR reduce 46 - BITAND reduce 46 - LSHIFT reduce 46 - RSHIFT reduce 46 - PLUS reduce 46 - MINUS reduce 46 - DIVIDE reduce 46 - MULTIPLY reduce 46 - MOD reduce 46 - BITNOT reduce 46 - LPAREN reduce 46 - LSQBRACKET reduce 46 - PERIOD reduce 46 - SEMICOLON reduce 46 - IMPORT reduce 46 - NAME reduce 46 - COLON reduce 46 - FUNCTION reduce 46 - RPAREN reduce 46 - OBJECT reduce 46 - LBRACKET reduce 46 - VAR reduce 46 - RBRACKET reduce 46 - NUMBER reduce 46 - RSQBRACKET reduce 46 - KILLS reduce 46 - TRGCONST reduce 46 - L2V reduce 46 - MAPSTRING reduce 46 - UNIT reduce 46 - SWITCH reduce 46 - LOCATION reduce 46 - STATTXTTBL reduce 46 - VARRAY reduce 46 - STATIC reduce 46 - CONST reduce 46 - INC reduce 46 - DEC reduce 46 - ONCE reduce 46 - IF reduce 46 - SWITCHCASE reduce 46 - CASE reduce 46 - DEFAULT reduce 46 - WHILE reduce 46 - FOR reduce 46 - FOREACH reduce 46 - CONTINUE reduce 46 - BREAK reduce 46 - RETURN reduce 46 - ACTIONNAME reduce 46 - -State 186: - (45) bodyStmt ::= vdefAssign_stmt SEMICOLON * - - $ reduce 45 - ELSE reduce 45 - QMARK reduce 45 - COMMA reduce 45 - LOR reduce 45 - LAND reduce 45 - EQ reduce 45 - LE reduce 45 - LT reduce 45 - GE reduce 45 - GT reduce 45 - NE reduce 45 - BITOR reduce 45 - BITXOR reduce 45 - BITAND reduce 45 - LSHIFT reduce 45 - RSHIFT reduce 45 - PLUS reduce 45 - MINUS reduce 45 - DIVIDE reduce 45 - MULTIPLY reduce 45 - MOD reduce 45 - BITNOT reduce 45 - LPAREN reduce 45 - LSQBRACKET reduce 45 - PERIOD reduce 45 - SEMICOLON reduce 45 - IMPORT reduce 45 - NAME reduce 45 - COLON reduce 45 - FUNCTION reduce 45 - RPAREN reduce 45 - OBJECT reduce 45 - LBRACKET reduce 45 - VAR reduce 45 - RBRACKET reduce 45 - NUMBER reduce 45 - RSQBRACKET reduce 45 - KILLS reduce 45 - TRGCONST reduce 45 - L2V reduce 45 - MAPSTRING reduce 45 - UNIT reduce 45 - SWITCH reduce 45 - LOCATION reduce 45 - STATTXTTBL reduce 45 - VARRAY reduce 45 - STATIC reduce 45 - CONST reduce 45 - INC reduce 45 - DEC reduce 45 - ONCE reduce 45 - IF reduce 45 - SWITCHCASE reduce 45 - CASE reduce 45 - DEFAULT reduce 45 - WHILE reduce 45 - FOR reduce 45 - FOREACH reduce 45 - CONTINUE reduce 45 - BREAK reduce 45 - RETURN reduce 45 - ACTIONNAME reduce 45 - -State 187: - (44) bodyStmt ::= vdefAssignStatic_stmt SEMICOLON * +State 205: + (44) blockStmt ::= lbracket error RBRACKET * $ reduce 44 ELSE reduce 44 @@ -18935,6 +20925,7 @@ State 187: COMMA reduce 44 LOR reduce 44 LAND reduce 44 + LNOT reduce 44 EQ reduce 44 LE reduce 44 LT reduce 44 @@ -18953,8 +20944,6 @@ State 187: MOD reduce 44 BITNOT reduce 44 LPAREN reduce 44 - LSQBRACKET reduce 44 - PERIOD reduce 44 SEMICOLON reduce 44 IMPORT reduce 44 NAME reduce 44 @@ -18965,17 +20954,8 @@ State 187: LBRACKET reduce 44 VAR reduce 44 RBRACKET reduce 44 - NUMBER reduce 44 RSQBRACKET reduce 44 - KILLS reduce 44 - TRGCONST reduce 44 L2V reduce 44 - MAPSTRING reduce 44 - UNIT reduce 44 - SWITCH reduce 44 - LOCATION reduce 44 - STATTXTTBL reduce 44 - VARRAY reduce 44 STATIC reduce 44 CONST reduce 44 INC reduce 44 @@ -18993,8 +20973,8 @@ State 187: RETURN reduce 44 ACTIONNAME reduce 44 -State 188: - (43) bodyStmt ::= vdef_stmt SEMICOLON * +State 206: + (43) blockStmt ::= blockStmtSub rbracket * $ reduce 43 ELSE reduce 43 @@ -19002,6 +20982,7 @@ State 188: COMMA reduce 43 LOR reduce 43 LAND reduce 43 + LNOT reduce 43 EQ reduce 43 LE reduce 43 LT reduce 43 @@ -19020,8 +21001,6 @@ State 188: MOD reduce 43 BITNOT reduce 43 LPAREN reduce 43 - LSQBRACKET reduce 43 - PERIOD reduce 43 SEMICOLON reduce 43 IMPORT reduce 43 NAME reduce 43 @@ -19032,17 +21011,8 @@ State 188: LBRACKET reduce 43 VAR reduce 43 RBRACKET reduce 43 - NUMBER reduce 43 RSQBRACKET reduce 43 - KILLS reduce 43 - TRGCONST reduce 43 L2V reduce 43 - MAPSTRING reduce 43 - UNIT reduce 43 - SWITCH reduce 43 - LOCATION reduce 43 - STATTXTTBL reduce 43 - VARRAY reduce 43 STATIC reduce 43 CONST reduce 43 INC reduce 43 @@ -19060,8 +21030,8 @@ State 188: RETURN reduce 43 ACTIONNAME reduce 43 -State 189: - (42) bodyStmt ::= SEMICOLON * +State 207: + (42) rbracket ::= RBRACKET * $ reduce 42 ELSE reduce 42 @@ -19069,6 +21039,7 @@ State 189: COMMA reduce 42 LOR reduce 42 LAND reduce 42 + LNOT reduce 42 EQ reduce 42 LE reduce 42 LT reduce 42 @@ -19087,8 +21058,6 @@ State 189: MOD reduce 42 BITNOT reduce 42 LPAREN reduce 42 - LSQBRACKET reduce 42 - PERIOD reduce 42 SEMICOLON reduce 42 IMPORT reduce 42 NAME reduce 42 @@ -19099,17 +21068,8 @@ State 189: LBRACKET reduce 42 VAR reduce 42 RBRACKET reduce 42 - NUMBER reduce 42 RSQBRACKET reduce 42 - KILLS reduce 42 - TRGCONST reduce 42 L2V reduce 42 - MAPSTRING reduce 42 - UNIT reduce 42 - SWITCH reduce 42 - LOCATION reduce 42 - STATTXTTBL reduce 42 - VARRAY reduce 42 STATIC reduce 42 CONST reduce 42 INC reduce 42 @@ -19127,3927 +21087,2518 @@ State 189: RETURN reduce 42 ACTIONNAME reduce 42 -State 190: - (41) bodyStmt ::= blockStmt * - - $ reduce 41 - ELSE reduce 41 - QMARK reduce 41 - COMMA reduce 41 - LOR reduce 41 - LAND reduce 41 - EQ reduce 41 - LE reduce 41 - LT reduce 41 - GE reduce 41 - GT reduce 41 - NE reduce 41 - BITOR reduce 41 - BITXOR reduce 41 - BITAND reduce 41 - LSHIFT reduce 41 - RSHIFT reduce 41 - PLUS reduce 41 - MINUS reduce 41 - DIVIDE reduce 41 - MULTIPLY reduce 41 - MOD reduce 41 - BITNOT reduce 41 - LPAREN reduce 41 - LSQBRACKET reduce 41 - PERIOD reduce 41 - SEMICOLON reduce 41 - IMPORT reduce 41 - NAME reduce 41 - COLON reduce 41 - FUNCTION reduce 41 - RPAREN reduce 41 - OBJECT reduce 41 - LBRACKET reduce 41 - VAR reduce 41 - RBRACKET reduce 41 - NUMBER reduce 41 - RSQBRACKET reduce 41 - KILLS reduce 41 - TRGCONST reduce 41 - L2V reduce 41 - MAPSTRING reduce 41 - UNIT reduce 41 - SWITCH reduce 41 - LOCATION reduce 41 - STATTXTTBL reduce 41 - VARRAY reduce 41 - STATIC reduce 41 - CONST reduce 41 - INC reduce 41 - DEC reduce 41 - ONCE reduce 41 - IF reduce 41 - SWITCHCASE reduce 41 - CASE reduce 41 - DEFAULT reduce 41 - WHILE reduce 41 - FOR reduce 41 - FOREACH reduce 41 - CONTINUE reduce 41 - BREAK reduce 41 - RETURN reduce 41 - ACTIONNAME reduce 41 - -State 191: - (38) blockStmt ::= lbracket error RBRACKET * - - $ reduce 38 - ELSE reduce 38 - QMARK reduce 38 - COMMA reduce 38 - LOR reduce 38 - LAND reduce 38 - EQ reduce 38 - LE reduce 38 - LT reduce 38 - GE reduce 38 - GT reduce 38 - NE reduce 38 - BITOR reduce 38 - BITXOR reduce 38 - BITAND reduce 38 - LSHIFT reduce 38 - RSHIFT reduce 38 - PLUS reduce 38 - MINUS reduce 38 - DIVIDE reduce 38 - MULTIPLY reduce 38 - MOD reduce 38 - BITNOT reduce 38 - LPAREN reduce 38 - LSQBRACKET reduce 38 - PERIOD reduce 38 - SEMICOLON reduce 38 - IMPORT reduce 38 - NAME reduce 38 - COLON reduce 38 - FUNCTION reduce 38 - RPAREN reduce 38 - OBJECT reduce 38 - LBRACKET reduce 38 - VAR reduce 38 - RBRACKET reduce 38 - NUMBER reduce 38 - RSQBRACKET reduce 38 - KILLS reduce 38 - TRGCONST reduce 38 - L2V reduce 38 - MAPSTRING reduce 38 - UNIT reduce 38 - SWITCH reduce 38 - LOCATION reduce 38 - STATTXTTBL reduce 38 - VARRAY reduce 38 - STATIC reduce 38 - CONST reduce 38 - INC reduce 38 - DEC reduce 38 - ONCE reduce 38 - IF reduce 38 - SWITCHCASE reduce 38 - CASE reduce 38 - DEFAULT reduce 38 - WHILE reduce 38 - FOR reduce 38 - FOREACH reduce 38 - CONTINUE reduce 38 - BREAK reduce 38 - RETURN reduce 38 - ACTIONNAME reduce 38 +State 208: + (40) stmt ::= bodyStmt * + + $ reduce 40 + ELSE reduce 40 + QMARK reduce 40 + COMMA reduce 40 + LOR reduce 40 + LAND reduce 40 + LNOT reduce 40 + EQ reduce 40 + LE reduce 40 + LT reduce 40 + GE reduce 40 + GT reduce 40 + NE reduce 40 + BITOR reduce 40 + BITXOR reduce 40 + BITAND reduce 40 + LSHIFT reduce 40 + RSHIFT reduce 40 + PLUS reduce 40 + MINUS reduce 40 + DIVIDE reduce 40 + MULTIPLY reduce 40 + MOD reduce 40 + BITNOT reduce 40 + LPAREN reduce 40 + SEMICOLON reduce 40 + IMPORT reduce 40 + NAME reduce 40 + COLON reduce 40 + FUNCTION reduce 40 + RPAREN reduce 40 + OBJECT reduce 40 + LBRACKET reduce 40 + VAR reduce 40 + RBRACKET reduce 40 + RSQBRACKET reduce 40 + L2V reduce 40 + STATIC reduce 40 + CONST reduce 40 + INC reduce 40 + DEC reduce 40 + ONCE reduce 40 + IF reduce 40 + SWITCHCASE reduce 40 + CASE reduce 40 + DEFAULT reduce 40 + WHILE reduce 40 + FOR reduce 40 + FOREACH reduce 40 + CONTINUE reduce 40 + BREAK reduce 40 + RETURN reduce 40 + ACTIONNAME reduce 40 -State 192: - (37) blockStmt ::= blockStmtSub rbracket * - - $ reduce 37 - ELSE reduce 37 - QMARK reduce 37 - COMMA reduce 37 - LOR reduce 37 - LAND reduce 37 - EQ reduce 37 - LE reduce 37 - LT reduce 37 - GE reduce 37 - GT reduce 37 - NE reduce 37 - BITOR reduce 37 - BITXOR reduce 37 - BITAND reduce 37 - LSHIFT reduce 37 - RSHIFT reduce 37 - PLUS reduce 37 - MINUS reduce 37 - DIVIDE reduce 37 - MULTIPLY reduce 37 - MOD reduce 37 - BITNOT reduce 37 - LPAREN reduce 37 - LSQBRACKET reduce 37 - PERIOD reduce 37 - SEMICOLON reduce 37 - IMPORT reduce 37 - NAME reduce 37 - COLON reduce 37 - FUNCTION reduce 37 - RPAREN reduce 37 - OBJECT reduce 37 - LBRACKET reduce 37 - VAR reduce 37 - RBRACKET reduce 37 - NUMBER reduce 37 - RSQBRACKET reduce 37 - KILLS reduce 37 - TRGCONST reduce 37 - L2V reduce 37 - MAPSTRING reduce 37 - UNIT reduce 37 - SWITCH reduce 37 - LOCATION reduce 37 - STATTXTTBL reduce 37 - VARRAY reduce 37 - STATIC reduce 37 - CONST reduce 37 - INC reduce 37 - DEC reduce 37 - ONCE reduce 37 - IF reduce 37 - SWITCHCASE reduce 37 - CASE reduce 37 - DEFAULT reduce 37 - WHILE reduce 37 - FOR reduce 37 - FOREACH reduce 37 - CONTINUE reduce 37 - BREAK reduce 37 - RETURN reduce 37 - ACTIONNAME reduce 37 +State 209: + (39) stmt ::= error SEMICOLON * + + $ reduce 39 + ELSE reduce 39 + QMARK reduce 39 + COMMA reduce 39 + LOR reduce 39 + LAND reduce 39 + LNOT reduce 39 + EQ reduce 39 + LE reduce 39 + LT reduce 39 + GE reduce 39 + GT reduce 39 + NE reduce 39 + BITOR reduce 39 + BITXOR reduce 39 + BITAND reduce 39 + LSHIFT reduce 39 + RSHIFT reduce 39 + PLUS reduce 39 + MINUS reduce 39 + DIVIDE reduce 39 + MULTIPLY reduce 39 + MOD reduce 39 + BITNOT reduce 39 + LPAREN reduce 39 + SEMICOLON reduce 39 + IMPORT reduce 39 + NAME reduce 39 + COLON reduce 39 + FUNCTION reduce 39 + RPAREN reduce 39 + OBJECT reduce 39 + LBRACKET reduce 39 + VAR reduce 39 + RBRACKET reduce 39 + RSQBRACKET reduce 39 + L2V reduce 39 + STATIC reduce 39 + CONST reduce 39 + INC reduce 39 + DEC reduce 39 + ONCE reduce 39 + IF reduce 39 + SWITCHCASE reduce 39 + CASE reduce 39 + DEFAULT reduce 39 + WHILE reduce 39 + FOR reduce 39 + FOREACH reduce 39 + CONTINUE reduce 39 + BREAK reduce 39 + RETURN reduce 39 + ACTIONNAME reduce 39 -State 193: - (36) rbracket ::= RBRACKET * - - $ reduce 36 - ELSE reduce 36 - QMARK reduce 36 - COMMA reduce 36 - LOR reduce 36 - LAND reduce 36 - EQ reduce 36 - LE reduce 36 - LT reduce 36 - GE reduce 36 - GT reduce 36 - NE reduce 36 - BITOR reduce 36 - BITXOR reduce 36 - BITAND reduce 36 - LSHIFT reduce 36 - RSHIFT reduce 36 - PLUS reduce 36 - MINUS reduce 36 - DIVIDE reduce 36 - MULTIPLY reduce 36 - MOD reduce 36 - BITNOT reduce 36 - LPAREN reduce 36 - LSQBRACKET reduce 36 - PERIOD reduce 36 - SEMICOLON reduce 36 - IMPORT reduce 36 - NAME reduce 36 - COLON reduce 36 - FUNCTION reduce 36 - RPAREN reduce 36 - OBJECT reduce 36 - LBRACKET reduce 36 - VAR reduce 36 - RBRACKET reduce 36 - NUMBER reduce 36 - RSQBRACKET reduce 36 - KILLS reduce 36 - TRGCONST reduce 36 - L2V reduce 36 - MAPSTRING reduce 36 - UNIT reduce 36 - SWITCH reduce 36 - LOCATION reduce 36 - STATTXTTBL reduce 36 - VARRAY reduce 36 - STATIC reduce 36 - CONST reduce 36 - INC reduce 36 - DEC reduce 36 - ONCE reduce 36 - IF reduce 36 - SWITCHCASE reduce 36 - CASE reduce 36 - DEFAULT reduce 36 - WHILE reduce 36 - FOR reduce 36 - FOREACH reduce 36 - CONTINUE reduce 36 - BREAK reduce 36 - RETURN reduce 36 - ACTIONNAME reduce 36 +State 210: + (112) funcexpr ::= NAME LPAREN fArgs RPAREN * + + QMARK reduce 112 + COMMA reduce 112 + LOR reduce 112 + LAND reduce 112 + LNOT reduce 112 + EQ reduce 112 + LE reduce 112 + LT reduce 112 + GE reduce 112 + GT reduce 112 + NE reduce 112 + BITOR reduce 112 + BITXOR reduce 112 + BITAND reduce 112 + LSHIFT reduce 112 + RSHIFT reduce 112 + PLUS reduce 112 + MINUS reduce 112 + DIVIDE reduce 112 + MULTIPLY reduce 112 + MOD reduce 112 + BITNOT reduce 112 + LPAREN reduce 112 + LSQBRACKET reduce 112 + PERIOD reduce 112 + SEMICOLON reduce 112 + NAME reduce 112 + COLON reduce 112 + RPAREN reduce 112 + LBRACKET reduce 112 + VAR reduce 112 + RSQBRACKET reduce 112 + L2V reduce 112 + STATIC reduce 112 + CONST reduce 112 + INC reduce 112 + DEC reduce 112 + ONCE reduce 112 + IF reduce 112 + SWITCHCASE reduce 112 + WHILE reduce 112 + FOR reduce 112 + FOREACH reduce 112 + CONTINUE reduce 112 + BREAK reduce 112 + RETURN reduce 112 + ACTIONNAME reduce 112 -State 194: - (34) stmt ::= bodyStmt * - - $ reduce 34 - ELSE reduce 34 - QMARK reduce 34 - COMMA reduce 34 - LOR reduce 34 - LAND reduce 34 - EQ reduce 34 - LE reduce 34 - LT reduce 34 - GE reduce 34 - GT reduce 34 - NE reduce 34 - BITOR reduce 34 - BITXOR reduce 34 - BITAND reduce 34 - LSHIFT reduce 34 - RSHIFT reduce 34 - PLUS reduce 34 - MINUS reduce 34 - DIVIDE reduce 34 - MULTIPLY reduce 34 - MOD reduce 34 - BITNOT reduce 34 - LPAREN reduce 34 - LSQBRACKET reduce 34 - PERIOD reduce 34 - SEMICOLON reduce 34 - IMPORT reduce 34 - NAME reduce 34 - COLON reduce 34 - FUNCTION reduce 34 - RPAREN reduce 34 - OBJECT reduce 34 - LBRACKET reduce 34 - VAR reduce 34 - RBRACKET reduce 34 - NUMBER reduce 34 - RSQBRACKET reduce 34 - KILLS reduce 34 - TRGCONST reduce 34 - L2V reduce 34 - MAPSTRING reduce 34 - UNIT reduce 34 - SWITCH reduce 34 - LOCATION reduce 34 - STATTXTTBL reduce 34 - VARRAY reduce 34 - STATIC reduce 34 - CONST reduce 34 - INC reduce 34 - DEC reduce 34 - ONCE reduce 34 - IF reduce 34 - SWITCHCASE reduce 34 - CASE reduce 34 - DEFAULT reduce 34 - WHILE reduce 34 - FOR reduce 34 - FOREACH reduce 34 - CONTINUE reduce 34 - BREAK reduce 34 - RETURN reduce 34 - ACTIONNAME reduce 34 +State 211: + (113) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * -State 195: - (33) stmt ::= error SEMICOLON * - - $ reduce 33 - ELSE reduce 33 - QMARK reduce 33 - COMMA reduce 33 - LOR reduce 33 - LAND reduce 33 - EQ reduce 33 - LE reduce 33 - LT reduce 33 - GE reduce 33 - GT reduce 33 - NE reduce 33 - BITOR reduce 33 - BITXOR reduce 33 - BITAND reduce 33 - LSHIFT reduce 33 - RSHIFT reduce 33 - PLUS reduce 33 - MINUS reduce 33 - DIVIDE reduce 33 - MULTIPLY reduce 33 - MOD reduce 33 - BITNOT reduce 33 - LPAREN reduce 33 - LSQBRACKET reduce 33 - PERIOD reduce 33 - SEMICOLON reduce 33 - IMPORT reduce 33 - NAME reduce 33 - COLON reduce 33 - FUNCTION reduce 33 - RPAREN reduce 33 - OBJECT reduce 33 - LBRACKET reduce 33 - VAR reduce 33 - RBRACKET reduce 33 - NUMBER reduce 33 - RSQBRACKET reduce 33 - KILLS reduce 33 - TRGCONST reduce 33 - L2V reduce 33 - MAPSTRING reduce 33 - UNIT reduce 33 - SWITCH reduce 33 - LOCATION reduce 33 - STATTXTTBL reduce 33 - VARRAY reduce 33 - STATIC reduce 33 - CONST reduce 33 - INC reduce 33 - DEC reduce 33 - ONCE reduce 33 - IF reduce 33 - SWITCHCASE reduce 33 - CASE reduce 33 - DEFAULT reduce 33 - WHILE reduce 33 - FOR reduce 33 - FOREACH reduce 33 - CONTINUE reduce 33 - BREAK reduce 33 - RETURN reduce 33 - ACTIONNAME reduce 33 + QMARK reduce 113 + COMMA reduce 113 + LOR reduce 113 + LAND reduce 113 + LNOT reduce 113 + EQ reduce 113 + LE reduce 113 + LT reduce 113 + GE reduce 113 + GT reduce 113 + NE reduce 113 + BITOR reduce 113 + BITXOR reduce 113 + BITAND reduce 113 + LSHIFT reduce 113 + RSHIFT reduce 113 + PLUS reduce 113 + MINUS reduce 113 + DIVIDE reduce 113 + MULTIPLY reduce 113 + MOD reduce 113 + BITNOT reduce 113 + LPAREN reduce 113 + LSQBRACKET reduce 113 + PERIOD reduce 113 + SEMICOLON reduce 113 + NAME reduce 113 + COLON reduce 113 + RPAREN reduce 113 + LBRACKET reduce 113 + VAR reduce 113 + RSQBRACKET reduce 113 + L2V reduce 113 + STATIC reduce 113 + CONST reduce 113 + INC reduce 113 + DEC reduce 113 + ONCE reduce 113 + IF reduce 113 + SWITCHCASE reduce 113 + WHILE reduce 113 + FOR reduce 113 + FOREACH reduce 113 + CONTINUE reduce 113 + BREAK reduce 113 + RETURN reduce 113 + ACTIONNAME reduce 113 -State 196: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - (181) logicExpr ::= nonConstExpr GT constExpr * +State 212: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (150) factor ::= constExpr MOD nonConstExpr * - QMARK reduce 181 - COMMA reduce 181 - LOR reduce 181 - LAND reduce 181 - EQ error - EQ reduce 181 - LE error - LE reduce 181 - LT error - LT reduce 181 - GE error - GE reduce 181 - GT error - GT reduce 181 - NE error - NE reduce 181 - BITOR shift 102 - BITOR reduce 181 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 181 -- dropped by precedence - BITAND shift 103 - BITAND reduce 181 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 181 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 181 -- dropped by precedence - PLUS shift 113 - PLUS reduce 181 -- dropped by precedence - MINUS shift 112 - MINUS reduce 181 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 181 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 181 -- dropped by precedence - MOD shift 106 - MOD reduce 181 -- dropped by precedence - BITNOT reduce 181 - LPAREN reduce 181 - LSQBRACKET reduce 181 - PERIOD reduce 181 - SEMICOLON reduce 181 - NAME reduce 181 - COLON reduce 181 - FUNCTION reduce 181 - RPAREN reduce 181 - LBRACKET reduce 181 - VAR reduce 181 - NUMBER reduce 181 - RSQBRACKET reduce 181 - KILLS reduce 181 - TRGCONST reduce 181 - L2V reduce 181 - MAPSTRING reduce 181 - UNIT reduce 181 - SWITCH reduce 181 - LOCATION reduce 181 - STATTXTTBL reduce 181 - VARRAY reduce 181 - STATIC reduce 181 - CONST reduce 181 - INC reduce 181 - DEC reduce 181 - ONCE reduce 181 - IF reduce 181 - SWITCHCASE reduce 181 - WHILE reduce 181 - FOR reduce 181 - FOREACH reduce 181 - CONTINUE reduce 181 - BREAK reduce 181 - RETURN reduce 181 - ACTIONNAME reduce 181 + QMARK reduce 150 + COMMA reduce 150 + LOR reduce 150 + LAND reduce 150 + LNOT reduce 150 + EQ reduce 150 + LE reduce 150 + LT reduce 150 + GE reduce 150 + GT reduce 150 + NE reduce 150 + BITOR reduce 150 + BITXOR reduce 150 + BITAND reduce 150 + LSHIFT reduce 150 + RSHIFT reduce 150 + PLUS reduce 150 + MINUS reduce 150 + DIVIDE reduce 150 + MULTIPLY reduce 150 + MOD reduce 150 + BITNOT reduce 150 + LPAREN shift 20 + LPAREN reduce 150 -- dropped by precedence + LSQBRACKET shift 64 + PERIOD shift 493 + SEMICOLON reduce 150 + NAME reduce 150 + COLON reduce 150 + RPAREN reduce 150 + LBRACKET reduce 150 + VAR reduce 150 + RSQBRACKET reduce 150 + L2V reduce 150 + STATIC reduce 150 + CONST reduce 150 + INC reduce 150 + DEC reduce 150 + ONCE reduce 150 + IF reduce 150 + SWITCHCASE reduce 150 + WHILE reduce 150 + FOR reduce 150 + FOREACH reduce 150 + CONTINUE reduce 150 + BREAK reduce 150 + RETURN reduce 150 + ACTIONNAME reduce 150 -State 197: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - (177) logicExpr ::= nonConstExpr LT constExpr * - constExpr ::= constExpr * GT constExpr +State 213: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (147) factor ::= constExpr DIVIDE nonConstExpr * - QMARK reduce 177 - COMMA reduce 177 - LOR reduce 177 - LAND reduce 177 - EQ error - EQ reduce 177 - LE error - LE reduce 177 - LT error - LT reduce 177 - GE error - GE reduce 177 - GT error - GT reduce 177 - NE error - NE reduce 177 - BITOR shift 102 - BITOR reduce 177 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 177 -- dropped by precedence - BITAND shift 103 - BITAND reduce 177 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 177 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 177 -- dropped by precedence - PLUS shift 113 - PLUS reduce 177 -- dropped by precedence - MINUS shift 112 - MINUS reduce 177 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 177 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 177 -- dropped by precedence - MOD shift 106 - MOD reduce 177 -- dropped by precedence - BITNOT reduce 177 - LPAREN reduce 177 - LSQBRACKET reduce 177 - PERIOD reduce 177 - SEMICOLON reduce 177 - NAME reduce 177 - COLON reduce 177 - FUNCTION reduce 177 - RPAREN reduce 177 - LBRACKET reduce 177 - VAR reduce 177 - NUMBER reduce 177 - RSQBRACKET reduce 177 - KILLS reduce 177 - TRGCONST reduce 177 - L2V reduce 177 - MAPSTRING reduce 177 - UNIT reduce 177 - SWITCH reduce 177 - LOCATION reduce 177 - STATTXTTBL reduce 177 - VARRAY reduce 177 - STATIC reduce 177 - CONST reduce 177 - INC reduce 177 - DEC reduce 177 - ONCE reduce 177 - IF reduce 177 - SWITCHCASE reduce 177 - WHILE reduce 177 - FOR reduce 177 - FOREACH reduce 177 - CONTINUE reduce 177 - BREAK reduce 177 - RETURN reduce 177 - ACTIONNAME reduce 177 + QMARK reduce 147 + COMMA reduce 147 + LOR reduce 147 + LAND reduce 147 + LNOT reduce 147 + EQ reduce 147 + LE reduce 147 + LT reduce 147 + GE reduce 147 + GT reduce 147 + NE reduce 147 + BITOR reduce 147 + BITXOR reduce 147 + BITAND reduce 147 + LSHIFT reduce 147 + RSHIFT reduce 147 + PLUS reduce 147 + MINUS reduce 147 + DIVIDE reduce 147 + MULTIPLY reduce 147 + MOD reduce 147 + BITNOT reduce 147 + LPAREN shift 20 + LPAREN reduce 147 -- dropped by precedence + LSQBRACKET shift 64 + PERIOD shift 493 + SEMICOLON reduce 147 + NAME reduce 147 + COLON reduce 147 + RPAREN reduce 147 + LBRACKET reduce 147 + VAR reduce 147 + RSQBRACKET reduce 147 + L2V reduce 147 + STATIC reduce 147 + CONST reduce 147 + INC reduce 147 + DEC reduce 147 + ONCE reduce 147 + IF reduce 147 + SWITCHCASE reduce 147 + WHILE reduce 147 + FOR reduce 147 + FOREACH reduce 147 + CONTINUE reduce 147 + BREAK reduce 147 + RETURN reduce 147 + ACTIONNAME reduce 147 -State 198: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - (173) logicExpr ::= nonConstExpr GE constExpr * - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 214: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (144) factor ::= constExpr MULTIPLY nonConstExpr * - QMARK reduce 173 - COMMA reduce 173 - LOR reduce 173 - LAND reduce 173 - EQ error - EQ reduce 173 - LE error - LE reduce 173 - LT error - LT reduce 173 - GE error - GE reduce 173 - GT error - GT reduce 173 - NE error - NE reduce 173 - BITOR shift 102 - BITOR reduce 173 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 173 -- dropped by precedence - BITAND shift 103 - BITAND reduce 173 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 173 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 173 -- dropped by precedence - PLUS shift 113 - PLUS reduce 173 -- dropped by precedence - MINUS shift 112 - MINUS reduce 173 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 173 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 173 -- dropped by precedence - MOD shift 106 - MOD reduce 173 -- dropped by precedence - BITNOT reduce 173 - LPAREN reduce 173 - LSQBRACKET reduce 173 - PERIOD reduce 173 - SEMICOLON reduce 173 - NAME reduce 173 - COLON reduce 173 - FUNCTION reduce 173 - RPAREN reduce 173 - LBRACKET reduce 173 - VAR reduce 173 - NUMBER reduce 173 - RSQBRACKET reduce 173 - KILLS reduce 173 - TRGCONST reduce 173 - L2V reduce 173 - MAPSTRING reduce 173 - UNIT reduce 173 - SWITCH reduce 173 - LOCATION reduce 173 - STATTXTTBL reduce 173 - VARRAY reduce 173 - STATIC reduce 173 - CONST reduce 173 - INC reduce 173 - DEC reduce 173 - ONCE reduce 173 - IF reduce 173 - SWITCHCASE reduce 173 - WHILE reduce 173 - FOR reduce 173 - FOREACH reduce 173 - CONTINUE reduce 173 - BREAK reduce 173 - RETURN reduce 173 - ACTIONNAME reduce 173 + QMARK reduce 144 + COMMA reduce 144 + LOR reduce 144 + LAND reduce 144 + LNOT reduce 144 + EQ reduce 144 + LE reduce 144 + LT reduce 144 + GE reduce 144 + GT reduce 144 + NE reduce 144 + BITOR reduce 144 + BITXOR reduce 144 + BITAND reduce 144 + LSHIFT reduce 144 + RSHIFT reduce 144 + PLUS reduce 144 + MINUS reduce 144 + DIVIDE reduce 144 + MULTIPLY reduce 144 + MOD reduce 144 + BITNOT reduce 144 + LPAREN shift 20 + LPAREN reduce 144 -- dropped by precedence + LSQBRACKET shift 64 + PERIOD shift 493 + SEMICOLON reduce 144 + NAME reduce 144 + COLON reduce 144 + RPAREN reduce 144 + LBRACKET reduce 144 + VAR reduce 144 + RSQBRACKET reduce 144 + L2V reduce 144 + STATIC reduce 144 + CONST reduce 144 + INC reduce 144 + DEC reduce 144 + ONCE reduce 144 + IF reduce 144 + SWITCHCASE reduce 144 + WHILE reduce 144 + FOR reduce 144 + FOREACH reduce 144 + CONTINUE reduce 144 + BREAK reduce 144 + RETURN reduce 144 + ACTIONNAME reduce 144 -State 199: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - (169) logicExpr ::= nonConstExpr LE constExpr * - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 215: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (152) factor ::= factor MOD nonConstExpr * - QMARK reduce 169 - COMMA reduce 169 - LOR reduce 169 - LAND reduce 169 - EQ error - EQ reduce 169 - LE error - LE reduce 169 - LT error - LT reduce 169 - GE error - GE reduce 169 - GT error - GT reduce 169 - NE error - NE reduce 169 - BITOR shift 102 - BITOR reduce 169 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 169 -- dropped by precedence - BITAND shift 103 - BITAND reduce 169 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 169 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 169 -- dropped by precedence - PLUS shift 113 - PLUS reduce 169 -- dropped by precedence - MINUS shift 112 - MINUS reduce 169 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 169 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 169 -- dropped by precedence - MOD shift 106 - MOD reduce 169 -- dropped by precedence - BITNOT reduce 169 - LPAREN reduce 169 - LSQBRACKET reduce 169 - PERIOD reduce 169 - SEMICOLON reduce 169 - NAME reduce 169 - COLON reduce 169 - FUNCTION reduce 169 - RPAREN reduce 169 - LBRACKET reduce 169 - VAR reduce 169 - NUMBER reduce 169 - RSQBRACKET reduce 169 - KILLS reduce 169 - TRGCONST reduce 169 - L2V reduce 169 - MAPSTRING reduce 169 - UNIT reduce 169 - SWITCH reduce 169 - LOCATION reduce 169 - STATTXTTBL reduce 169 - VARRAY reduce 169 - STATIC reduce 169 - CONST reduce 169 - INC reduce 169 - DEC reduce 169 - ONCE reduce 169 - IF reduce 169 - SWITCHCASE reduce 169 - WHILE reduce 169 - FOR reduce 169 - FOREACH reduce 169 - CONTINUE reduce 169 - BREAK reduce 169 - RETURN reduce 169 - ACTIONNAME reduce 169 + QMARK reduce 152 + COMMA reduce 152 + LOR reduce 152 + LAND reduce 152 + LNOT reduce 152 + EQ reduce 152 + LE reduce 152 + LT reduce 152 + GE reduce 152 + GT reduce 152 + NE reduce 152 + BITOR reduce 152 + BITXOR reduce 152 + BITAND reduce 152 + LSHIFT reduce 152 + RSHIFT reduce 152 + PLUS reduce 152 + MINUS reduce 152 + DIVIDE reduce 152 + MULTIPLY reduce 152 + MOD reduce 152 + BITNOT reduce 152 + LPAREN shift 20 + LPAREN reduce 152 -- dropped by precedence + LSQBRACKET shift 64 + PERIOD shift 493 + SEMICOLON reduce 152 + NAME reduce 152 + COLON reduce 152 + RPAREN reduce 152 + LBRACKET reduce 152 + VAR reduce 152 + RSQBRACKET reduce 152 + L2V reduce 152 + STATIC reduce 152 + CONST reduce 152 + INC reduce 152 + DEC reduce 152 + ONCE reduce 152 + IF reduce 152 + SWITCHCASE reduce 152 + WHILE reduce 152 + FOR reduce 152 + FOREACH reduce 152 + CONTINUE reduce 152 + BREAK reduce 152 + RETURN reduce 152 + ACTIONNAME reduce 152 -State 200: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - (165) logicExpr ::= nonConstExpr NE constExpr * - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 216: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (188) nonConstExpr ::= LNOT nonConstExpr * + + QMARK reduce 188 + COMMA reduce 188 + LOR reduce 188 + LAND reduce 188 + LNOT reduce 188 + EQ reduce 188 + LE reduce 188 + LT reduce 188 + GE reduce 188 + GT reduce 188 + NE reduce 188 + BITOR reduce 188 + BITXOR reduce 188 + BITAND reduce 188 + LSHIFT reduce 188 + RSHIFT reduce 188 + PLUS reduce 188 + MINUS reduce 188 + DIVIDE reduce 188 + MULTIPLY reduce 188 + MOD reduce 188 + BITNOT reduce 188 + LPAREN shift 20 + LPAREN reduce 188 -- dropped by precedence + LSQBRACKET shift 64 + LSQBRACKET reduce 188 -- dropped by precedence + PERIOD shift 493 + PERIOD reduce 188 -- dropped by precedence + SEMICOLON reduce 188 + NAME reduce 188 + COLON reduce 188 + RPAREN reduce 188 + LBRACKET reduce 188 + VAR reduce 188 + RSQBRACKET reduce 188 + L2V reduce 188 + STATIC reduce 188 + CONST reduce 188 + INC reduce 188 + DEC reduce 188 + ONCE reduce 188 + IF reduce 188 + SWITCHCASE reduce 188 + WHILE reduce 188 + FOR reduce 188 + FOREACH reduce 188 + CONTINUE reduce 188 + BREAK reduce 188 + RETURN reduce 188 + ACTIONNAME reduce 188 - QMARK reduce 165 - COMMA reduce 165 - LOR reduce 165 - LAND reduce 165 - EQ error - EQ reduce 165 - LE error - LE reduce 165 - LT error - LT reduce 165 - GE error - GE reduce 165 - GT error - GT reduce 165 - NE error - NE reduce 165 - BITOR shift 102 - BITOR reduce 165 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 165 -- dropped by precedence - BITAND shift 103 - BITAND reduce 165 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 165 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 165 -- dropped by precedence - PLUS shift 113 - PLUS reduce 165 -- dropped by precedence - MINUS shift 112 - MINUS reduce 165 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 165 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 165 -- dropped by precedence - MOD shift 106 - MOD reduce 165 -- dropped by precedence - BITNOT reduce 165 - LPAREN reduce 165 - LSQBRACKET reduce 165 - PERIOD reduce 165 - SEMICOLON reduce 165 - NAME reduce 165 - COLON reduce 165 - FUNCTION reduce 165 - RPAREN reduce 165 - LBRACKET reduce 165 - VAR reduce 165 - NUMBER reduce 165 - RSQBRACKET reduce 165 - KILLS reduce 165 - TRGCONST reduce 165 - L2V reduce 165 - MAPSTRING reduce 165 - UNIT reduce 165 - SWITCH reduce 165 - LOCATION reduce 165 - STATTXTTBL reduce 165 - VARRAY reduce 165 - STATIC reduce 165 - CONST reduce 165 - INC reduce 165 - DEC reduce 165 - ONCE reduce 165 - IF reduce 165 - SWITCHCASE reduce 165 - WHILE reduce 165 - FOR reduce 165 - FOREACH reduce 165 - CONTINUE reduce 165 - BREAK reduce 165 - RETURN reduce 165 - ACTIONNAME reduce 165 +State 217: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (186) nonConstExpr ::= BITNOT nonConstExpr * -State 201: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - (161) logicExpr ::= nonConstExpr EQ constExpr * - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 186 + COMMA reduce 186 + LOR reduce 186 + LAND reduce 186 + LNOT reduce 186 + EQ reduce 186 + LE reduce 186 + LT reduce 186 + GE reduce 186 + GT reduce 186 + NE reduce 186 + BITOR reduce 186 + BITXOR reduce 186 + BITAND reduce 186 + LSHIFT reduce 186 + RSHIFT reduce 186 + PLUS reduce 186 + MINUS reduce 186 + DIVIDE reduce 186 + MULTIPLY reduce 186 + MOD reduce 186 + BITNOT reduce 186 + LPAREN shift 20 + LPAREN reduce 186 -- dropped by precedence + LSQBRACKET shift 64 + LSQBRACKET reduce 186 -- dropped by precedence + PERIOD shift 493 + PERIOD reduce 186 -- dropped by precedence + SEMICOLON reduce 186 + NAME reduce 186 + COLON reduce 186 + RPAREN reduce 186 + LBRACKET reduce 186 + VAR reduce 186 + RSQBRACKET reduce 186 + L2V reduce 186 + STATIC reduce 186 + CONST reduce 186 + INC reduce 186 + DEC reduce 186 + ONCE reduce 186 + IF reduce 186 + SWITCHCASE reduce 186 + WHILE reduce 186 + FOR reduce 186 + FOREACH reduce 186 + CONTINUE reduce 186 + BREAK reduce 186 + RETURN reduce 186 + ACTIONNAME reduce 186 - QMARK reduce 161 - COMMA reduce 161 - LOR reduce 161 - LAND reduce 161 - EQ error - EQ reduce 161 - LE error - LE reduce 161 - LT error - LT reduce 161 - GE error - GE reduce 161 - GT error - GT reduce 161 - NE error - NE reduce 161 - BITOR shift 102 - BITOR reduce 161 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 161 -- dropped by precedence - BITAND shift 103 - BITAND reduce 161 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 161 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 161 -- dropped by precedence - PLUS shift 113 - PLUS reduce 161 -- dropped by precedence - MINUS shift 112 - MINUS reduce 161 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 161 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 161 -- dropped by precedence - MOD shift 106 - MOD reduce 161 -- dropped by precedence - BITNOT reduce 161 - LPAREN reduce 161 - LSQBRACKET reduce 161 - PERIOD reduce 161 - SEMICOLON reduce 161 - NAME reduce 161 - COLON reduce 161 - FUNCTION reduce 161 - RPAREN reduce 161 - LBRACKET reduce 161 - VAR reduce 161 - NUMBER reduce 161 - RSQBRACKET reduce 161 - KILLS reduce 161 - TRGCONST reduce 161 - L2V reduce 161 - MAPSTRING reduce 161 - UNIT reduce 161 - SWITCH reduce 161 - LOCATION reduce 161 - STATTXTTBL reduce 161 - VARRAY reduce 161 - STATIC reduce 161 - CONST reduce 161 - INC reduce 161 - DEC reduce 161 - ONCE reduce 161 - IF reduce 161 - SWITCHCASE reduce 161 - WHILE reduce 161 - FOR reduce 161 - FOREACH reduce 161 - CONTINUE reduce 161 - BREAK reduce 161 - RETURN reduce 161 - ACTIONNAME reduce 161 +State 218: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (184) nonConstExpr ::= MINUS nonConstExpr * -State 202: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - (179) constExpr ::= constExpr GT constExpr * + QMARK reduce 184 + COMMA reduce 184 + LOR reduce 184 + LAND reduce 184 + LNOT reduce 184 + EQ reduce 184 + LE reduce 184 + LT reduce 184 + GE reduce 184 + GT reduce 184 + NE reduce 184 + BITOR reduce 184 + BITXOR reduce 184 + BITAND reduce 184 + LSHIFT reduce 184 + RSHIFT reduce 184 + PLUS reduce 184 + MINUS reduce 184 + DIVIDE reduce 184 + MULTIPLY reduce 184 + MOD reduce 184 + BITNOT reduce 184 + LPAREN shift 20 + LPAREN reduce 184 -- dropped by precedence + LSQBRACKET shift 64 + LSQBRACKET reduce 184 -- dropped by precedence + PERIOD shift 493 + PERIOD reduce 184 -- dropped by precedence + SEMICOLON reduce 184 + NAME reduce 184 + COLON reduce 184 + RPAREN reduce 184 + LBRACKET reduce 184 + VAR reduce 184 + RSQBRACKET reduce 184 + L2V reduce 184 + STATIC reduce 184 + CONST reduce 184 + INC reduce 184 + DEC reduce 184 + ONCE reduce 184 + IF reduce 184 + SWITCHCASE reduce 184 + WHILE reduce 184 + FOR reduce 184 + FOREACH reduce 184 + CONTINUE reduce 184 + BREAK reduce 184 + RETURN reduce 184 + ACTIONNAME reduce 184 - QMARK reduce 179 - COMMA reduce 179 - LOR reduce 179 - LAND reduce 179 - EQ error - EQ reduce 179 - LE error - LE reduce 179 - LT error - LT reduce 179 - GE error - GE reduce 179 - GT error - GT reduce 179 - NE error - NE reduce 179 - BITOR shift 102 - BITOR reduce 179 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 179 -- dropped by precedence - BITAND shift 103 - BITAND reduce 179 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 179 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 179 -- dropped by precedence - PLUS shift 113 - PLUS reduce 179 -- dropped by precedence - MINUS shift 112 - MINUS reduce 179 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 179 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 179 -- dropped by precedence - MOD shift 106 - MOD reduce 179 -- dropped by precedence - BITNOT reduce 179 - LPAREN reduce 179 - LSQBRACKET reduce 179 - PERIOD reduce 179 - SEMICOLON reduce 179 - NAME reduce 179 - COLON reduce 179 - FUNCTION reduce 179 - RPAREN reduce 179 - LBRACKET reduce 179 - VAR reduce 179 - NUMBER reduce 179 - RSQBRACKET reduce 179 - KILLS reduce 179 - TRGCONST reduce 179 - L2V reduce 179 - MAPSTRING reduce 179 - UNIT reduce 179 - SWITCH reduce 179 - LOCATION reduce 179 - STATTXTTBL reduce 179 - VARRAY reduce 179 - STATIC reduce 179 - CONST reduce 179 - INC reduce 179 - DEC reduce 179 - ONCE reduce 179 - IF reduce 179 - SWITCHCASE reduce 179 - WHILE reduce 179 - FOR reduce 179 - FOREACH reduce 179 - CONTINUE reduce 179 - BREAK reduce 179 - RETURN reduce 179 - ACTIONNAME reduce 179 +State 219: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (182) nonConstExpr ::= PLUS nonConstExpr * -State 203: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - (175) constExpr ::= constExpr LT constExpr * - constExpr ::= constExpr * GT constExpr + QMARK reduce 182 + COMMA reduce 182 + LOR reduce 182 + LAND reduce 182 + LNOT reduce 182 + EQ reduce 182 + LE reduce 182 + LT reduce 182 + GE reduce 182 + GT reduce 182 + NE reduce 182 + BITOR reduce 182 + BITXOR reduce 182 + BITAND reduce 182 + LSHIFT reduce 182 + RSHIFT reduce 182 + PLUS reduce 182 + MINUS reduce 182 + DIVIDE reduce 182 + MULTIPLY reduce 182 + MOD reduce 182 + BITNOT reduce 182 + LPAREN shift 20 + LPAREN reduce 182 -- dropped by precedence + LSQBRACKET shift 64 + LSQBRACKET reduce 182 -- dropped by precedence + PERIOD shift 493 + PERIOD reduce 182 -- dropped by precedence + SEMICOLON reduce 182 + NAME reduce 182 + COLON reduce 182 + RPAREN reduce 182 + LBRACKET reduce 182 + VAR reduce 182 + RSQBRACKET reduce 182 + L2V reduce 182 + STATIC reduce 182 + CONST reduce 182 + INC reduce 182 + DEC reduce 182 + ONCE reduce 182 + IF reduce 182 + SWITCHCASE reduce 182 + WHILE reduce 182 + FOR reduce 182 + FOREACH reduce 182 + CONTINUE reduce 182 + BREAK reduce 182 + RETURN reduce 182 + ACTIONNAME reduce 182 - QMARK reduce 175 - COMMA reduce 175 - LOR reduce 175 - LAND reduce 175 - EQ error - EQ reduce 175 - LE error - LE reduce 175 - LT error - LT reduce 175 - GE error - GE reduce 175 - GT error - GT reduce 175 - NE error - NE reduce 175 - BITOR shift 102 - BITOR reduce 175 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 175 -- dropped by precedence - BITAND shift 103 - BITAND reduce 175 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 175 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 175 -- dropped by precedence - PLUS shift 113 - PLUS reduce 175 -- dropped by precedence - MINUS shift 112 - MINUS reduce 175 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 175 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 175 -- dropped by precedence - MOD shift 106 - MOD reduce 175 -- dropped by precedence - BITNOT reduce 175 - LPAREN reduce 175 - LSQBRACKET reduce 175 - PERIOD reduce 175 - SEMICOLON reduce 175 - NAME reduce 175 - COLON reduce 175 - FUNCTION reduce 175 - RPAREN reduce 175 - LBRACKET reduce 175 - VAR reduce 175 - NUMBER reduce 175 - RSQBRACKET reduce 175 - KILLS reduce 175 - TRGCONST reduce 175 - L2V reduce 175 - MAPSTRING reduce 175 - UNIT reduce 175 - SWITCH reduce 175 - LOCATION reduce 175 - STATTXTTBL reduce 175 - VARRAY reduce 175 - STATIC reduce 175 - CONST reduce 175 - INC reduce 175 - DEC reduce 175 - ONCE reduce 175 - IF reduce 175 - SWITCHCASE reduce 175 - WHILE reduce 175 - FOR reduce 175 - FOREACH reduce 175 - CONTINUE reduce 175 - BREAK reduce 175 - RETURN reduce 175 - ACTIONNAME reduce 175 +State 220: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (149) factor ::= factor DIVIDE nonConstExpr * -State 204: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - (171) constExpr ::= constExpr GE constExpr * - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 149 + COMMA reduce 149 + LOR reduce 149 + LAND reduce 149 + LNOT reduce 149 + EQ reduce 149 + LE reduce 149 + LT reduce 149 + GE reduce 149 + GT reduce 149 + NE reduce 149 + BITOR reduce 149 + BITXOR reduce 149 + BITAND reduce 149 + LSHIFT reduce 149 + RSHIFT reduce 149 + PLUS reduce 149 + MINUS reduce 149 + DIVIDE reduce 149 + MULTIPLY reduce 149 + MOD reduce 149 + BITNOT reduce 149 + LPAREN shift 20 + LPAREN reduce 149 -- dropped by precedence + LSQBRACKET shift 64 + PERIOD shift 493 + SEMICOLON reduce 149 + NAME reduce 149 + COLON reduce 149 + RPAREN reduce 149 + LBRACKET reduce 149 + VAR reduce 149 + RSQBRACKET reduce 149 + L2V reduce 149 + STATIC reduce 149 + CONST reduce 149 + INC reduce 149 + DEC reduce 149 + ONCE reduce 149 + IF reduce 149 + SWITCHCASE reduce 149 + WHILE reduce 149 + FOR reduce 149 + FOREACH reduce 149 + CONTINUE reduce 149 + BREAK reduce 149 + RETURN reduce 149 + ACTIONNAME reduce 149 - QMARK reduce 171 - COMMA reduce 171 - LOR reduce 171 - LAND reduce 171 - EQ error - EQ reduce 171 - LE error - LE reduce 171 - LT error - LT reduce 171 - GE error - GE reduce 171 - GT error - GT reduce 171 - NE error - NE reduce 171 - BITOR shift 102 - BITOR reduce 171 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 171 -- dropped by precedence - BITAND shift 103 - BITAND reduce 171 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 171 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 171 -- dropped by precedence - PLUS shift 113 - PLUS reduce 171 -- dropped by precedence - MINUS shift 112 - MINUS reduce 171 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 171 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 171 -- dropped by precedence - MOD shift 106 - MOD reduce 171 -- dropped by precedence - BITNOT reduce 171 - LPAREN reduce 171 - LSQBRACKET reduce 171 - PERIOD reduce 171 - SEMICOLON reduce 171 - NAME reduce 171 - COLON reduce 171 - FUNCTION reduce 171 - RPAREN reduce 171 - LBRACKET reduce 171 - VAR reduce 171 - NUMBER reduce 171 - RSQBRACKET reduce 171 - KILLS reduce 171 - TRGCONST reduce 171 - L2V reduce 171 - MAPSTRING reduce 171 - UNIT reduce 171 - SWITCH reduce 171 - LOCATION reduce 171 - STATTXTTBL reduce 171 - VARRAY reduce 171 - STATIC reduce 171 - CONST reduce 171 - INC reduce 171 - DEC reduce 171 - ONCE reduce 171 - IF reduce 171 - SWITCHCASE reduce 171 - WHILE reduce 171 - FOR reduce 171 - FOREACH reduce 171 - CONTINUE reduce 171 - BREAK reduce 171 - RETURN reduce 171 - ACTIONNAME reduce 171 +State 221: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + (146) factor ::= factor MULTIPLY nonConstExpr * -State 205: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - (167) constExpr ::= constExpr LE constExpr * - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 146 + COMMA reduce 146 + LOR reduce 146 + LAND reduce 146 + LNOT reduce 146 + EQ reduce 146 + LE reduce 146 + LT reduce 146 + GE reduce 146 + GT reduce 146 + NE reduce 146 + BITOR reduce 146 + BITXOR reduce 146 + BITAND reduce 146 + LSHIFT reduce 146 + RSHIFT reduce 146 + PLUS reduce 146 + MINUS reduce 146 + DIVIDE reduce 146 + MULTIPLY reduce 146 + MOD reduce 146 + BITNOT reduce 146 + LPAREN shift 20 + LPAREN reduce 146 -- dropped by precedence + LSQBRACKET shift 64 + PERIOD shift 493 + SEMICOLON reduce 146 + NAME reduce 146 + COLON reduce 146 + RPAREN reduce 146 + LBRACKET reduce 146 + VAR reduce 146 + RSQBRACKET reduce 146 + L2V reduce 146 + STATIC reduce 146 + CONST reduce 146 + INC reduce 146 + DEC reduce 146 + ONCE reduce 146 + IF reduce 146 + SWITCHCASE reduce 146 + WHILE reduce 146 + FOR reduce 146 + FOREACH reduce 146 + CONTINUE reduce 146 + BREAK reduce 146 + RETURN reduce 146 + ACTIONNAME reduce 146 - QMARK reduce 167 - COMMA reduce 167 - LOR reduce 167 - LAND reduce 167 - EQ error - EQ reduce 167 - LE error - LE reduce 167 - LT error - LT reduce 167 - GE error - GE reduce 167 - GT error - GT reduce 167 - NE error - NE reduce 167 - BITOR shift 102 - BITOR reduce 167 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 167 -- dropped by precedence - BITAND shift 103 - BITAND reduce 167 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 167 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 167 -- dropped by precedence - PLUS shift 113 - PLUS reduce 167 -- dropped by precedence - MINUS shift 112 - MINUS reduce 167 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 167 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 167 -- dropped by precedence - MOD shift 106 - MOD reduce 167 -- dropped by precedence - BITNOT reduce 167 - LPAREN reduce 167 - LSQBRACKET reduce 167 - PERIOD reduce 167 - SEMICOLON reduce 167 - NAME reduce 167 - COLON reduce 167 - FUNCTION reduce 167 - RPAREN reduce 167 - LBRACKET reduce 167 - VAR reduce 167 - NUMBER reduce 167 - RSQBRACKET reduce 167 - KILLS reduce 167 - TRGCONST reduce 167 - L2V reduce 167 - MAPSTRING reduce 167 - UNIT reduce 167 - SWITCH reduce 167 - LOCATION reduce 167 - STATTXTTBL reduce 167 - VARRAY reduce 167 - STATIC reduce 167 - CONST reduce 167 - INC reduce 167 - DEC reduce 167 - ONCE reduce 167 - IF reduce 167 - SWITCHCASE reduce 167 - WHILE reduce 167 - FOR reduce 167 - FOREACH reduce 167 - CONTINUE reduce 167 - BREAK reduce 167 - RETURN reduce 167 - ACTIONNAME reduce 167 +State 222: + (120) nonConstExpr ::= L2V LPAREN expr RPAREN * -State 206: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - (163) constExpr ::= constExpr NE constExpr * - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 120 + COMMA reduce 120 + LOR reduce 120 + LAND reduce 120 + LNOT reduce 120 + EQ reduce 120 + LE reduce 120 + LT reduce 120 + GE reduce 120 + GT reduce 120 + NE reduce 120 + BITOR reduce 120 + BITXOR reduce 120 + BITAND reduce 120 + LSHIFT reduce 120 + RSHIFT reduce 120 + PLUS reduce 120 + MINUS reduce 120 + DIVIDE reduce 120 + MULTIPLY reduce 120 + MOD reduce 120 + BITNOT reduce 120 + LPAREN reduce 120 + LSQBRACKET reduce 120 + PERIOD reduce 120 + SEMICOLON reduce 120 + NAME reduce 120 + COLON reduce 120 + RPAREN reduce 120 + LBRACKET reduce 120 + VAR reduce 120 + RSQBRACKET reduce 120 + L2V reduce 120 + STATIC reduce 120 + CONST reduce 120 + INC reduce 120 + DEC reduce 120 + ONCE reduce 120 + IF reduce 120 + SWITCHCASE reduce 120 + WHILE reduce 120 + FOR reduce 120 + FOREACH reduce 120 + CONTINUE reduce 120 + BREAK reduce 120 + RETURN reduce 120 + ACTIONNAME reduce 120 - QMARK reduce 163 - COMMA reduce 163 - LOR reduce 163 - LAND reduce 163 - EQ error - EQ reduce 163 - LE error - LE reduce 163 - LT error - LT reduce 163 - GE error - GE reduce 163 - GT error - GT reduce 163 - NE error - NE reduce 163 - BITOR shift 102 - BITOR reduce 163 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 163 -- dropped by precedence - BITAND shift 103 - BITAND reduce 163 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 163 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 163 -- dropped by precedence - PLUS shift 113 - PLUS reduce 163 -- dropped by precedence - MINUS shift 112 - MINUS reduce 163 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 163 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 163 -- dropped by precedence - MOD shift 106 - MOD reduce 163 -- dropped by precedence - BITNOT reduce 163 - LPAREN reduce 163 - LSQBRACKET reduce 163 - PERIOD reduce 163 - SEMICOLON reduce 163 - NAME reduce 163 - COLON reduce 163 - FUNCTION reduce 163 - RPAREN reduce 163 - LBRACKET reduce 163 - VAR reduce 163 - NUMBER reduce 163 - RSQBRACKET reduce 163 - KILLS reduce 163 - TRGCONST reduce 163 - L2V reduce 163 - MAPSTRING reduce 163 - UNIT reduce 163 - SWITCH reduce 163 - LOCATION reduce 163 - STATTXTTBL reduce 163 - VARRAY reduce 163 - STATIC reduce 163 - CONST reduce 163 - INC reduce 163 - DEC reduce 163 - ONCE reduce 163 - IF reduce 163 - SWITCHCASE reduce 163 - WHILE reduce 163 - FOR reduce 163 - FOREACH reduce 163 - CONTINUE reduce 163 - BREAK reduce 163 - RETURN reduce 163 - ACTIONNAME reduce 163 - -State 207: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - (159) constExpr ::= constExpr EQ constExpr * - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 223: + exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (114) nonConstExpr ::= funcexpr * - QMARK reduce 159 - COMMA reduce 159 - LOR reduce 159 - LAND reduce 159 - EQ error - EQ reduce 159 - LE error - LE reduce 159 - LT error - LT reduce 159 - GE error - GE reduce 159 - GT error - GT reduce 159 - NE error - NE reduce 159 - BITOR shift 102 - BITOR reduce 159 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 159 -- dropped by precedence - BITAND shift 103 - BITAND reduce 159 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 159 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 159 -- dropped by precedence - PLUS shift 113 - PLUS reduce 159 -- dropped by precedence - MINUS shift 112 - MINUS reduce 159 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 159 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 159 -- dropped by precedence - MOD shift 106 - MOD reduce 159 -- dropped by precedence - BITNOT reduce 159 - LPAREN reduce 159 - LSQBRACKET reduce 159 - PERIOD reduce 159 - SEMICOLON reduce 159 - NAME reduce 159 - COLON reduce 159 - FUNCTION reduce 159 - RPAREN reduce 159 - LBRACKET reduce 159 - VAR reduce 159 - NUMBER reduce 159 - RSQBRACKET reduce 159 - KILLS reduce 159 - TRGCONST reduce 159 - L2V reduce 159 - MAPSTRING reduce 159 - UNIT reduce 159 - SWITCH reduce 159 - LOCATION reduce 159 - STATTXTTBL reduce 159 - VARRAY reduce 159 - STATIC reduce 159 - CONST reduce 159 - INC reduce 159 - DEC reduce 159 - ONCE reduce 159 - IF reduce 159 - SWITCHCASE reduce 159 - WHILE reduce 159 - FOR reduce 159 - FOREACH reduce 159 - CONTINUE reduce 159 - BREAK reduce 159 - RETURN reduce 159 - ACTIONNAME reduce 159 + QMARK reduce 114 + COMMA reduce 114 + LOR reduce 114 + LAND reduce 114 + LNOT reduce 114 + EQ reduce 114 + LE reduce 114 + LT reduce 114 + GE reduce 114 + GT reduce 114 + NE reduce 114 + BITOR reduce 114 + BITXOR reduce 114 + BITAND reduce 114 + LSHIFT reduce 114 + RSHIFT reduce 114 + PLUS reduce 114 + MINUS reduce 114 + DIVIDE reduce 114 + MULTIPLY reduce 114 + MOD reduce 114 + BITNOT reduce 114 + LPAREN reduce 114 + LSQBRACKET shift 583 + LSQBRACKET reduce 114 -- dropped by precedence + PERIOD reduce 114 + SEMICOLON reduce 114 + NAME reduce 114 + COLON reduce 114 + RPAREN reduce 114 + LBRACKET reduce 114 + VAR reduce 114 + RSQBRACKET reduce 114 + L2V reduce 114 + STATIC reduce 114 + CONST reduce 114 + INC reduce 114 + DEC reduce 114 + ONCE reduce 114 + IF reduce 114 + SWITCHCASE reduce 114 + WHILE reduce 114 + FOR reduce 114 + FOREACH reduce 114 + CONTINUE reduce 114 + BREAK reduce 114 + RETURN reduce 114 + ACTIONNAME reduce 114 -State 208: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - (159) constExpr ::= constExpr EQ constExpr * - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 224: + (116) nonConstExpr ::= LPAREN logicExpr RPAREN * - QMARK reduce 159 - COMMA reduce 159 - LOR reduce 159 - LAND reduce 159 - EQ error - EQ reduce 159 - LE error - LE reduce 159 - LT error - LT reduce 159 - GE error - GE reduce 159 - GT error - GT reduce 159 - NE error - NE reduce 159 - BITOR shift 128 - BITOR reduce 159 -- dropped by precedence - BITXOR shift 127 - BITXOR reduce 159 -- dropped by precedence - BITAND shift 129 - BITAND reduce 159 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 159 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 159 -- dropped by precedence - PLUS shift 136 - PLUS reduce 159 -- dropped by precedence - MINUS shift 135 - MINUS reduce 159 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 159 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 159 -- dropped by precedence - MOD shift 132 - MOD reduce 159 -- dropped by precedence - BITNOT reduce 159 - LPAREN reduce 159 - LSQBRACKET reduce 159 - PERIOD reduce 159 - SEMICOLON reduce 159 - NAME reduce 159 - COLON reduce 159 - FUNCTION reduce 159 - RPAREN reduce 159 - LBRACKET reduce 159 - VAR reduce 159 - NUMBER reduce 159 - RSQBRACKET reduce 159 - KILLS reduce 159 - TRGCONST reduce 159 - L2V reduce 159 - MAPSTRING reduce 159 - UNIT reduce 159 - SWITCH reduce 159 - LOCATION reduce 159 - STATTXTTBL reduce 159 - VARRAY reduce 159 - STATIC reduce 159 - CONST reduce 159 - INC reduce 159 - DEC reduce 159 - ONCE reduce 159 - IF reduce 159 - SWITCHCASE reduce 159 - WHILE reduce 159 - FOR reduce 159 - FOREACH reduce 159 - CONTINUE reduce 159 - BREAK reduce 159 - RETURN reduce 159 - ACTIONNAME reduce 159 + QMARK reduce 116 + COMMA reduce 116 + LOR reduce 116 + LAND reduce 116 + LNOT reduce 116 + EQ reduce 116 + LE reduce 116 + LT reduce 116 + GE reduce 116 + GT reduce 116 + NE reduce 116 + BITOR reduce 116 + BITXOR reduce 116 + BITAND reduce 116 + LSHIFT reduce 116 + RSHIFT reduce 116 + PLUS reduce 116 + MINUS reduce 116 + DIVIDE reduce 116 + MULTIPLY reduce 116 + MOD reduce 116 + BITNOT reduce 116 + LPAREN reduce 116 + LSQBRACKET reduce 116 + PERIOD reduce 116 + SEMICOLON reduce 116 + NAME reduce 116 + COLON reduce 116 + RPAREN reduce 116 + LBRACKET reduce 116 + VAR reduce 116 + RSQBRACKET reduce 116 + L2V reduce 116 + STATIC reduce 116 + CONST reduce 116 + INC reduce 116 + DEC reduce 116 + ONCE reduce 116 + IF reduce 116 + SWITCHCASE reduce 116 + WHILE reduce 116 + FOR reduce 116 + FOREACH reduce 116 + CONTINUE reduce 116 + BREAK reduce 116 + RETURN reduce 116 + ACTIONNAME reduce 116 -State 209: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - (179) constExpr ::= constExpr GT constExpr * +State 225: + (90) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * - QMARK reduce 179 - COMMA reduce 179 - LOR reduce 179 - LAND reduce 179 - EQ error - EQ reduce 179 - LE error - LE reduce 179 - LT error - LT reduce 179 - GE error - GE reduce 179 - GT error - GT reduce 179 - NE error - NE reduce 179 - BITOR shift 128 - BITOR reduce 179 -- dropped by precedence - BITXOR shift 127 - BITXOR reduce 179 -- dropped by precedence - BITAND shift 129 - BITAND reduce 179 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 179 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 179 -- dropped by precedence - PLUS shift 136 - PLUS reduce 179 -- dropped by precedence - MINUS shift 135 - MINUS reduce 179 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 179 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 179 -- dropped by precedence - MOD shift 132 - MOD reduce 179 -- dropped by precedence - BITNOT reduce 179 - LPAREN reduce 179 - LSQBRACKET reduce 179 - PERIOD reduce 179 - SEMICOLON reduce 179 - NAME reduce 179 - COLON reduce 179 - FUNCTION reduce 179 - RPAREN reduce 179 - LBRACKET reduce 179 - VAR reduce 179 - NUMBER reduce 179 - RSQBRACKET reduce 179 - KILLS reduce 179 - TRGCONST reduce 179 - L2V reduce 179 - MAPSTRING reduce 179 - UNIT reduce 179 - SWITCH reduce 179 - LOCATION reduce 179 - STATTXTTBL reduce 179 - VARRAY reduce 179 - STATIC reduce 179 - CONST reduce 179 - INC reduce 179 - DEC reduce 179 - ONCE reduce 179 - IF reduce 179 - SWITCHCASE reduce 179 - WHILE reduce 179 - FOR reduce 179 - FOREACH reduce 179 - CONTINUE reduce 179 - BREAK reduce 179 - RETURN reduce 179 - ACTIONNAME reduce 179 + QMARK reduce 90 + COMMA reduce 90 + LOR reduce 90 + LAND reduce 90 + LNOT reduce 90 + EQ reduce 90 + LE reduce 90 + LT reduce 90 + GE reduce 90 + GT reduce 90 + NE reduce 90 + BITOR reduce 90 + BITXOR reduce 90 + BITAND reduce 90 + LSHIFT reduce 90 + RSHIFT reduce 90 + PLUS reduce 90 + MINUS reduce 90 + DIVIDE reduce 90 + MULTIPLY reduce 90 + MOD reduce 90 + BITNOT reduce 90 + LPAREN reduce 90 + LSQBRACKET reduce 90 + PERIOD reduce 90 + SEMICOLON reduce 90 + NAME reduce 90 + COLON reduce 90 + RPAREN reduce 90 + LBRACKET reduce 90 + VAR reduce 90 + RSQBRACKET reduce 90 + L2V reduce 90 + STATIC reduce 90 + CONST reduce 90 + INC reduce 90 + DEC reduce 90 + ONCE reduce 90 + IF reduce 90 + SWITCHCASE reduce 90 + WHILE reduce 90 + FOR reduce 90 + FOREACH reduce 90 + CONTINUE reduce 90 + BREAK reduce 90 + RETURN reduce 90 + ACTIONNAME reduce 90 -State 210: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - (175) constExpr ::= constExpr LT constExpr * - constExpr ::= constExpr * GT constExpr +State 226: + (89) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * - QMARK reduce 175 - COMMA reduce 175 - LOR reduce 175 - LAND reduce 175 - EQ error - EQ reduce 175 - LE error - LE reduce 175 - LT error - LT reduce 175 - GE error - GE reduce 175 - GT error - GT reduce 175 - NE error - NE reduce 175 - BITOR shift 128 - BITOR reduce 175 -- dropped by precedence - BITXOR shift 127 - BITXOR reduce 175 -- dropped by precedence - BITAND shift 129 - BITAND reduce 175 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 175 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 175 -- dropped by precedence - PLUS shift 136 - PLUS reduce 175 -- dropped by precedence - MINUS shift 135 - MINUS reduce 175 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 175 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 175 -- dropped by precedence - MOD shift 132 - MOD reduce 175 -- dropped by precedence - BITNOT reduce 175 - LPAREN reduce 175 - LSQBRACKET reduce 175 - PERIOD reduce 175 - SEMICOLON reduce 175 - NAME reduce 175 - COLON reduce 175 - FUNCTION reduce 175 - RPAREN reduce 175 - LBRACKET reduce 175 - VAR reduce 175 - NUMBER reduce 175 - RSQBRACKET reduce 175 - KILLS reduce 175 - TRGCONST reduce 175 - L2V reduce 175 - MAPSTRING reduce 175 - UNIT reduce 175 - SWITCH reduce 175 - LOCATION reduce 175 - STATTXTTBL reduce 175 - VARRAY reduce 175 - STATIC reduce 175 - CONST reduce 175 - INC reduce 175 - DEC reduce 175 - ONCE reduce 175 - IF reduce 175 - SWITCHCASE reduce 175 - WHILE reduce 175 - FOR reduce 175 - FOREACH reduce 175 - CONTINUE reduce 175 - BREAK reduce 175 - RETURN reduce 175 - ACTIONNAME reduce 175 + QMARK reduce 89 + COMMA reduce 89 + LOR reduce 89 + LAND reduce 89 + LNOT reduce 89 + EQ reduce 89 + LE reduce 89 + LT reduce 89 + GE reduce 89 + GT reduce 89 + NE reduce 89 + BITOR reduce 89 + BITXOR reduce 89 + BITAND reduce 89 + LSHIFT reduce 89 + RSHIFT reduce 89 + PLUS reduce 89 + MINUS reduce 89 + DIVIDE reduce 89 + MULTIPLY reduce 89 + MOD reduce 89 + BITNOT reduce 89 + LPAREN reduce 89 + LSQBRACKET reduce 89 + PERIOD reduce 89 + SEMICOLON reduce 89 + NAME reduce 89 + COLON reduce 89 + RPAREN reduce 89 + LBRACKET reduce 89 + VAR reduce 89 + RSQBRACKET reduce 89 + L2V reduce 89 + STATIC reduce 89 + CONST reduce 89 + INC reduce 89 + DEC reduce 89 + ONCE reduce 89 + IF reduce 89 + SWITCHCASE reduce 89 + WHILE reduce 89 + FOR reduce 89 + FOREACH reduce 89 + CONTINUE reduce 89 + BREAK reduce 89 + RETURN reduce 89 + ACTIONNAME reduce 89 -State 211: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - (171) constExpr ::= constExpr GE constExpr * - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 227: + (88) nonConstExpr ::= nonConstExpr PERIOD NAME * - QMARK reduce 171 - COMMA reduce 171 - LOR reduce 171 - LAND reduce 171 - EQ error - EQ reduce 171 - LE error - LE reduce 171 - LT error - LT reduce 171 - GE error - GE reduce 171 - GT error - GT reduce 171 - NE error - NE reduce 171 - BITOR shift 128 - BITOR reduce 171 -- dropped by precedence - BITXOR shift 127 - BITXOR reduce 171 -- dropped by precedence - BITAND shift 129 - BITAND reduce 171 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 171 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 171 -- dropped by precedence - PLUS shift 136 - PLUS reduce 171 -- dropped by precedence - MINUS shift 135 - MINUS reduce 171 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 171 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 171 -- dropped by precedence - MOD shift 132 - MOD reduce 171 -- dropped by precedence - BITNOT reduce 171 - LPAREN reduce 171 - LSQBRACKET reduce 171 - PERIOD reduce 171 - SEMICOLON reduce 171 - NAME reduce 171 - COLON reduce 171 - FUNCTION reduce 171 - RPAREN reduce 171 - LBRACKET reduce 171 - VAR reduce 171 - NUMBER reduce 171 - RSQBRACKET reduce 171 - KILLS reduce 171 - TRGCONST reduce 171 - L2V reduce 171 - MAPSTRING reduce 171 - UNIT reduce 171 - SWITCH reduce 171 - LOCATION reduce 171 - STATTXTTBL reduce 171 - VARRAY reduce 171 - STATIC reduce 171 - CONST reduce 171 - INC reduce 171 - DEC reduce 171 - ONCE reduce 171 - IF reduce 171 - SWITCHCASE reduce 171 - WHILE reduce 171 - FOR reduce 171 - FOREACH reduce 171 - CONTINUE reduce 171 - BREAK reduce 171 - RETURN reduce 171 - ACTIONNAME reduce 171 - -State 212: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - (167) constExpr ::= constExpr LE constExpr * - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - - QMARK reduce 167 - COMMA reduce 167 - LOR reduce 167 - LAND reduce 167 - EQ error - EQ reduce 167 - LE error - LE reduce 167 - LT error - LT reduce 167 - GE error - GE reduce 167 - GT error - GT reduce 167 - NE error - NE reduce 167 - BITOR shift 128 - BITOR reduce 167 -- dropped by precedence - BITXOR shift 127 - BITXOR reduce 167 -- dropped by precedence - BITAND shift 129 - BITAND reduce 167 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 167 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 167 -- dropped by precedence - PLUS shift 136 - PLUS reduce 167 -- dropped by precedence - MINUS shift 135 - MINUS reduce 167 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 167 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 167 -- dropped by precedence - MOD shift 132 - MOD reduce 167 -- dropped by precedence - BITNOT reduce 167 - LPAREN reduce 167 - LSQBRACKET reduce 167 - PERIOD reduce 167 - SEMICOLON reduce 167 - NAME reduce 167 - COLON reduce 167 - FUNCTION reduce 167 - RPAREN reduce 167 - LBRACKET reduce 167 - VAR reduce 167 - NUMBER reduce 167 - RSQBRACKET reduce 167 - KILLS reduce 167 - TRGCONST reduce 167 - L2V reduce 167 - MAPSTRING reduce 167 - UNIT reduce 167 - SWITCH reduce 167 - LOCATION reduce 167 - STATTXTTBL reduce 167 - VARRAY reduce 167 - STATIC reduce 167 - CONST reduce 167 - INC reduce 167 - DEC reduce 167 - ONCE reduce 167 - IF reduce 167 - SWITCHCASE reduce 167 - WHILE reduce 167 - FOR reduce 167 - FOREACH reduce 167 - CONTINUE reduce 167 - BREAK reduce 167 - RETURN reduce 167 - ACTIONNAME reduce 167 - -State 213: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - (163) constExpr ::= constExpr NE constExpr * - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - - QMARK reduce 163 - COMMA reduce 163 - LOR reduce 163 - LAND reduce 163 - EQ error - EQ reduce 163 - LE error - LE reduce 163 - LT error - LT reduce 163 - GE error - GE reduce 163 - GT error - GT reduce 163 - NE error - NE reduce 163 - BITOR shift 128 - BITOR reduce 163 -- dropped by precedence - BITXOR shift 127 - BITXOR reduce 163 -- dropped by precedence - BITAND shift 129 - BITAND reduce 163 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 163 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 163 -- dropped by precedence - PLUS shift 136 - PLUS reduce 163 -- dropped by precedence - MINUS shift 135 - MINUS reduce 163 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 163 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 163 -- dropped by precedence - MOD shift 132 - MOD reduce 163 -- dropped by precedence - BITNOT reduce 163 - LPAREN reduce 163 - LSQBRACKET reduce 163 - PERIOD reduce 163 - SEMICOLON reduce 163 - NAME reduce 163 - COLON reduce 163 - FUNCTION reduce 163 - RPAREN reduce 163 - LBRACKET reduce 163 - VAR reduce 163 - NUMBER reduce 163 - RSQBRACKET reduce 163 - KILLS reduce 163 - TRGCONST reduce 163 - L2V reduce 163 - MAPSTRING reduce 163 - UNIT reduce 163 - SWITCH reduce 163 - LOCATION reduce 163 - STATTXTTBL reduce 163 - VARRAY reduce 163 - STATIC reduce 163 - CONST reduce 163 - INC reduce 163 - DEC reduce 163 - ONCE reduce 163 - IF reduce 163 - SWITCHCASE reduce 163 - WHILE reduce 163 - FOR reduce 163 - FOREACH reduce 163 - CONTINUE reduce 163 - BREAK reduce 163 - RETURN reduce 163 - ACTIONNAME reduce 163 - -State 214: - (271) logicExpr ::= KILLS LPAREN fArgs RPAREN * - - QMARK reduce 271 - COMMA reduce 271 - LOR reduce 271 - LAND reduce 271 - EQ reduce 271 - LE reduce 271 - LT reduce 271 - GE reduce 271 - GT reduce 271 - NE reduce 271 - BITOR reduce 271 - BITXOR reduce 271 - BITAND reduce 271 - LSHIFT reduce 271 - RSHIFT reduce 271 - PLUS reduce 271 - MINUS reduce 271 - DIVIDE reduce 271 - MULTIPLY reduce 271 - MOD reduce 271 - BITNOT reduce 271 - LPAREN reduce 271 - LSQBRACKET reduce 271 - PERIOD reduce 271 - SEMICOLON reduce 271 - NAME reduce 271 - COLON reduce 271 - FUNCTION reduce 271 - RPAREN reduce 271 - LBRACKET reduce 271 - VAR reduce 271 - NUMBER reduce 271 - RSQBRACKET reduce 271 - KILLS reduce 271 - TRGCONST reduce 271 - L2V reduce 271 - MAPSTRING reduce 271 - UNIT reduce 271 - SWITCH reduce 271 - LOCATION reduce 271 - STATTXTTBL reduce 271 - VARRAY reduce 271 - STATIC reduce 271 - CONST reduce 271 - INC reduce 271 - DEC reduce 271 - ONCE reduce 271 - IF reduce 271 - SWITCHCASE reduce 271 - WHILE reduce 271 - FOR reduce 271 - FOREACH reduce 271 - CONTINUE reduce 271 - BREAK reduce 271 - RETURN reduce 271 - ACTIONNAME reduce 271 - -State 215: - (106) funcexpr ::= NAME LPAREN fArgs RPAREN * - - QMARK reduce 106 - COMMA reduce 106 - LOR reduce 106 - LAND reduce 106 - EQ reduce 106 - LE reduce 106 - LT reduce 106 - GE reduce 106 - GT reduce 106 - NE reduce 106 - BITOR reduce 106 - BITXOR reduce 106 - BITAND reduce 106 - LSHIFT reduce 106 - RSHIFT reduce 106 - PLUS reduce 106 - MINUS reduce 106 - DIVIDE reduce 106 - MULTIPLY reduce 106 - MOD reduce 106 - BITNOT reduce 106 - LPAREN reduce 106 - LSQBRACKET reduce 106 - PERIOD reduce 106 - SEMICOLON reduce 106 - NAME reduce 106 - COLON reduce 106 - FUNCTION reduce 106 - RPAREN reduce 106 - LBRACKET reduce 106 - VAR reduce 106 - NUMBER reduce 106 - RSQBRACKET reduce 106 - KILLS reduce 106 - TRGCONST reduce 106 - L2V reduce 106 - MAPSTRING reduce 106 - UNIT reduce 106 - SWITCH reduce 106 - LOCATION reduce 106 - STATTXTTBL reduce 106 - VARRAY reduce 106 - STATIC reduce 106 - CONST reduce 106 - INC reduce 106 - DEC reduce 106 - ONCE reduce 106 - IF reduce 106 - SWITCHCASE reduce 106 - WHILE reduce 106 - FOR reduce 106 - FOREACH reduce 106 - CONTINUE reduce 106 - BREAK reduce 106 - RETURN reduce 106 - ACTIONNAME reduce 106 - -State 216: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (182) logicExpr ::= nonConstExpr GT nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 182 - COMMA reduce 182 - LOR reduce 182 - LAND reduce 182 - EQ reduce 182 - LE reduce 182 - LT reduce 182 - GE reduce 182 - GT reduce 182 - NE reduce 182 - BITOR shift 66 - BITOR reduce 182 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 182 -- dropped by precedence - BITAND shift 67 - BITAND reduce 182 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 182 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 182 -- dropped by precedence - PLUS shift 74 - PLUS reduce 182 -- dropped by precedence - MINUS shift 73 - MINUS reduce 182 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 182 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 182 -- dropped by precedence - MOD shift 70 - MOD reduce 182 -- dropped by precedence - BITNOT reduce 182 - LPAREN shift 23 - LPAREN reduce 182 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 182 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 182 -- dropped by precedence - SEMICOLON reduce 182 - NAME reduce 182 - COLON reduce 182 - FUNCTION reduce 182 - RPAREN reduce 182 - LBRACKET reduce 182 - VAR reduce 182 - NUMBER reduce 182 - RSQBRACKET reduce 182 - KILLS reduce 182 - TRGCONST reduce 182 - L2V reduce 182 - MAPSTRING reduce 182 - UNIT reduce 182 - SWITCH reduce 182 - LOCATION reduce 182 - STATTXTTBL reduce 182 - VARRAY reduce 182 - STATIC reduce 182 - CONST reduce 182 - INC reduce 182 - DEC reduce 182 - ONCE reduce 182 - IF reduce 182 - SWITCHCASE reduce 182 - WHILE reduce 182 - FOR reduce 182 - FOREACH reduce 182 - CONTINUE reduce 182 - BREAK reduce 182 - RETURN reduce 182 - ACTIONNAME reduce 182 + QMARK reduce 88 + COMMA reduce 88 + LOR reduce 88 + LAND reduce 88 + LNOT reduce 88 + EQ reduce 88 + LE reduce 88 + LT reduce 88 + GE reduce 88 + GT reduce 88 + NE reduce 88 + BITOR reduce 88 + BITXOR reduce 88 + BITAND reduce 88 + LSHIFT reduce 88 + RSHIFT reduce 88 + PLUS reduce 88 + MINUS reduce 88 + DIVIDE reduce 88 + MULTIPLY reduce 88 + MOD reduce 88 + BITNOT reduce 88 + LPAREN reduce 88 + LSQBRACKET reduce 88 + PERIOD reduce 88 + SEMICOLON reduce 88 + NAME reduce 88 + COLON reduce 88 + RPAREN reduce 88 + LBRACKET reduce 88 + VAR reduce 88 + RSQBRACKET reduce 88 + L2V reduce 88 + STATIC reduce 88 + CONST reduce 88 + INC reduce 88 + DEC reduce 88 + ONCE reduce 88 + IF reduce 88 + SWITCHCASE reduce 88 + WHILE reduce 88 + FOR reduce 88 + FOREACH reduce 88 + CONTINUE reduce 88 + BREAK reduce 88 + RETURN reduce 88 + ACTIONNAME reduce 88 -State 217: +State 228: nonConstExpr ::= nonConstExpr * PERIOD NAME nonConstExpr ::= nonConstExpr * PERIOD TRGCONST nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (178) logicExpr ::= nonConstExpr LT nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 178 - COMMA reduce 178 - LOR reduce 178 - LAND reduce 178 - EQ reduce 178 - LE reduce 178 - LT reduce 178 - GE reduce 178 - GT reduce 178 - NE reduce 178 - BITOR shift 66 - BITOR reduce 178 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 178 -- dropped by precedence - BITAND shift 67 - BITAND reduce 178 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 178 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 178 -- dropped by precedence - PLUS shift 74 - PLUS reduce 178 -- dropped by precedence - MINUS shift 73 - MINUS reduce 178 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 178 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 178 -- dropped by precedence - MOD shift 70 - MOD reduce 178 -- dropped by precedence - BITNOT reduce 178 - LPAREN shift 23 - LPAREN reduce 178 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 178 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 178 -- dropped by precedence - SEMICOLON reduce 178 - NAME reduce 178 - COLON reduce 178 - FUNCTION reduce 178 - RPAREN reduce 178 - LBRACKET reduce 178 - VAR reduce 178 - NUMBER reduce 178 - RSQBRACKET reduce 178 - KILLS reduce 178 - TRGCONST reduce 178 - L2V reduce 178 - MAPSTRING reduce 178 - UNIT reduce 178 - SWITCH reduce 178 - LOCATION reduce 178 - STATTXTTBL reduce 178 - VARRAY reduce 178 - STATIC reduce 178 - CONST reduce 178 - INC reduce 178 - DEC reduce 178 - ONCE reduce 178 - IF reduce 178 - SWITCHCASE reduce 178 - WHILE reduce 178 - FOR reduce 178 - FOREACH reduce 178 - CONTINUE reduce 178 - BREAK reduce 178 - RETURN reduce 178 - ACTIONNAME reduce 178 + (143) factor ::= nonConstExpr * -State 218: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (174) logicExpr ::= nonConstExpr GE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 174 - COMMA reduce 174 - LOR reduce 174 - LAND reduce 174 - EQ reduce 174 - LE reduce 174 - LT reduce 174 - GE reduce 174 - GT reduce 174 - NE reduce 174 - BITOR shift 66 - BITOR reduce 174 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 174 -- dropped by precedence - BITAND shift 67 - BITAND reduce 174 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 174 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 174 -- dropped by precedence - PLUS shift 74 - PLUS reduce 174 -- dropped by precedence - MINUS shift 73 - MINUS reduce 174 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 174 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 174 -- dropped by precedence - MOD shift 70 - MOD reduce 174 -- dropped by precedence - BITNOT reduce 174 - LPAREN shift 23 - LPAREN reduce 174 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 174 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 174 -- dropped by precedence - SEMICOLON reduce 174 - NAME reduce 174 - COLON reduce 174 - FUNCTION reduce 174 - RPAREN reduce 174 - LBRACKET reduce 174 - VAR reduce 174 - NUMBER reduce 174 - RSQBRACKET reduce 174 - KILLS reduce 174 - TRGCONST reduce 174 - L2V reduce 174 - MAPSTRING reduce 174 - UNIT reduce 174 - SWITCH reduce 174 - LOCATION reduce 174 - STATTXTTBL reduce 174 - VARRAY reduce 174 - STATIC reduce 174 - CONST reduce 174 - INC reduce 174 - DEC reduce 174 - ONCE reduce 174 - IF reduce 174 - SWITCHCASE reduce 174 - WHILE reduce 174 - FOR reduce 174 - FOREACH reduce 174 - CONTINUE reduce 174 - BREAK reduce 174 - RETURN reduce 174 - ACTIONNAME reduce 174 + QMARK reduce 143 + COMMA reduce 143 + LOR reduce 143 + LAND reduce 143 + LNOT reduce 143 + EQ reduce 143 + LE reduce 143 + LT reduce 143 + GE reduce 143 + GT reduce 143 + NE reduce 143 + BITOR reduce 143 + BITXOR reduce 143 + BITAND reduce 143 + LSHIFT reduce 143 + RSHIFT reduce 143 + PLUS reduce 143 + MINUS reduce 143 + DIVIDE reduce 143 + MULTIPLY reduce 143 + MOD reduce 143 + BITNOT reduce 143 + LPAREN shift 20 + LPAREN reduce 143 -- dropped by precedence + LSQBRACKET shift 64 + PERIOD shift 493 + SEMICOLON reduce 143 + NAME reduce 143 + COLON reduce 143 + RPAREN reduce 143 + LBRACKET reduce 143 + VAR reduce 143 + RSQBRACKET reduce 143 + L2V reduce 143 + STATIC reduce 143 + CONST reduce 143 + INC reduce 143 + DEC reduce 143 + ONCE reduce 143 + IF reduce 143 + SWITCHCASE reduce 143 + WHILE reduce 143 + FOR reduce 143 + FOREACH reduce 143 + CONTINUE reduce 143 + BREAK reduce 143 + RETURN reduce 143 + ACTIONNAME reduce 143 + +State 229: + (87) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN + + QMARK reduce 87 + COMMA reduce 87 + LOR reduce 87 + LAND reduce 87 + LNOT reduce 87 + EQ reduce 87 + LE reduce 87 + LT reduce 87 + GE reduce 87 + GT reduce 87 + NE reduce 87 + BITOR reduce 87 + BITXOR reduce 87 + BITAND reduce 87 + LSHIFT reduce 87 + RSHIFT reduce 87 + PLUS reduce 87 + MINUS reduce 87 + DIVIDE reduce 87 + MULTIPLY reduce 87 + MOD reduce 87 + BITNOT reduce 87 + LPAREN shift 21 + LPAREN reduce 87 -- dropped by precedence + LSQBRACKET reduce 87 + PERIOD reduce 87 + SEMICOLON reduce 87 + NAME reduce 87 + COLON reduce 87 + RPAREN reduce 87 + LBRACKET reduce 87 + VAR reduce 87 + RSQBRACKET reduce 87 + L2V reduce 87 + STATIC reduce 87 + CONST reduce 87 + INC reduce 87 + DEC reduce 87 + ONCE reduce 87 + IF reduce 87 + SWITCHCASE reduce 87 + WHILE reduce 87 + FOR reduce 87 + FOREACH reduce 87 + CONTINUE reduce 87 + BREAK reduce 87 + RETURN reduce 87 + ACTIONNAME reduce 87 + +State 230: + (79) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * + + QMARK reduce 79 + COMMA reduce 79 + LOR reduce 79 + LAND reduce 79 + LNOT reduce 79 + EQ reduce 79 + LE reduce 79 + LT reduce 79 + GE reduce 79 + GT reduce 79 + NE reduce 79 + BITOR reduce 79 + BITXOR reduce 79 + BITAND reduce 79 + LSHIFT reduce 79 + RSHIFT reduce 79 + PLUS reduce 79 + MINUS reduce 79 + DIVIDE reduce 79 + MULTIPLY reduce 79 + MOD reduce 79 + BITNOT reduce 79 + LPAREN reduce 79 + LSQBRACKET reduce 79 + PERIOD reduce 79 + SEMICOLON reduce 79 + NAME reduce 79 + COLON reduce 79 + RPAREN reduce 79 + LBRACKET reduce 79 + VAR reduce 79 + RSQBRACKET reduce 79 + L2V reduce 79 + STATIC reduce 79 + CONST reduce 79 + INC reduce 79 + DEC reduce 79 + ONCE reduce 79 + IF reduce 79 + SWITCHCASE reduce 79 + WHILE reduce 79 + FOR reduce 79 + FOREACH reduce 79 + CONTINUE reduce 79 + BREAK reduce 79 + RETURN reduce 79 + ACTIONNAME reduce 79 + +State 231: + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (114) nonConstExpr ::= funcexpr * + + QMARK reduce 114 + COMMA reduce 114 + LOR reduce 114 + LAND reduce 114 + LNOT reduce 114 + EQ reduce 114 + LE reduce 114 + LT reduce 114 + GE reduce 114 + GT reduce 114 + NE reduce 114 + BITOR reduce 114 + BITXOR reduce 114 + BITAND reduce 114 + LSHIFT reduce 114 + RSHIFT reduce 114 + PLUS reduce 114 + MINUS reduce 114 + DIVIDE reduce 114 + MULTIPLY reduce 114 + MOD reduce 114 + BITNOT reduce 114 + LPAREN reduce 114 + LSQBRACKET shift 602 + LSQBRACKET reduce 114 -- dropped by precedence + PERIOD reduce 114 + SEMICOLON reduce 114 + NAME reduce 114 + COLON reduce 114 + RPAREN reduce 114 + LBRACKET reduce 114 + VAR reduce 114 + RSQBRACKET reduce 114 + L2V reduce 114 + STATIC reduce 114 + CONST reduce 114 + INC reduce 114 + DEC reduce 114 + ONCE reduce 114 + IF reduce 114 + SWITCHCASE reduce 114 + WHILE reduce 114 + FOR reduce 114 + FOREACH reduce 114 + CONTINUE reduce 114 + BREAK reduce 114 + RETURN reduce 114 + ACTIONNAME reduce 114 + +State 232: + (92) constExpr ::= lambdaExprStart stmt * + + QMARK reduce 92 + COMMA reduce 92 + LOR reduce 92 + LAND reduce 92 + LNOT reduce 92 + EQ reduce 92 + LE reduce 92 + LT reduce 92 + GE reduce 92 + GT reduce 92 + NE reduce 92 + BITOR reduce 92 + BITXOR reduce 92 + BITAND reduce 92 + LSHIFT reduce 92 + RSHIFT reduce 92 + PLUS reduce 92 + MINUS reduce 92 + DIVIDE reduce 92 + MULTIPLY reduce 92 + MOD reduce 92 + BITNOT reduce 92 + LPAREN reduce 92 + SEMICOLON reduce 92 + NAME reduce 92 + COLON reduce 92 + RPAREN reduce 92 + LBRACKET reduce 92 + VAR reduce 92 + RSQBRACKET reduce 92 + L2V reduce 92 + STATIC reduce 92 + CONST reduce 92 + INC reduce 92 + DEC reduce 92 + ONCE reduce 92 + IF reduce 92 + SWITCHCASE reduce 92 + WHILE reduce 92 + FOR reduce 92 + FOREACH reduce 92 + CONTINUE reduce 92 + BREAK reduce 92 + RETURN reduce 92 + ACTIONNAME reduce 92 + +State 233: + (119) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * + + QMARK reduce 119 + COMMA reduce 119 + LOR reduce 119 + LAND reduce 119 + LNOT reduce 119 + EQ reduce 119 + LE reduce 119 + LT reduce 119 + GE reduce 119 + GT reduce 119 + NE reduce 119 + BITOR reduce 119 + BITXOR reduce 119 + BITAND reduce 119 + LSHIFT reduce 119 + RSHIFT reduce 119 + PLUS reduce 119 + MINUS reduce 119 + DIVIDE reduce 119 + MULTIPLY reduce 119 + MOD reduce 119 + BITNOT reduce 119 + LPAREN reduce 119 + SEMICOLON reduce 119 + NAME reduce 119 + COLON reduce 119 + RPAREN reduce 119 + LBRACKET reduce 119 + VAR reduce 119 + RSQBRACKET reduce 119 + L2V reduce 119 + STATIC reduce 119 + CONST reduce 119 + INC reduce 119 + DEC reduce 119 + ONCE reduce 119 + IF reduce 119 + SWITCHCASE reduce 119 + WHILE reduce 119 + FOR reduce 119 + FOREACH reduce 119 + CONTINUE reduce 119 + BREAK reduce 119 + RETURN reduce 119 + ACTIONNAME reduce 119 + +State 234: + (145) factor ::= factor MULTIPLY constExpr * + + QMARK reduce 145 + COMMA reduce 145 + LOR reduce 145 + LAND reduce 145 + LNOT reduce 145 + EQ reduce 145 + LE reduce 145 + LT reduce 145 + GE reduce 145 + GT reduce 145 + NE reduce 145 + BITOR reduce 145 + BITXOR reduce 145 + BITAND reduce 145 + LSHIFT reduce 145 + RSHIFT reduce 145 + PLUS reduce 145 + MINUS reduce 145 + DIVIDE reduce 145 + MULTIPLY reduce 145 + MOD reduce 145 + BITNOT reduce 145 + LPAREN reduce 145 + SEMICOLON reduce 145 + NAME reduce 145 + COLON reduce 145 + RPAREN reduce 145 + LBRACKET reduce 145 + VAR reduce 145 + RSQBRACKET reduce 145 + L2V reduce 145 + STATIC reduce 145 + CONST reduce 145 + INC reduce 145 + DEC reduce 145 + ONCE reduce 145 + IF reduce 145 + SWITCHCASE reduce 145 + WHILE reduce 145 + FOR reduce 145 + FOREACH reduce 145 + CONTINUE reduce 145 + BREAK reduce 145 + RETURN reduce 145 + ACTIONNAME reduce 145 -State 219: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (170) logicExpr ::= nonConstExpr LE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 170 - COMMA reduce 170 - LOR reduce 170 - LAND reduce 170 - EQ reduce 170 - LE reduce 170 - LT reduce 170 - GE reduce 170 - GT reduce 170 - NE reduce 170 - BITOR shift 66 - BITOR reduce 170 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 170 -- dropped by precedence - BITAND shift 67 - BITAND reduce 170 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 170 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 170 -- dropped by precedence - PLUS shift 74 - PLUS reduce 170 -- dropped by precedence - MINUS shift 73 - MINUS reduce 170 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 170 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 170 -- dropped by precedence - MOD shift 70 - MOD reduce 170 -- dropped by precedence - BITNOT reduce 170 - LPAREN shift 23 - LPAREN reduce 170 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 170 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 170 -- dropped by precedence - SEMICOLON reduce 170 - NAME reduce 170 - COLON reduce 170 - FUNCTION reduce 170 - RPAREN reduce 170 - LBRACKET reduce 170 - VAR reduce 170 - NUMBER reduce 170 - RSQBRACKET reduce 170 - KILLS reduce 170 - TRGCONST reduce 170 - L2V reduce 170 - MAPSTRING reduce 170 - UNIT reduce 170 - SWITCH reduce 170 - LOCATION reduce 170 - STATTXTTBL reduce 170 - VARRAY reduce 170 - STATIC reduce 170 - CONST reduce 170 - INC reduce 170 - DEC reduce 170 - ONCE reduce 170 - IF reduce 170 - SWITCHCASE reduce 170 - WHILE reduce 170 - FOR reduce 170 - FOREACH reduce 170 - CONTINUE reduce 170 - BREAK reduce 170 - RETURN reduce 170 - ACTIONNAME reduce 170 +State 235: + (130) constTerm ::= constTerm PLUS constFactor * + constFactor ::= constFactor * MULTIPLY constExpr + constFactor ::= constFactor * MOD constExpr + constFactor ::= constFactor * DIVIDE constExpr -State 220: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (166) logicExpr ::= nonConstExpr NE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 166 - COMMA reduce 166 - LOR reduce 166 - LAND reduce 166 - EQ reduce 166 - LE reduce 166 - LT reduce 166 - GE reduce 166 - GT reduce 166 - NE reduce 166 - BITOR shift 66 - BITOR reduce 166 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 166 -- dropped by precedence - BITAND shift 67 - BITAND reduce 166 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 166 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 166 -- dropped by precedence - PLUS shift 74 - PLUS reduce 166 -- dropped by precedence - MINUS shift 73 - MINUS reduce 166 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 166 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 166 -- dropped by precedence - MOD shift 70 - MOD reduce 166 -- dropped by precedence - BITNOT reduce 166 - LPAREN shift 23 - LPAREN reduce 166 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 166 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 166 -- dropped by precedence - SEMICOLON reduce 166 - NAME reduce 166 - COLON reduce 166 - FUNCTION reduce 166 - RPAREN reduce 166 - LBRACKET reduce 166 - VAR reduce 166 - NUMBER reduce 166 - RSQBRACKET reduce 166 - KILLS reduce 166 - TRGCONST reduce 166 - L2V reduce 166 - MAPSTRING reduce 166 - UNIT reduce 166 - SWITCH reduce 166 - LOCATION reduce 166 - STATTXTTBL reduce 166 - VARRAY reduce 166 - STATIC reduce 166 - CONST reduce 166 - INC reduce 166 - DEC reduce 166 - ONCE reduce 166 - IF reduce 166 - SWITCHCASE reduce 166 - WHILE reduce 166 - FOR reduce 166 - FOREACH reduce 166 - CONTINUE reduce 166 - BREAK reduce 166 - RETURN reduce 166 - ACTIONNAME reduce 166 + QMARK reduce 130 + COMMA reduce 130 + LOR reduce 130 + LAND reduce 130 + LNOT reduce 130 + EQ reduce 130 + LE reduce 130 + LT reduce 130 + GE reduce 130 + GT reduce 130 + NE reduce 130 + BITOR reduce 130 + BITXOR reduce 130 + BITAND reduce 130 + LSHIFT reduce 130 + RSHIFT reduce 130 + PLUS reduce 130 + MINUS reduce 130 + DIVIDE shift 139 + MULTIPLY shift 145 + MOD shift 140 + BITNOT reduce 130 + LPAREN reduce 130 + SEMICOLON reduce 130 + NAME reduce 130 + COLON reduce 130 + RPAREN reduce 130 + LBRACKET reduce 130 + VAR reduce 130 + RSQBRACKET reduce 130 + L2V reduce 130 + STATIC reduce 130 + CONST reduce 130 + INC reduce 130 + DEC reduce 130 + ONCE reduce 130 + IF reduce 130 + SWITCHCASE reduce 130 + WHILE reduce 130 + FOR reduce 130 + FOREACH reduce 130 + CONTINUE reduce 130 + BREAK reduce 130 + RETURN reduce 130 + ACTIONNAME reduce 130 + +State 236: + (319) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * + + QMARK reduce 319 + COMMA reduce 319 + LOR reduce 319 + LAND reduce 319 + LNOT reduce 319 + EQ reduce 319 + LE reduce 319 + LT reduce 319 + GE reduce 319 + GT reduce 319 + NE reduce 319 + BITOR reduce 319 + BITXOR reduce 319 + BITAND reduce 319 + LSHIFT reduce 319 + RSHIFT reduce 319 + PLUS reduce 319 + MINUS reduce 319 + DIVIDE reduce 319 + MULTIPLY reduce 319 + MOD reduce 319 + BITNOT reduce 319 + LPAREN reduce 319 + SEMICOLON reduce 319 + NAME reduce 319 + COLON reduce 319 + RPAREN reduce 319 + LBRACKET reduce 319 + VAR reduce 319 + RSQBRACKET reduce 319 + L2V reduce 319 + STATIC reduce 319 + CONST reduce 319 + INC reduce 319 + DEC reduce 319 + ONCE reduce 319 + IF reduce 319 + SWITCHCASE reduce 319 + WHILE reduce 319 + FOR reduce 319 + FOREACH reduce 319 + CONTINUE reduce 319 + BREAK reduce 319 + RETURN reduce 319 + ACTIONNAME reduce 319 + +State 237: + (138) term ::= term MINUS factor * + factor ::= factor * MULTIPLY constExpr + factor ::= factor * MULTIPLY nonConstExpr + factor ::= factor * DIVIDE constExpr + factor ::= factor * DIVIDE nonConstExpr + factor ::= factor * MOD constExpr + factor ::= factor * MOD nonConstExpr + + QMARK reduce 138 + COMMA reduce 138 + LOR reduce 138 + LAND reduce 138 + LNOT reduce 138 + EQ reduce 138 + LE reduce 138 + LT reduce 138 + GE reduce 138 + GT reduce 138 + NE reduce 138 + BITOR reduce 138 + BITXOR reduce 138 + BITAND reduce 138 + LSHIFT reduce 138 + RSHIFT reduce 138 + PLUS reduce 138 + MINUS reduce 138 + DIVIDE shift 125 + MULTIPLY shift 126 + MOD shift 120 + BITNOT reduce 138 + LPAREN reduce 138 + SEMICOLON reduce 138 + NAME reduce 138 + COLON reduce 138 + RPAREN reduce 138 + LBRACKET reduce 138 + VAR reduce 138 + RSQBRACKET reduce 138 + L2V reduce 138 + STATIC reduce 138 + CONST reduce 138 + INC reduce 138 + DEC reduce 138 + ONCE reduce 138 + IF reduce 138 + SWITCHCASE reduce 138 + WHILE reduce 138 + FOR reduce 138 + FOREACH reduce 138 + CONTINUE reduce 138 + BREAK reduce 138 + RETURN reduce 138 + ACTIONNAME reduce 138 + +State 238: + (137) term ::= term MINUS constFactor * + constFactor ::= constFactor * MULTIPLY constExpr + constFactor ::= constFactor * MOD constExpr + constFactor ::= constFactor * DIVIDE constExpr + + QMARK reduce 137 + COMMA reduce 137 + LOR reduce 137 + LAND reduce 137 + LNOT reduce 137 + EQ reduce 137 + LE reduce 137 + LT reduce 137 + GE reduce 137 + GT reduce 137 + NE reduce 137 + BITOR reduce 137 + BITXOR reduce 137 + BITAND reduce 137 + LSHIFT reduce 137 + RSHIFT reduce 137 + PLUS reduce 137 + MINUS reduce 137 + DIVIDE shift 139 + MULTIPLY shift 145 + MOD shift 140 + BITNOT reduce 137 + LPAREN reduce 137 + SEMICOLON reduce 137 + NAME reduce 137 + COLON reduce 137 + RPAREN reduce 137 + LBRACKET reduce 137 + VAR reduce 137 + RSQBRACKET reduce 137 + L2V reduce 137 + STATIC reduce 137 + CONST reduce 137 + INC reduce 137 + DEC reduce 137 + ONCE reduce 137 + IF reduce 137 + SWITCHCASE reduce 137 + WHILE reduce 137 + FOR reduce 137 + FOREACH reduce 137 + CONTINUE reduce 137 + BREAK reduce 137 + RETURN reduce 137 + ACTIONNAME reduce 137 + +State 239: + (136) term ::= constFactor MINUS factor * + factor ::= factor * MULTIPLY constExpr + factor ::= factor * MULTIPLY nonConstExpr + factor ::= factor * DIVIDE constExpr + factor ::= factor * DIVIDE nonConstExpr + factor ::= factor * MOD constExpr + factor ::= factor * MOD nonConstExpr + + QMARK reduce 136 + COMMA reduce 136 + LOR reduce 136 + LAND reduce 136 + LNOT reduce 136 + EQ reduce 136 + LE reduce 136 + LT reduce 136 + GE reduce 136 + GT reduce 136 + NE reduce 136 + BITOR reduce 136 + BITXOR reduce 136 + BITAND reduce 136 + LSHIFT reduce 136 + RSHIFT reduce 136 + PLUS reduce 136 + MINUS reduce 136 + DIVIDE shift 125 + MULTIPLY shift 126 + MOD shift 120 + BITNOT reduce 136 + LPAREN reduce 136 + SEMICOLON reduce 136 + NAME reduce 136 + COLON reduce 136 + RPAREN reduce 136 + LBRACKET reduce 136 + VAR reduce 136 + RSQBRACKET reduce 136 + L2V reduce 136 + STATIC reduce 136 + CONST reduce 136 + INC reduce 136 + DEC reduce 136 + ONCE reduce 136 + IF reduce 136 + SWITCHCASE reduce 136 + WHILE reduce 136 + FOR reduce 136 + FOREACH reduce 136 + CONTINUE reduce 136 + BREAK reduce 136 + RETURN reduce 136 + ACTIONNAME reduce 136 -State 221: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (162) logicExpr ::= nonConstExpr EQ nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 162 - COMMA reduce 162 - LOR reduce 162 - LAND reduce 162 - EQ reduce 162 - LE reduce 162 - LT reduce 162 - GE reduce 162 - GT reduce 162 - NE reduce 162 - BITOR shift 66 - BITOR reduce 162 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 162 -- dropped by precedence - BITAND shift 67 - BITAND reduce 162 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 162 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 162 -- dropped by precedence - PLUS shift 74 - PLUS reduce 162 -- dropped by precedence - MINUS shift 73 - MINUS reduce 162 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 162 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 162 -- dropped by precedence - MOD shift 70 - MOD reduce 162 -- dropped by precedence - BITNOT reduce 162 - LPAREN shift 23 - LPAREN reduce 162 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 162 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 162 -- dropped by precedence - SEMICOLON reduce 162 - NAME reduce 162 - COLON reduce 162 - FUNCTION reduce 162 - RPAREN reduce 162 - LBRACKET reduce 162 - VAR reduce 162 - NUMBER reduce 162 - RSQBRACKET reduce 162 - KILLS reduce 162 - TRGCONST reduce 162 - L2V reduce 162 - MAPSTRING reduce 162 - UNIT reduce 162 - SWITCH reduce 162 - LOCATION reduce 162 - STATTXTTBL reduce 162 - VARRAY reduce 162 - STATIC reduce 162 - CONST reduce 162 - INC reduce 162 - DEC reduce 162 - ONCE reduce 162 - IF reduce 162 - SWITCHCASE reduce 162 - WHILE reduce 162 - FOR reduce 162 - FOREACH reduce 162 - CONTINUE reduce 162 - BREAK reduce 162 - RETURN reduce 162 - ACTIONNAME reduce 162 +State 240: + (139) constFactor ::= constExpr * -State 222: - (86) constExpr ::= lambdaExprStart stmt * + QMARK reduce 139 + COMMA reduce 139 + LOR reduce 139 + LAND reduce 139 + LNOT reduce 139 + EQ reduce 139 + LE reduce 139 + LT reduce 139 + GE reduce 139 + GT reduce 139 + NE reduce 139 + BITOR reduce 139 + BITXOR reduce 139 + BITAND reduce 139 + LSHIFT reduce 139 + RSHIFT reduce 139 + PLUS reduce 139 + MINUS reduce 139 + DIVIDE reduce 139 + MULTIPLY reduce 139 + MOD reduce 139 + BITNOT reduce 139 + LPAREN reduce 139 + SEMICOLON reduce 139 + NAME reduce 139 + COLON reduce 139 + RPAREN reduce 139 + LBRACKET reduce 139 + VAR reduce 139 + RSQBRACKET reduce 139 + L2V reduce 139 + STATIC reduce 139 + CONST reduce 139 + INC reduce 139 + DEC reduce 139 + ONCE reduce 139 + IF reduce 139 + SWITCHCASE reduce 139 + WHILE reduce 139 + FOR reduce 139 + FOREACH reduce 139 + CONTINUE reduce 139 + BREAK reduce 139 + RETURN reduce 139 + ACTIONNAME reduce 139 - QMARK reduce 86 - COMMA reduce 86 - LOR reduce 86 - LAND reduce 86 - EQ reduce 86 - LE reduce 86 - LT reduce 86 - GE reduce 86 - GT reduce 86 - NE reduce 86 - BITOR reduce 86 - BITXOR reduce 86 - BITAND reduce 86 - LSHIFT reduce 86 - RSHIFT reduce 86 - PLUS reduce 86 - MINUS reduce 86 - DIVIDE reduce 86 - MULTIPLY reduce 86 - MOD reduce 86 - BITNOT reduce 86 - LPAREN reduce 86 - LSQBRACKET reduce 86 - PERIOD reduce 86 - SEMICOLON reduce 86 - NAME reduce 86 - COLON reduce 86 - FUNCTION reduce 86 - RPAREN reduce 86 - LBRACKET reduce 86 - VAR reduce 86 - NUMBER reduce 86 - RSQBRACKET reduce 86 - KILLS reduce 86 - TRGCONST reduce 86 - L2V reduce 86 - MAPSTRING reduce 86 - UNIT reduce 86 - SWITCH reduce 86 - LOCATION reduce 86 - STATTXTTBL reduce 86 - VARRAY reduce 86 - STATIC reduce 86 - CONST reduce 86 - INC reduce 86 - DEC reduce 86 - ONCE reduce 86 - IF reduce 86 - SWITCHCASE reduce 86 - WHILE reduce 86 - FOR reduce 86 - FOREACH reduce 86 - CONTINUE reduce 86 - BREAK reduce 86 - RETURN reduce 86 - ACTIONNAME reduce 86 +State 241: + (131) constTerm ::= constTerm MINUS constFactor * + constFactor ::= constFactor * MULTIPLY constExpr + constFactor ::= constFactor * MOD constExpr + constFactor ::= constFactor * DIVIDE constExpr -State 223: - constExpr ::= constExpr * PLUS constExpr - (123) constExpr ::= constExpr PLUS constExpr * - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 131 + COMMA reduce 131 + LOR reduce 131 + LAND reduce 131 + LNOT reduce 131 + EQ reduce 131 + LE reduce 131 + LT reduce 131 + GE reduce 131 + GT reduce 131 + NE reduce 131 + BITOR reduce 131 + BITXOR reduce 131 + BITAND reduce 131 + LSHIFT reduce 131 + RSHIFT reduce 131 + PLUS reduce 131 + MINUS reduce 131 + DIVIDE shift 139 + MULTIPLY shift 145 + MOD shift 140 + BITNOT reduce 131 + LPAREN reduce 131 + SEMICOLON reduce 131 + NAME reduce 131 + COLON reduce 131 + RPAREN reduce 131 + LBRACKET reduce 131 + VAR reduce 131 + RSQBRACKET reduce 131 + L2V reduce 131 + STATIC reduce 131 + CONST reduce 131 + INC reduce 131 + DEC reduce 131 + ONCE reduce 131 + IF reduce 131 + SWITCHCASE reduce 131 + WHILE reduce 131 + FOR reduce 131 + FOREACH reduce 131 + CONTINUE reduce 131 + BREAK reduce 131 + RETURN reduce 131 + ACTIONNAME reduce 131 - QMARK reduce 123 - COMMA reduce 123 - LOR reduce 123 - LAND reduce 123 - EQ shift 138 -- dropped by precedence - EQ reduce 123 - LE shift 125 -- dropped by precedence - LE reduce 123 - LT shift 123 -- dropped by precedence - LT reduce 123 - GE shift 124 -- dropped by precedence - GE reduce 123 - GT shift 122 -- dropped by precedence - GT reduce 123 - NE shift 126 -- dropped by precedence - NE reduce 123 - BITOR shift 102 -- dropped by precedence - BITOR reduce 123 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 123 - BITAND shift 103 -- dropped by precedence - BITAND reduce 123 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 123 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 123 - PLUS shift 113 -- dropped by precedence - PLUS reduce 123 - MINUS shift 112 -- dropped by precedence - MINUS reduce 123 - DIVIDE shift 107 - DIVIDE reduce 123 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 123 -- dropped by precedence - MOD shift 106 - MOD reduce 123 -- dropped by precedence - BITNOT reduce 123 - LPAREN reduce 123 - LSQBRACKET reduce 123 - PERIOD reduce 123 - SEMICOLON reduce 123 - NAME reduce 123 - COLON reduce 123 - FUNCTION reduce 123 - RPAREN reduce 123 - LBRACKET reduce 123 - VAR reduce 123 - NUMBER reduce 123 - RSQBRACKET reduce 123 - KILLS reduce 123 - TRGCONST reduce 123 - L2V reduce 123 - MAPSTRING reduce 123 - UNIT reduce 123 - SWITCH reduce 123 - LOCATION reduce 123 - STATTXTTBL reduce 123 - VARRAY reduce 123 - STATIC reduce 123 - CONST reduce 123 - INC reduce 123 - DEC reduce 123 - ONCE reduce 123 - IF reduce 123 - SWITCHCASE reduce 123 - WHILE reduce 123 - FOR reduce 123 - FOREACH reduce 123 - CONTINUE reduce 123 - BREAK reduce 123 - RETURN reduce 123 - ACTIONNAME reduce 123 +State 242: + (139) constFactor ::= constExpr * + factor ::= constExpr * MULTIPLY nonConstExpr + factor ::= constExpr * DIVIDE nonConstExpr + factor ::= constExpr * MOD nonConstExpr + + QMARK reduce 139 + COMMA reduce 139 + LOR reduce 139 + LAND reduce 139 + LNOT reduce 139 + EQ reduce 139 + LE reduce 139 + LT reduce 139 + GE reduce 139 + GT reduce 139 + NE reduce 139 + BITOR reduce 139 + BITXOR reduce 139 + BITAND reduce 139 + LSHIFT reduce 139 + RSHIFT reduce 139 + PLUS reduce 139 + MINUS reduce 139 + DIVIDE shift 151 + DIVIDE reduce 139 -- dropped by precedence + MULTIPLY shift 152 + MULTIPLY reduce 139 -- dropped by precedence + MOD shift 146 + MOD reduce 139 -- dropped by precedence + BITNOT reduce 139 + LPAREN reduce 139 + SEMICOLON reduce 139 + NAME reduce 139 + COLON reduce 139 + RPAREN reduce 139 + LBRACKET reduce 139 + VAR reduce 139 + RSQBRACKET reduce 139 + L2V reduce 139 + STATIC reduce 139 + CONST reduce 139 + INC reduce 139 + DEC reduce 139 + ONCE reduce 139 + IF reduce 139 + SWITCHCASE reduce 139 + WHILE reduce 139 + FOR reduce 139 + FOREACH reduce 139 + CONTINUE reduce 139 + BREAK reduce 139 + RETURN reduce 139 + ACTIONNAME reduce 139 -State 224: - (107) funcexpr ::= nonConstExpr LPAREN fArgs RPAREN * - - QMARK reduce 107 - COMMA reduce 107 - LOR reduce 107 - LAND reduce 107 - EQ reduce 107 - LE reduce 107 - LT reduce 107 - GE reduce 107 - GT reduce 107 - NE reduce 107 - BITOR reduce 107 - BITXOR reduce 107 - BITAND reduce 107 - LSHIFT reduce 107 - RSHIFT reduce 107 - PLUS reduce 107 - MINUS reduce 107 - DIVIDE reduce 107 - MULTIPLY reduce 107 - MOD reduce 107 - BITNOT reduce 107 - LPAREN reduce 107 - LSQBRACKET reduce 107 - PERIOD reduce 107 - SEMICOLON reduce 107 - NAME reduce 107 - COLON reduce 107 - FUNCTION reduce 107 - RPAREN reduce 107 - LBRACKET reduce 107 - VAR reduce 107 - NUMBER reduce 107 - RSQBRACKET reduce 107 - KILLS reduce 107 - TRGCONST reduce 107 - L2V reduce 107 - MAPSTRING reduce 107 - UNIT reduce 107 - SWITCH reduce 107 - LOCATION reduce 107 - STATTXTTBL reduce 107 - VARRAY reduce 107 - STATIC reduce 107 - CONST reduce 107 - INC reduce 107 - DEC reduce 107 - ONCE reduce 107 - IF reduce 107 - SWITCHCASE reduce 107 - WHILE reduce 107 - FOR reduce 107 - FOREACH reduce 107 - CONTINUE reduce 107 - BREAK reduce 107 - RETURN reduce 107 - ACTIONNAME reduce 107 +State 243: + (135) term ::= term PLUS factor * + factor ::= factor * MULTIPLY constExpr + factor ::= factor * MULTIPLY nonConstExpr + factor ::= factor * DIVIDE constExpr + factor ::= factor * DIVIDE nonConstExpr + factor ::= factor * MOD constExpr + factor ::= factor * MOD nonConstExpr -State 225: - logicExpr ::= logicExpr * LAND logicExpr - (184) logicExpr ::= logicExpr LAND logicExpr * - logicExpr ::= logicExpr * LOR logicExpr + QMARK reduce 135 + COMMA reduce 135 + LOR reduce 135 + LAND reduce 135 + LNOT reduce 135 + EQ reduce 135 + LE reduce 135 + LT reduce 135 + GE reduce 135 + GT reduce 135 + NE reduce 135 + BITOR reduce 135 + BITXOR reduce 135 + BITAND reduce 135 + LSHIFT reduce 135 + RSHIFT reduce 135 + PLUS reduce 135 + MINUS reduce 135 + DIVIDE shift 125 + MULTIPLY shift 126 + MOD shift 120 + BITNOT reduce 135 + LPAREN reduce 135 + SEMICOLON reduce 135 + NAME reduce 135 + COLON reduce 135 + RPAREN reduce 135 + LBRACKET reduce 135 + VAR reduce 135 + RSQBRACKET reduce 135 + L2V reduce 135 + STATIC reduce 135 + CONST reduce 135 + INC reduce 135 + DEC reduce 135 + ONCE reduce 135 + IF reduce 135 + SWITCHCASE reduce 135 + WHILE reduce 135 + FOR reduce 135 + FOREACH reduce 135 + CONTINUE reduce 135 + BREAK reduce 135 + RETURN reduce 135 + ACTIONNAME reduce 135 - QMARK reduce 184 - COMMA reduce 184 - LOR shift 82 -- dropped by precedence - LOR reduce 184 - LAND shift 84 -- dropped by precedence - LAND reduce 184 - EQ reduce 184 - LE reduce 184 - LT reduce 184 - GE reduce 184 - GT reduce 184 - NE reduce 184 - BITOR reduce 184 - BITXOR reduce 184 - BITAND reduce 184 - LSHIFT reduce 184 - RSHIFT reduce 184 - PLUS reduce 184 - MINUS reduce 184 - DIVIDE reduce 184 - MULTIPLY reduce 184 - MOD reduce 184 - BITNOT reduce 184 - LPAREN reduce 184 - LSQBRACKET reduce 184 - PERIOD reduce 184 - SEMICOLON reduce 184 - NAME reduce 184 - COLON reduce 184 - FUNCTION reduce 184 - RPAREN reduce 184 - LBRACKET reduce 184 - VAR reduce 184 - NUMBER reduce 184 - RSQBRACKET reduce 184 - KILLS reduce 184 - TRGCONST reduce 184 - L2V reduce 184 - MAPSTRING reduce 184 - UNIT reduce 184 - SWITCH reduce 184 - LOCATION reduce 184 - STATTXTTBL reduce 184 - VARRAY reduce 184 - STATIC reduce 184 - CONST reduce 184 - INC reduce 184 - DEC reduce 184 - ONCE reduce 184 - IF reduce 184 - SWITCHCASE reduce 184 - WHILE reduce 184 - FOR reduce 184 - FOREACH reduce 184 - CONTINUE reduce 184 - BREAK reduce 184 - RETURN reduce 184 - ACTIONNAME reduce 184 +State 244: + (142) constFactor ::= constFactor DIVIDE constExpr * -State 226: - (110) nonConstExpr ::= LPAREN logicExpr RPAREN * - - QMARK reduce 110 - COMMA reduce 110 - LOR reduce 110 - LAND reduce 110 - EQ reduce 110 - LE reduce 110 - LT reduce 110 - GE reduce 110 - GT reduce 110 - NE reduce 110 - BITOR reduce 110 - BITXOR reduce 110 - BITAND reduce 110 - LSHIFT reduce 110 - RSHIFT reduce 110 - PLUS reduce 110 - MINUS reduce 110 - DIVIDE reduce 110 - MULTIPLY reduce 110 - MOD reduce 110 - BITNOT reduce 110 - LPAREN reduce 110 - LSQBRACKET reduce 110 - PERIOD reduce 110 - SEMICOLON reduce 110 - NAME reduce 110 - COLON reduce 110 - FUNCTION reduce 110 - RPAREN reduce 110 - LBRACKET reduce 110 - VAR reduce 110 - NUMBER reduce 110 - RSQBRACKET reduce 110 - KILLS reduce 110 - TRGCONST reduce 110 - L2V reduce 110 - MAPSTRING reduce 110 - UNIT reduce 110 - SWITCH reduce 110 - LOCATION reduce 110 - STATTXTTBL reduce 110 - VARRAY reduce 110 - STATIC reduce 110 - CONST reduce 110 - INC reduce 110 - DEC reduce 110 - ONCE reduce 110 - IF reduce 110 - SWITCHCASE reduce 110 - WHILE reduce 110 - FOR reduce 110 - FOREACH reduce 110 - CONTINUE reduce 110 - BREAK reduce 110 - RETURN reduce 110 - ACTIONNAME reduce 110 + QMARK reduce 142 + COMMA reduce 142 + LOR reduce 142 + LAND reduce 142 + LNOT reduce 142 + EQ reduce 142 + LE reduce 142 + LT reduce 142 + GE reduce 142 + GT reduce 142 + NE reduce 142 + BITOR reduce 142 + BITXOR reduce 142 + BITAND reduce 142 + LSHIFT reduce 142 + RSHIFT reduce 142 + PLUS reduce 142 + MINUS reduce 142 + DIVIDE reduce 142 + MULTIPLY reduce 142 + MOD reduce 142 + BITNOT reduce 142 + LPAREN reduce 142 + SEMICOLON reduce 142 + NAME reduce 142 + COLON reduce 142 + RPAREN reduce 142 + LBRACKET reduce 142 + VAR reduce 142 + RSQBRACKET reduce 142 + L2V reduce 142 + STATIC reduce 142 + CONST reduce 142 + INC reduce 142 + DEC reduce 142 + ONCE reduce 142 + IF reduce 142 + SWITCHCASE reduce 142 + WHILE reduce 142 + FOR reduce 142 + FOREACH reduce 142 + CONTINUE reduce 142 + BREAK reduce 142 + RETURN reduce 142 + ACTIONNAME reduce 142 -State 227: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - (126) constExpr ::= constExpr MINUS constExpr * - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 245: + (141) constFactor ::= constFactor MOD constExpr * - QMARK reduce 126 - COMMA reduce 126 - LOR reduce 126 - LAND reduce 126 - EQ shift 138 -- dropped by precedence - EQ reduce 126 - LE shift 125 -- dropped by precedence - LE reduce 126 - LT shift 123 -- dropped by precedence - LT reduce 126 - GE shift 124 -- dropped by precedence - GE reduce 126 - GT shift 122 -- dropped by precedence - GT reduce 126 - NE shift 126 -- dropped by precedence - NE reduce 126 - BITOR shift 102 -- dropped by precedence - BITOR reduce 126 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 126 - BITAND shift 103 -- dropped by precedence - BITAND reduce 126 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 126 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 126 - PLUS shift 113 -- dropped by precedence - PLUS reduce 126 - MINUS shift 112 -- dropped by precedence - MINUS reduce 126 - DIVIDE shift 107 - DIVIDE reduce 126 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 126 -- dropped by precedence - MOD shift 106 - MOD reduce 126 -- dropped by precedence - BITNOT reduce 126 - LPAREN reduce 126 - LSQBRACKET reduce 126 - PERIOD reduce 126 - SEMICOLON reduce 126 - NAME reduce 126 - COLON reduce 126 - FUNCTION reduce 126 - RPAREN reduce 126 - LBRACKET reduce 126 - VAR reduce 126 - NUMBER reduce 126 - RSQBRACKET reduce 126 - KILLS reduce 126 - TRGCONST reduce 126 - L2V reduce 126 - MAPSTRING reduce 126 - UNIT reduce 126 - SWITCH reduce 126 - LOCATION reduce 126 - STATTXTTBL reduce 126 - VARRAY reduce 126 - STATIC reduce 126 - CONST reduce 126 - INC reduce 126 - DEC reduce 126 - ONCE reduce 126 - IF reduce 126 - SWITCHCASE reduce 126 - WHILE reduce 126 - FOR reduce 126 - FOREACH reduce 126 - CONTINUE reduce 126 - BREAK reduce 126 - RETURN reduce 126 - ACTIONNAME reduce 126 + QMARK reduce 141 + COMMA reduce 141 + LOR reduce 141 + LAND reduce 141 + LNOT reduce 141 + EQ reduce 141 + LE reduce 141 + LT reduce 141 + GE reduce 141 + GT reduce 141 + NE reduce 141 + BITOR reduce 141 + BITXOR reduce 141 + BITAND reduce 141 + LSHIFT reduce 141 + RSHIFT reduce 141 + PLUS reduce 141 + MINUS reduce 141 + DIVIDE reduce 141 + MULTIPLY reduce 141 + MOD reduce 141 + BITNOT reduce 141 + LPAREN reduce 141 + SEMICOLON reduce 141 + NAME reduce 141 + COLON reduce 141 + RPAREN reduce 141 + LBRACKET reduce 141 + VAR reduce 141 + RSQBRACKET reduce 141 + L2V reduce 141 + STATIC reduce 141 + CONST reduce 141 + INC reduce 141 + DEC reduce 141 + ONCE reduce 141 + IF reduce 141 + SWITCHCASE reduce 141 + WHILE reduce 141 + FOR reduce 141 + FOREACH reduce 141 + CONTINUE reduce 141 + BREAK reduce 141 + RETURN reduce 141 + ACTIONNAME reduce 141 -State 228: - (122) nonConstExpr ::= nonConstExpr QMARK expr COLON expr * +State 246: + (134) term ::= term PLUS constFactor * + constFactor ::= constFactor * MULTIPLY constExpr + constFactor ::= constFactor * MOD constExpr + constFactor ::= constFactor * DIVIDE constExpr + + QMARK reduce 134 + COMMA reduce 134 + LOR reduce 134 + LAND reduce 134 + LNOT reduce 134 + EQ reduce 134 + LE reduce 134 + LT reduce 134 + GE reduce 134 + GT reduce 134 + NE reduce 134 + BITOR reduce 134 + BITXOR reduce 134 + BITAND reduce 134 + LSHIFT reduce 134 + RSHIFT reduce 134 + PLUS reduce 134 + MINUS reduce 134 + DIVIDE shift 139 + MULTIPLY shift 145 + MOD shift 140 + BITNOT reduce 134 + LPAREN reduce 134 + SEMICOLON reduce 134 + NAME reduce 134 + COLON reduce 134 + RPAREN reduce 134 + LBRACKET reduce 134 + VAR reduce 134 + RSQBRACKET reduce 134 + L2V reduce 134 + STATIC reduce 134 + CONST reduce 134 + INC reduce 134 + DEC reduce 134 + ONCE reduce 134 + IF reduce 134 + SWITCHCASE reduce 134 + WHILE reduce 134 + FOR reduce 134 + FOREACH reduce 134 + CONTINUE reduce 134 + BREAK reduce 134 + RETURN reduce 134 + ACTIONNAME reduce 134 - QMARK reduce 122 - COMMA reduce 122 - LOR reduce 122 - LAND reduce 122 - EQ reduce 122 - LE reduce 122 - LT reduce 122 - GE reduce 122 - GT reduce 122 - NE reduce 122 - BITOR reduce 122 - BITXOR reduce 122 - BITAND reduce 122 - LSHIFT reduce 122 - RSHIFT reduce 122 - PLUS reduce 122 - MINUS reduce 122 - DIVIDE reduce 122 - MULTIPLY reduce 122 - MOD reduce 122 - BITNOT reduce 122 - LPAREN reduce 122 - LSQBRACKET reduce 122 - PERIOD reduce 122 - SEMICOLON reduce 122 - NAME reduce 122 - COLON reduce 122 - FUNCTION reduce 122 - RPAREN reduce 122 - LBRACKET reduce 122 - VAR reduce 122 - NUMBER reduce 122 - RSQBRACKET reduce 122 - KILLS reduce 122 - TRGCONST reduce 122 - L2V reduce 122 - MAPSTRING reduce 122 - UNIT reduce 122 - SWITCH reduce 122 - LOCATION reduce 122 - STATTXTTBL reduce 122 - VARRAY reduce 122 - STATIC reduce 122 - CONST reduce 122 - INC reduce 122 - DEC reduce 122 - ONCE reduce 122 - IF reduce 122 - SWITCHCASE reduce 122 - WHILE reduce 122 - FOR reduce 122 - FOREACH reduce 122 - CONTINUE reduce 122 - BREAK reduce 122 - RETURN reduce 122 - ACTIONNAME reduce 122 +State 247: + (151) factor ::= factor MOD constExpr * -State 229: - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr - (185) logicExpr ::= logicExpr LOR logicExpr * + QMARK reduce 151 + COMMA reduce 151 + LOR reduce 151 + LAND reduce 151 + LNOT reduce 151 + EQ reduce 151 + LE reduce 151 + LT reduce 151 + GE reduce 151 + GT reduce 151 + NE reduce 151 + BITOR reduce 151 + BITXOR reduce 151 + BITAND reduce 151 + LSHIFT reduce 151 + RSHIFT reduce 151 + PLUS reduce 151 + MINUS reduce 151 + DIVIDE reduce 151 + MULTIPLY reduce 151 + MOD reduce 151 + BITNOT reduce 151 + LPAREN reduce 151 + SEMICOLON reduce 151 + NAME reduce 151 + COLON reduce 151 + RPAREN reduce 151 + LBRACKET reduce 151 + VAR reduce 151 + RSQBRACKET reduce 151 + L2V reduce 151 + STATIC reduce 151 + CONST reduce 151 + INC reduce 151 + DEC reduce 151 + ONCE reduce 151 + IF reduce 151 + SWITCHCASE reduce 151 + WHILE reduce 151 + FOR reduce 151 + FOREACH reduce 151 + CONTINUE reduce 151 + BREAK reduce 151 + RETURN reduce 151 + ACTIONNAME reduce 151 - QMARK reduce 185 - COMMA reduce 185 - LOR shift 82 -- dropped by precedence - LOR reduce 185 - LAND shift 84 - LAND reduce 185 -- dropped by precedence - EQ reduce 185 - LE reduce 185 - LT reduce 185 - GE reduce 185 - GT reduce 185 - NE reduce 185 - BITOR reduce 185 - BITXOR reduce 185 - BITAND reduce 185 - LSHIFT reduce 185 - RSHIFT reduce 185 - PLUS reduce 185 - MINUS reduce 185 - DIVIDE reduce 185 - MULTIPLY reduce 185 - MOD reduce 185 - BITNOT reduce 185 - LPAREN reduce 185 - LSQBRACKET reduce 185 - PERIOD reduce 185 - SEMICOLON reduce 185 - NAME reduce 185 - COLON reduce 185 - FUNCTION reduce 185 - RPAREN reduce 185 - LBRACKET reduce 185 - VAR reduce 185 - NUMBER reduce 185 - RSQBRACKET reduce 185 - KILLS reduce 185 - TRGCONST reduce 185 - L2V reduce 185 - MAPSTRING reduce 185 - UNIT reduce 185 - SWITCH reduce 185 - LOCATION reduce 185 - STATTXTTBL reduce 185 - VARRAY reduce 185 - STATIC reduce 185 - CONST reduce 185 - INC reduce 185 - DEC reduce 185 - ONCE reduce 185 - IF reduce 185 - SWITCHCASE reduce 185 - WHILE reduce 185 - FOR reduce 185 - FOREACH reduce 185 - CONTINUE reduce 185 - BREAK reduce 185 - RETURN reduce 185 - ACTIONNAME reduce 185 +State 248: + (148) factor ::= factor DIVIDE constExpr * -State 230: - (113) constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable RSQBRACKET * + QMARK reduce 148 + COMMA reduce 148 + LOR reduce 148 + LAND reduce 148 + LNOT reduce 148 + EQ reduce 148 + LE reduce 148 + LT reduce 148 + GE reduce 148 + GT reduce 148 + NE reduce 148 + BITOR reduce 148 + BITXOR reduce 148 + BITAND reduce 148 + LSHIFT reduce 148 + RSHIFT reduce 148 + PLUS reduce 148 + MINUS reduce 148 + DIVIDE reduce 148 + MULTIPLY reduce 148 + MOD reduce 148 + BITNOT reduce 148 + LPAREN reduce 148 + SEMICOLON reduce 148 + NAME reduce 148 + COLON reduce 148 + RPAREN reduce 148 + LBRACKET reduce 148 + VAR reduce 148 + RSQBRACKET reduce 148 + L2V reduce 148 + STATIC reduce 148 + CONST reduce 148 + INC reduce 148 + DEC reduce 148 + ONCE reduce 148 + IF reduce 148 + SWITCHCASE reduce 148 + WHILE reduce 148 + FOR reduce 148 + FOREACH reduce 148 + CONTINUE reduce 148 + BREAK reduce 148 + RETURN reduce 148 + ACTIONNAME reduce 148 - QMARK reduce 113 - COMMA reduce 113 - LOR reduce 113 - LAND reduce 113 - EQ reduce 113 - LE reduce 113 - LT reduce 113 - GE reduce 113 - GT reduce 113 - NE reduce 113 - BITOR reduce 113 - BITXOR reduce 113 - BITAND reduce 113 - LSHIFT reduce 113 - RSHIFT reduce 113 - PLUS reduce 113 - MINUS reduce 113 - DIVIDE reduce 113 - MULTIPLY reduce 113 - MOD reduce 113 - BITNOT reduce 113 - LPAREN reduce 113 - LSQBRACKET reduce 113 - PERIOD reduce 113 - SEMICOLON reduce 113 - NAME reduce 113 - COLON reduce 113 - FUNCTION reduce 113 - RPAREN reduce 113 - LBRACKET reduce 113 - VAR reduce 113 - NUMBER reduce 113 - RSQBRACKET reduce 113 - KILLS reduce 113 - TRGCONST reduce 113 - L2V reduce 113 - MAPSTRING reduce 113 - UNIT reduce 113 - SWITCH reduce 113 - LOCATION reduce 113 - STATTXTTBL reduce 113 - VARRAY reduce 113 - STATIC reduce 113 - CONST reduce 113 - INC reduce 113 - DEC reduce 113 - ONCE reduce 113 - IF reduce 113 - SWITCHCASE reduce 113 - WHILE reduce 113 - FOR reduce 113 - FOREACH reduce 113 - CONTINUE reduce 113 - BREAK reduce 113 - RETURN reduce 113 - ACTIONNAME reduce 113 +State 249: + (132) term ::= factor * + factor ::= factor * MULTIPLY constExpr + factor ::= factor * MULTIPLY nonConstExpr + factor ::= factor * DIVIDE constExpr + factor ::= factor * DIVIDE nonConstExpr + factor ::= factor * MOD constExpr + factor ::= factor * MOD nonConstExpr -State 231: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (153) constExpr ::= PLUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 132 + COMMA reduce 132 + LOR reduce 132 + LAND reduce 132 + LNOT reduce 132 + EQ reduce 132 + LE reduce 132 + LT reduce 132 + GE reduce 132 + GT reduce 132 + NE reduce 132 + BITOR reduce 132 + BITXOR reduce 132 + BITAND reduce 132 + LSHIFT reduce 132 + RSHIFT reduce 132 + PLUS reduce 132 + MINUS reduce 132 + DIVIDE shift 125 + MULTIPLY shift 126 + MOD shift 120 + BITNOT reduce 132 + LPAREN reduce 132 + SEMICOLON reduce 132 + NAME reduce 132 + COLON reduce 132 + RPAREN reduce 132 + LBRACKET reduce 132 + VAR reduce 132 + RSQBRACKET reduce 132 + L2V reduce 132 + STATIC reduce 132 + CONST reduce 132 + INC reduce 132 + DEC reduce 132 + ONCE reduce 132 + IF reduce 132 + SWITCHCASE reduce 132 + WHILE reduce 132 + FOR reduce 132 + FOREACH reduce 132 + CONTINUE reduce 132 + BREAK reduce 132 + RETURN reduce 132 + ACTIONNAME reduce 132 - QMARK reduce 153 - COMMA reduce 153 - LOR reduce 153 - LAND reduce 153 - EQ shift 138 -- dropped by precedence - EQ reduce 153 - LE shift 125 -- dropped by precedence - LE reduce 153 - LT shift 123 -- dropped by precedence - LT reduce 153 - GE shift 124 -- dropped by precedence - GE reduce 153 - GT shift 122 -- dropped by precedence - GT reduce 153 - NE shift 126 -- dropped by precedence - NE reduce 153 - BITOR shift 102 -- dropped by precedence - BITOR reduce 153 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 153 - BITAND shift 103 -- dropped by precedence - BITAND reduce 153 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 153 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 153 - PLUS shift 113 -- dropped by precedence - PLUS reduce 153 - MINUS shift 112 -- dropped by precedence - MINUS reduce 153 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 153 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 153 - MOD shift 106 -- dropped by precedence - MOD reduce 153 - BITNOT reduce 153 - LPAREN reduce 153 - LSQBRACKET reduce 153 - PERIOD reduce 153 - SEMICOLON reduce 153 - NAME reduce 153 - COLON reduce 153 - FUNCTION reduce 153 - RPAREN reduce 153 - LBRACKET reduce 153 - VAR reduce 153 - NUMBER reduce 153 - RSQBRACKET reduce 153 - KILLS reduce 153 - TRGCONST reduce 153 - L2V reduce 153 - MAPSTRING reduce 153 - UNIT reduce 153 - SWITCH reduce 153 - LOCATION reduce 153 - STATTXTTBL reduce 153 - VARRAY reduce 153 - STATIC reduce 153 - CONST reduce 153 - INC reduce 153 - DEC reduce 153 - ONCE reduce 153 - IF reduce 153 - SWITCHCASE reduce 153 - WHILE reduce 153 - FOR reduce 153 - FOREACH reduce 153 - CONTINUE reduce 153 - BREAK reduce 153 - RETURN reduce 153 - ACTIONNAME reduce 153 +State 250: + (187) constExpr ::= LNOT constExpr * + + QMARK reduce 187 + COMMA reduce 187 + LOR reduce 187 + LAND reduce 187 + LNOT reduce 187 + EQ reduce 187 + LE reduce 187 + LT reduce 187 + GE reduce 187 + GT reduce 187 + NE reduce 187 + BITOR reduce 187 + BITXOR reduce 187 + BITAND reduce 187 + LSHIFT reduce 187 + RSHIFT reduce 187 + PLUS reduce 187 + MINUS reduce 187 + DIVIDE reduce 187 + MULTIPLY reduce 187 + MOD reduce 187 + BITNOT reduce 187 + LPAREN reduce 187 + SEMICOLON reduce 187 + NAME reduce 187 + COLON reduce 187 + RPAREN reduce 187 + LBRACKET reduce 187 + VAR reduce 187 + RSQBRACKET reduce 187 + L2V reduce 187 + STATIC reduce 187 + CONST reduce 187 + INC reduce 187 + DEC reduce 187 + ONCE reduce 187 + IF reduce 187 + SWITCHCASE reduce 187 + WHILE reduce 187 + FOR reduce 187 + FOREACH reduce 187 + CONTINUE reduce 187 + BREAK reduce 187 + RETURN reduce 187 + ACTIONNAME reduce 187 -State 232: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (155) constExpr ::= MINUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 251: + (185) constExpr ::= BITNOT constExpr * - QMARK reduce 155 - COMMA reduce 155 - LOR reduce 155 - LAND reduce 155 - EQ shift 138 -- dropped by precedence - EQ reduce 155 - LE shift 125 -- dropped by precedence - LE reduce 155 - LT shift 123 -- dropped by precedence - LT reduce 155 - GE shift 124 -- dropped by precedence - GE reduce 155 - GT shift 122 -- dropped by precedence - GT reduce 155 - NE shift 126 -- dropped by precedence - NE reduce 155 - BITOR shift 102 -- dropped by precedence - BITOR reduce 155 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 155 - BITAND shift 103 -- dropped by precedence - BITAND reduce 155 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 155 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 155 - PLUS shift 113 -- dropped by precedence - PLUS reduce 155 - MINUS shift 112 -- dropped by precedence - MINUS reduce 155 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 155 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 155 - MOD shift 106 -- dropped by precedence - MOD reduce 155 - BITNOT reduce 155 - LPAREN reduce 155 - LSQBRACKET reduce 155 - PERIOD reduce 155 - SEMICOLON reduce 155 - NAME reduce 155 - COLON reduce 155 - FUNCTION reduce 155 - RPAREN reduce 155 - LBRACKET reduce 155 - VAR reduce 155 - NUMBER reduce 155 - RSQBRACKET reduce 155 - KILLS reduce 155 - TRGCONST reduce 155 - L2V reduce 155 - MAPSTRING reduce 155 - UNIT reduce 155 - SWITCH reduce 155 - LOCATION reduce 155 - STATTXTTBL reduce 155 - VARRAY reduce 155 - STATIC reduce 155 - CONST reduce 155 - INC reduce 155 - DEC reduce 155 - ONCE reduce 155 - IF reduce 155 - SWITCHCASE reduce 155 - WHILE reduce 155 - FOR reduce 155 - FOREACH reduce 155 - CONTINUE reduce 155 - BREAK reduce 155 - RETURN reduce 155 - ACTIONNAME reduce 155 + QMARK reduce 185 + COMMA reduce 185 + LOR reduce 185 + LAND reduce 185 + LNOT reduce 185 + EQ reduce 185 + LE reduce 185 + LT reduce 185 + GE reduce 185 + GT reduce 185 + NE reduce 185 + BITOR reduce 185 + BITXOR reduce 185 + BITAND reduce 185 + LSHIFT reduce 185 + RSHIFT reduce 185 + PLUS reduce 185 + MINUS reduce 185 + DIVIDE reduce 185 + MULTIPLY reduce 185 + MOD reduce 185 + BITNOT reduce 185 + LPAREN reduce 185 + SEMICOLON reduce 185 + NAME reduce 185 + COLON reduce 185 + RPAREN reduce 185 + LBRACKET reduce 185 + VAR reduce 185 + RSQBRACKET reduce 185 + L2V reduce 185 + STATIC reduce 185 + CONST reduce 185 + INC reduce 185 + DEC reduce 185 + ONCE reduce 185 + IF reduce 185 + SWITCHCASE reduce 185 + WHILE reduce 185 + FOR reduce 185 + FOREACH reduce 185 + CONTINUE reduce 185 + BREAK reduce 185 + RETURN reduce 185 + ACTIONNAME reduce 185 -State 233: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - (157) constExpr ::= BITNOT constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 252: + (183) constExpr ::= MINUS constExpr * - QMARK reduce 157 - COMMA reduce 157 - LOR reduce 157 - LAND reduce 157 - EQ shift 138 -- dropped by precedence - EQ reduce 157 - LE shift 125 -- dropped by precedence - LE reduce 157 - LT shift 123 -- dropped by precedence - LT reduce 157 - GE shift 124 -- dropped by precedence - GE reduce 157 - GT shift 122 -- dropped by precedence - GT reduce 157 - NE shift 126 -- dropped by precedence - NE reduce 157 - BITOR shift 102 -- dropped by precedence - BITOR reduce 157 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 157 - BITAND shift 103 -- dropped by precedence - BITAND reduce 157 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 157 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 157 - PLUS shift 113 -- dropped by precedence - PLUS reduce 157 - MINUS shift 112 -- dropped by precedence - MINUS reduce 157 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 157 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 157 - MOD shift 106 -- dropped by precedence - MOD reduce 157 - BITNOT reduce 157 - LPAREN reduce 157 - LSQBRACKET reduce 157 - PERIOD reduce 157 - SEMICOLON reduce 157 - NAME reduce 157 - COLON reduce 157 - FUNCTION reduce 157 - RPAREN reduce 157 - LBRACKET reduce 157 - VAR reduce 157 - NUMBER reduce 157 - RSQBRACKET reduce 157 - KILLS reduce 157 - TRGCONST reduce 157 - L2V reduce 157 - MAPSTRING reduce 157 - UNIT reduce 157 - SWITCH reduce 157 - LOCATION reduce 157 - STATTXTTBL reduce 157 - VARRAY reduce 157 - STATIC reduce 157 - CONST reduce 157 - INC reduce 157 - DEC reduce 157 - ONCE reduce 157 - IF reduce 157 - SWITCHCASE reduce 157 - WHILE reduce 157 - FOR reduce 157 - FOREACH reduce 157 - CONTINUE reduce 157 - BREAK reduce 157 - RETURN reduce 157 - ACTIONNAME reduce 157 + QMARK reduce 183 + COMMA reduce 183 + LOR reduce 183 + LAND reduce 183 + LNOT reduce 183 + EQ reduce 183 + LE reduce 183 + LT reduce 183 + GE reduce 183 + GT reduce 183 + NE reduce 183 + BITOR reduce 183 + BITXOR reduce 183 + BITAND reduce 183 + LSHIFT reduce 183 + RSHIFT reduce 183 + PLUS reduce 183 + MINUS reduce 183 + DIVIDE reduce 183 + MULTIPLY reduce 183 + MOD reduce 183 + BITNOT reduce 183 + LPAREN reduce 183 + SEMICOLON reduce 183 + NAME reduce 183 + COLON reduce 183 + RPAREN reduce 183 + LBRACKET reduce 183 + VAR reduce 183 + RSQBRACKET reduce 183 + L2V reduce 183 + STATIC reduce 183 + CONST reduce 183 + INC reduce 183 + DEC reduce 183 + ONCE reduce 183 + IF reduce 183 + SWITCHCASE reduce 183 + WHILE reduce 183 + FOR reduce 183 + FOREACH reduce 183 + CONTINUE reduce 183 + BREAK reduce 183 + RETURN reduce 183 + ACTIONNAME reduce 183 -State 234: - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr - (186) logicExpr ::= LNOT logicExpr * +State 253: + (181) constExpr ::= PLUS constExpr * - QMARK reduce 186 - COMMA reduce 186 - LOR shift 82 -- dropped by precedence - LOR reduce 186 - LAND shift 84 -- dropped by precedence - LAND reduce 186 - EQ reduce 186 - LE reduce 186 - LT reduce 186 - GE reduce 186 - GT reduce 186 - NE reduce 186 - BITOR reduce 186 - BITXOR reduce 186 - BITAND reduce 186 - LSHIFT reduce 186 - RSHIFT reduce 186 - PLUS reduce 186 - MINUS reduce 186 - DIVIDE reduce 186 - MULTIPLY reduce 186 - MOD reduce 186 - BITNOT reduce 186 - LPAREN reduce 186 - LSQBRACKET reduce 186 - PERIOD reduce 186 - SEMICOLON reduce 186 - NAME reduce 186 - COLON reduce 186 - FUNCTION reduce 186 - RPAREN reduce 186 - LBRACKET reduce 186 - VAR reduce 186 - NUMBER reduce 186 - RSQBRACKET reduce 186 - KILLS reduce 186 - TRGCONST reduce 186 - L2V reduce 186 - MAPSTRING reduce 186 - UNIT reduce 186 - SWITCH reduce 186 - LOCATION reduce 186 - STATTXTTBL reduce 186 - VARRAY reduce 186 - STATIC reduce 186 - CONST reduce 186 - INC reduce 186 - DEC reduce 186 - ONCE reduce 186 - IF reduce 186 - SWITCHCASE reduce 186 - WHILE reduce 186 - FOR reduce 186 - FOREACH reduce 186 - CONTINUE reduce 186 - BREAK reduce 186 - RETURN reduce 186 - ACTIONNAME reduce 186 + QMARK reduce 181 + COMMA reduce 181 + LOR reduce 181 + LAND reduce 181 + LNOT reduce 181 + EQ reduce 181 + LE reduce 181 + LT reduce 181 + GE reduce 181 + GT reduce 181 + NE reduce 181 + BITOR reduce 181 + BITXOR reduce 181 + BITAND reduce 181 + LSHIFT reduce 181 + RSHIFT reduce 181 + PLUS reduce 181 + MINUS reduce 181 + DIVIDE reduce 181 + MULTIPLY reduce 181 + MOD reduce 181 + BITNOT reduce 181 + LPAREN reduce 181 + SEMICOLON reduce 181 + NAME reduce 181 + COLON reduce 181 + RPAREN reduce 181 + LBRACKET reduce 181 + VAR reduce 181 + RSQBRACKET reduce 181 + L2V reduce 181 + STATIC reduce 181 + CONST reduce 181 + INC reduce 181 + DEC reduce 181 + ONCE reduce 181 + IF reduce 181 + SWITCHCASE reduce 181 + WHILE reduce 181 + FOR reduce 181 + FOREACH reduce 181 + CONTINUE reduce 181 + BREAK reduce 181 + RETURN reduce 181 + ACTIONNAME reduce 181 -State 235: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - (129) constExpr ::= constExpr MULTIPLY constExpr * - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 254: + (140) constFactor ::= constFactor MULTIPLY constExpr * + + QMARK reduce 140 + COMMA reduce 140 + LOR reduce 140 + LAND reduce 140 + LNOT reduce 140 + EQ reduce 140 + LE reduce 140 + LT reduce 140 + GE reduce 140 + GT reduce 140 + NE reduce 140 + BITOR reduce 140 + BITXOR reduce 140 + BITAND reduce 140 + LSHIFT reduce 140 + RSHIFT reduce 140 + PLUS reduce 140 + MINUS reduce 140 + DIVIDE reduce 140 + MULTIPLY reduce 140 + MOD reduce 140 + BITNOT reduce 140 + LPAREN reduce 140 + SEMICOLON reduce 140 + NAME reduce 140 + COLON reduce 140 + RPAREN reduce 140 + LBRACKET reduce 140 + VAR reduce 140 + RSQBRACKET reduce 140 + L2V reduce 140 + STATIC reduce 140 + CONST reduce 140 + INC reduce 140 + DEC reduce 140 + ONCE reduce 140 + IF reduce 140 + SWITCHCASE reduce 140 + WHILE reduce 140 + FOR reduce 140 + FOREACH reduce 140 + CONTINUE reduce 140 + BREAK reduce 140 + RETURN reduce 140 + ACTIONNAME reduce 140 + +State 255: + (129) constTerm ::= constFactor * + constFactor ::= constFactor * MULTIPLY constExpr + constFactor ::= constFactor * MOD constExpr + constFactor ::= constFactor * DIVIDE constExpr QMARK reduce 129 COMMA reduce 129 LOR reduce 129 LAND reduce 129 - EQ shift 138 -- dropped by precedence + LNOT reduce 129 EQ reduce 129 - LE shift 125 -- dropped by precedence LE reduce 129 - LT shift 123 -- dropped by precedence LT reduce 129 - GE shift 124 -- dropped by precedence GE reduce 129 - GT shift 122 -- dropped by precedence GT reduce 129 - NE shift 126 -- dropped by precedence NE reduce 129 - BITOR shift 102 -- dropped by precedence BITOR reduce 129 - BITXOR shift 101 -- dropped by precedence BITXOR reduce 129 - BITAND shift 103 -- dropped by precedence BITAND reduce 129 - LSHIFT shift 105 -- dropped by precedence LSHIFT reduce 129 - RSHIFT shift 104 -- dropped by precedence RSHIFT reduce 129 - PLUS shift 113 -- dropped by precedence PLUS reduce 129 - MINUS shift 112 -- dropped by precedence MINUS reduce 129 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 129 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 129 - MOD shift 106 -- dropped by precedence - MOD reduce 129 + DIVIDE shift 139 + MULTIPLY shift 145 + MOD shift 140 BITNOT reduce 129 LPAREN reduce 129 - LSQBRACKET reduce 129 - PERIOD reduce 129 SEMICOLON reduce 129 NAME reduce 129 COLON reduce 129 - FUNCTION reduce 129 RPAREN reduce 129 LBRACKET reduce 129 VAR reduce 129 - NUMBER reduce 129 RSQBRACKET reduce 129 - KILLS reduce 129 - TRGCONST reduce 129 L2V reduce 129 - MAPSTRING reduce 129 - UNIT reduce 129 - SWITCH reduce 129 - LOCATION reduce 129 - STATTXTTBL reduce 129 - VARRAY reduce 129 STATIC reduce 129 CONST reduce 129 INC reduce 129 @@ -23063,6998 +23614,4499 @@ State 235: RETURN reduce 129 ACTIONNAME reduce 129 -State 236: - (270) logicExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * - - QMARK reduce 270 - COMMA reduce 270 - LOR reduce 270 - LAND reduce 270 - EQ reduce 270 - LE reduce 270 - LT reduce 270 - GE reduce 270 - GT reduce 270 - NE reduce 270 - BITOR reduce 270 - BITXOR reduce 270 - BITAND reduce 270 - LSHIFT reduce 270 - RSHIFT reduce 270 - PLUS reduce 270 - MINUS reduce 270 - DIVIDE reduce 270 - MULTIPLY reduce 270 - MOD reduce 270 - BITNOT reduce 270 - LPAREN reduce 270 - LSQBRACKET reduce 270 - PERIOD reduce 270 - SEMICOLON reduce 270 - NAME reduce 270 - COLON reduce 270 - FUNCTION reduce 270 - RPAREN reduce 270 - LBRACKET reduce 270 - VAR reduce 270 - NUMBER reduce 270 - RSQBRACKET reduce 270 - KILLS reduce 270 - TRGCONST reduce 270 - L2V reduce 270 - MAPSTRING reduce 270 - UNIT reduce 270 - SWITCH reduce 270 - LOCATION reduce 270 - STATTXTTBL reduce 270 - VARRAY reduce 270 - STATIC reduce 270 - CONST reduce 270 - INC reduce 270 - DEC reduce 270 - ONCE reduce 270 - IF reduce 270 - SWITCHCASE reduce 270 - WHILE reduce 270 - FOR reduce 270 - FOREACH reduce 270 - CONTINUE reduce 270 - BREAK reduce 270 - RETURN reduce 270 - ACTIONNAME reduce 270 - -State 237: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (180) logicExpr ::= constExpr GT nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 180 - COMMA reduce 180 - LOR reduce 180 - LAND reduce 180 - EQ reduce 180 - LE reduce 180 - LT reduce 180 - GE reduce 180 - GT reduce 180 - NE reduce 180 - BITOR shift 66 - BITOR reduce 180 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 180 -- dropped by precedence - BITAND shift 67 - BITAND reduce 180 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 180 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 180 -- dropped by precedence - PLUS shift 74 - PLUS reduce 180 -- dropped by precedence - MINUS shift 73 - MINUS reduce 180 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 180 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 180 -- dropped by precedence - MOD shift 70 - MOD reduce 180 -- dropped by precedence - BITNOT reduce 180 - LPAREN shift 23 - LPAREN reduce 180 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 180 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 180 -- dropped by precedence - SEMICOLON reduce 180 - NAME reduce 180 - COLON reduce 180 - FUNCTION reduce 180 - RPAREN reduce 180 - LBRACKET reduce 180 - VAR reduce 180 - NUMBER reduce 180 - RSQBRACKET reduce 180 - KILLS reduce 180 - TRGCONST reduce 180 - L2V reduce 180 - MAPSTRING reduce 180 - UNIT reduce 180 - SWITCH reduce 180 - LOCATION reduce 180 - STATTXTTBL reduce 180 - VARRAY reduce 180 - STATIC reduce 180 - CONST reduce 180 - INC reduce 180 - DEC reduce 180 - ONCE reduce 180 - IF reduce 180 - SWITCHCASE reduce 180 - WHILE reduce 180 - FOR reduce 180 - FOREACH reduce 180 - CONTINUE reduce 180 - BREAK reduce 180 - RETURN reduce 180 - ACTIONNAME reduce 180 - -State 238: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (176) logicExpr ::= constExpr LT nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 176 - COMMA reduce 176 - LOR reduce 176 - LAND reduce 176 - EQ reduce 176 - LE reduce 176 - LT reduce 176 - GE reduce 176 - GT reduce 176 - NE reduce 176 - BITOR shift 66 - BITOR reduce 176 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 176 -- dropped by precedence - BITAND shift 67 - BITAND reduce 176 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 176 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 176 -- dropped by precedence - PLUS shift 74 - PLUS reduce 176 -- dropped by precedence - MINUS shift 73 - MINUS reduce 176 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 176 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 176 -- dropped by precedence - MOD shift 70 - MOD reduce 176 -- dropped by precedence - BITNOT reduce 176 - LPAREN shift 23 - LPAREN reduce 176 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 176 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 176 -- dropped by precedence - SEMICOLON reduce 176 - NAME reduce 176 - COLON reduce 176 - FUNCTION reduce 176 - RPAREN reduce 176 - LBRACKET reduce 176 - VAR reduce 176 - NUMBER reduce 176 - RSQBRACKET reduce 176 - KILLS reduce 176 - TRGCONST reduce 176 - L2V reduce 176 - MAPSTRING reduce 176 - UNIT reduce 176 - SWITCH reduce 176 - LOCATION reduce 176 - STATTXTTBL reduce 176 - VARRAY reduce 176 - STATIC reduce 176 - CONST reduce 176 - INC reduce 176 - DEC reduce 176 - ONCE reduce 176 - IF reduce 176 - SWITCHCASE reduce 176 - WHILE reduce 176 - FOR reduce 176 - FOREACH reduce 176 - CONTINUE reduce 176 - BREAK reduce 176 - RETURN reduce 176 - ACTIONNAME reduce 176 - -State 239: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (172) logicExpr ::= constExpr GE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 172 - COMMA reduce 172 - LOR reduce 172 - LAND reduce 172 - EQ reduce 172 - LE reduce 172 - LT reduce 172 - GE reduce 172 - GT reduce 172 - NE reduce 172 - BITOR shift 66 - BITOR reduce 172 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 172 -- dropped by precedence - BITAND shift 67 - BITAND reduce 172 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 172 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 172 -- dropped by precedence - PLUS shift 74 - PLUS reduce 172 -- dropped by precedence - MINUS shift 73 - MINUS reduce 172 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 172 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 172 -- dropped by precedence - MOD shift 70 - MOD reduce 172 -- dropped by precedence - BITNOT reduce 172 - LPAREN shift 23 - LPAREN reduce 172 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 172 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 172 -- dropped by precedence - SEMICOLON reduce 172 - NAME reduce 172 - COLON reduce 172 - FUNCTION reduce 172 - RPAREN reduce 172 - LBRACKET reduce 172 - VAR reduce 172 - NUMBER reduce 172 - RSQBRACKET reduce 172 - KILLS reduce 172 - TRGCONST reduce 172 - L2V reduce 172 - MAPSTRING reduce 172 - UNIT reduce 172 - SWITCH reduce 172 - LOCATION reduce 172 - STATTXTTBL reduce 172 - VARRAY reduce 172 - STATIC reduce 172 - CONST reduce 172 - INC reduce 172 - DEC reduce 172 - ONCE reduce 172 - IF reduce 172 - SWITCHCASE reduce 172 - WHILE reduce 172 - FOR reduce 172 - FOREACH reduce 172 - CONTINUE reduce 172 - BREAK reduce 172 - RETURN reduce 172 - ACTIONNAME reduce 172 +State 256: + (133) term ::= constFactor PLUS factor * + factor ::= factor * MULTIPLY constExpr + factor ::= factor * MULTIPLY nonConstExpr + factor ::= factor * DIVIDE constExpr + factor ::= factor * DIVIDE nonConstExpr + factor ::= factor * MOD constExpr + factor ::= factor * MOD nonConstExpr -State 240: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (168) logicExpr ::= constExpr LE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 168 - COMMA reduce 168 - LOR reduce 168 - LAND reduce 168 - EQ reduce 168 - LE reduce 168 - LT reduce 168 - GE reduce 168 - GT reduce 168 - NE reduce 168 - BITOR shift 66 - BITOR reduce 168 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 168 -- dropped by precedence - BITAND shift 67 - BITAND reduce 168 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 168 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 168 -- dropped by precedence - PLUS shift 74 - PLUS reduce 168 -- dropped by precedence - MINUS shift 73 - MINUS reduce 168 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 168 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 168 -- dropped by precedence - MOD shift 70 - MOD reduce 168 -- dropped by precedence - BITNOT reduce 168 - LPAREN shift 23 - LPAREN reduce 168 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 168 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 168 -- dropped by precedence - SEMICOLON reduce 168 - NAME reduce 168 - COLON reduce 168 - FUNCTION reduce 168 - RPAREN reduce 168 - LBRACKET reduce 168 - VAR reduce 168 - NUMBER reduce 168 - RSQBRACKET reduce 168 - KILLS reduce 168 - TRGCONST reduce 168 - L2V reduce 168 - MAPSTRING reduce 168 - UNIT reduce 168 - SWITCH reduce 168 - LOCATION reduce 168 - STATTXTTBL reduce 168 - VARRAY reduce 168 - STATIC reduce 168 - CONST reduce 168 - INC reduce 168 - DEC reduce 168 - ONCE reduce 168 - IF reduce 168 - SWITCHCASE reduce 168 - WHILE reduce 168 - FOR reduce 168 - FOREACH reduce 168 - CONTINUE reduce 168 - BREAK reduce 168 - RETURN reduce 168 - ACTIONNAME reduce 168 + QMARK reduce 133 + COMMA reduce 133 + LOR reduce 133 + LAND reduce 133 + LNOT reduce 133 + EQ reduce 133 + LE reduce 133 + LT reduce 133 + GE reduce 133 + GT reduce 133 + NE reduce 133 + BITOR reduce 133 + BITXOR reduce 133 + BITAND reduce 133 + LSHIFT reduce 133 + RSHIFT reduce 133 + PLUS reduce 133 + MINUS reduce 133 + DIVIDE shift 125 + MULTIPLY shift 126 + MOD shift 120 + BITNOT reduce 133 + LPAREN reduce 133 + SEMICOLON reduce 133 + NAME reduce 133 + COLON reduce 133 + RPAREN reduce 133 + LBRACKET reduce 133 + VAR reduce 133 + RSQBRACKET reduce 133 + L2V reduce 133 + STATIC reduce 133 + CONST reduce 133 + INC reduce 133 + DEC reduce 133 + ONCE reduce 133 + IF reduce 133 + SWITCHCASE reduce 133 + WHILE reduce 133 + FOR reduce 133 + FOREACH reduce 133 + CONTINUE reduce 133 + BREAK reduce 133 + RETURN reduce 133 + ACTIONNAME reduce 133 -State 241: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (164) logicExpr ::= constExpr NE nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 164 - COMMA reduce 164 - LOR reduce 164 - LAND reduce 164 - EQ reduce 164 - LE reduce 164 - LT reduce 164 - GE reduce 164 - GT reduce 164 - NE reduce 164 - BITOR shift 66 - BITOR reduce 164 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 164 -- dropped by precedence - BITAND shift 67 - BITAND reduce 164 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 164 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 164 -- dropped by precedence - PLUS shift 74 - PLUS reduce 164 -- dropped by precedence - MINUS shift 73 - MINUS reduce 164 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 164 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 164 -- dropped by precedence - MOD shift 70 - MOD reduce 164 -- dropped by precedence - BITNOT reduce 164 - LPAREN shift 23 - LPAREN reduce 164 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 164 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 164 -- dropped by precedence - SEMICOLON reduce 164 - NAME reduce 164 - COLON reduce 164 - FUNCTION reduce 164 - RPAREN reduce 164 - LBRACKET reduce 164 - VAR reduce 164 - NUMBER reduce 164 - RSQBRACKET reduce 164 - KILLS reduce 164 - TRGCONST reduce 164 - L2V reduce 164 - MAPSTRING reduce 164 - UNIT reduce 164 - SWITCH reduce 164 - LOCATION reduce 164 - STATTXTTBL reduce 164 - VARRAY reduce 164 - STATIC reduce 164 - CONST reduce 164 - INC reduce 164 - DEC reduce 164 - ONCE reduce 164 - IF reduce 164 - SWITCHCASE reduce 164 - WHILE reduce 164 - FOR reduce 164 - FOREACH reduce 164 - CONTINUE reduce 164 - BREAK reduce 164 - RETURN reduce 164 - ACTIONNAME reduce 164 +State 257: + (129) constTerm ::= constFactor * + term ::= constFactor * PLUS factor + term ::= constFactor * MINUS factor + constFactor ::= constFactor * MULTIPLY constExpr + constFactor ::= constFactor * MOD constExpr + constFactor ::= constFactor * DIVIDE constExpr -State 242: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (160) logicExpr ::= constExpr EQ nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 160 - COMMA reduce 160 - LOR reduce 160 - LAND reduce 160 - EQ reduce 160 - LE reduce 160 - LT reduce 160 - GE reduce 160 - GT reduce 160 - NE reduce 160 - BITOR shift 66 - BITOR reduce 160 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 160 -- dropped by precedence - BITAND shift 67 - BITAND reduce 160 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 160 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 160 -- dropped by precedence - PLUS shift 74 - PLUS reduce 160 -- dropped by precedence - MINUS shift 73 - MINUS reduce 160 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 160 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 160 -- dropped by precedence - MOD shift 70 - MOD reduce 160 -- dropped by precedence - BITNOT reduce 160 - LPAREN shift 23 - LPAREN reduce 160 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 160 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 160 -- dropped by precedence - SEMICOLON reduce 160 - NAME reduce 160 - COLON reduce 160 - FUNCTION reduce 160 - RPAREN reduce 160 - LBRACKET reduce 160 - VAR reduce 160 - NUMBER reduce 160 - RSQBRACKET reduce 160 - KILLS reduce 160 - TRGCONST reduce 160 - L2V reduce 160 - MAPSTRING reduce 160 - UNIT reduce 160 - SWITCH reduce 160 - LOCATION reduce 160 - STATTXTTBL reduce 160 - VARRAY reduce 160 - STATIC reduce 160 - CONST reduce 160 - INC reduce 160 - DEC reduce 160 - ONCE reduce 160 - IF reduce 160 - SWITCHCASE reduce 160 - WHILE reduce 160 - FOR reduce 160 - FOREACH reduce 160 - CONTINUE reduce 160 - BREAK reduce 160 - RETURN reduce 160 - ACTIONNAME reduce 160 + QMARK reduce 129 + COMMA reduce 129 + LOR reduce 129 + LAND reduce 129 + LNOT reduce 129 + EQ reduce 129 + LE reduce 129 + LT reduce 129 + GE reduce 129 + GT reduce 129 + NE reduce 129 + BITOR reduce 129 + BITXOR reduce 129 + BITAND reduce 129 + LSHIFT reduce 129 + RSHIFT reduce 129 + PLUS shift 117 + PLUS reduce 129 -- dropped by precedence + MINUS shift 116 + MINUS reduce 129 -- dropped by precedence + DIVIDE shift 139 + MULTIPLY shift 145 + MOD shift 140 + BITNOT reduce 129 + LPAREN reduce 129 + SEMICOLON reduce 129 + NAME reduce 129 + COLON reduce 129 + RPAREN reduce 129 + LBRACKET reduce 129 + VAR reduce 129 + RSQBRACKET reduce 129 + L2V reduce 129 + STATIC reduce 129 + CONST reduce 129 + INC reduce 129 + DEC reduce 129 + ONCE reduce 129 + IF reduce 129 + SWITCHCASE reduce 129 + WHILE reduce 129 + FOR reduce 129 + FOREACH reduce 129 + CONTINUE reduce 129 + BREAK reduce 129 + RETURN reduce 129 + ACTIONNAME reduce 129 -State 243: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (157) constExpr ::= BITNOT constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 258: + (126) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * - QMARK reduce 157 - COMMA reduce 157 - LOR reduce 157 - LAND reduce 157 - EQ shift 138 -- dropped by precedence - EQ reduce 157 - LE shift 125 -- dropped by precedence - LE reduce 157 - LT shift 123 -- dropped by precedence - LT reduce 157 - GE shift 124 -- dropped by precedence - GE reduce 157 - GT shift 122 -- dropped by precedence - GT reduce 157 - NE shift 126 -- dropped by precedence - NE reduce 157 - BITOR shift 128 -- dropped by precedence - BITOR reduce 157 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 157 - BITAND shift 129 -- dropped by precedence - BITAND reduce 157 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 157 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 157 - PLUS shift 136 -- dropped by precedence - PLUS reduce 157 - MINUS shift 135 -- dropped by precedence - MINUS reduce 157 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 157 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 157 - MOD shift 132 -- dropped by precedence - MOD reduce 157 - BITNOT reduce 157 - LPAREN reduce 157 - LSQBRACKET reduce 157 - PERIOD reduce 157 - SEMICOLON reduce 157 - NAME reduce 157 - COLON reduce 157 - FUNCTION reduce 157 - RPAREN reduce 157 - LBRACKET reduce 157 - VAR reduce 157 - NUMBER reduce 157 - RSQBRACKET reduce 157 - KILLS reduce 157 - TRGCONST reduce 157 - L2V reduce 157 - MAPSTRING reduce 157 - UNIT reduce 157 - SWITCH reduce 157 - LOCATION reduce 157 - STATTXTTBL reduce 157 - VARRAY reduce 157 - STATIC reduce 157 - CONST reduce 157 - INC reduce 157 - DEC reduce 157 - ONCE reduce 157 - IF reduce 157 - SWITCHCASE reduce 157 - WHILE reduce 157 - FOR reduce 157 - FOREACH reduce 157 - CONTINUE reduce 157 - BREAK reduce 157 - RETURN reduce 157 - ACTIONNAME reduce 157 + QMARK reduce 126 + COMMA reduce 126 + LOR reduce 126 + LAND reduce 126 + LNOT reduce 126 + EQ reduce 126 + LE reduce 126 + LT reduce 126 + GE reduce 126 + GT reduce 126 + NE reduce 126 + BITOR reduce 126 + BITXOR reduce 126 + BITAND reduce 126 + LSHIFT reduce 126 + RSHIFT reduce 126 + PLUS reduce 126 + MINUS reduce 126 + DIVIDE reduce 126 + MULTIPLY reduce 126 + MOD reduce 126 + BITNOT reduce 126 + LPAREN reduce 126 + SEMICOLON reduce 126 + NAME reduce 126 + COLON reduce 126 + RPAREN reduce 126 + LBRACKET reduce 126 + VAR reduce 126 + RSQBRACKET reduce 126 + L2V reduce 126 + STATIC reduce 126 + CONST reduce 126 + INC reduce 126 + DEC reduce 126 + ONCE reduce 126 + IF reduce 126 + SWITCHCASE reduce 126 + WHILE reduce 126 + FOR reduce 126 + FOREACH reduce 126 + CONTINUE reduce 126 + BREAK reduce 126 + RETURN reduce 126 + ACTIONNAME reduce 126 + +State 259: + (125) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * + + QMARK reduce 125 + COMMA reduce 125 + LOR reduce 125 + LAND reduce 125 + LNOT reduce 125 + EQ reduce 125 + LE reduce 125 + LT reduce 125 + GE reduce 125 + GT reduce 125 + NE reduce 125 + BITOR reduce 125 + BITXOR reduce 125 + BITAND reduce 125 + LSHIFT reduce 125 + RSHIFT reduce 125 + PLUS reduce 125 + MINUS reduce 125 + DIVIDE reduce 125 + MULTIPLY reduce 125 + MOD reduce 125 + BITNOT reduce 125 + LPAREN reduce 125 + SEMICOLON reduce 125 + NAME reduce 125 + COLON reduce 125 + RPAREN reduce 125 + LBRACKET reduce 125 + VAR reduce 125 + RSQBRACKET reduce 125 + L2V reduce 125 + STATIC reduce 125 + CONST reduce 125 + INC reduce 125 + DEC reduce 125 + ONCE reduce 125 + IF reduce 125 + SWITCHCASE reduce 125 + WHILE reduce 125 + FOR reduce 125 + FOREACH reduce 125 + CONTINUE reduce 125 + BREAK reduce 125 + RETURN reduce 125 + ACTIONNAME reduce 125 -State 244: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (155) constExpr ::= MINUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 260: + (124) constExpr ::= LOCATION LPAREN STRING RPAREN * - QMARK reduce 155 - COMMA reduce 155 - LOR reduce 155 - LAND reduce 155 - EQ shift 138 -- dropped by precedence - EQ reduce 155 - LE shift 125 -- dropped by precedence - LE reduce 155 - LT shift 123 -- dropped by precedence - LT reduce 155 - GE shift 124 -- dropped by precedence - GE reduce 155 - GT shift 122 -- dropped by precedence - GT reduce 155 - NE shift 126 -- dropped by precedence - NE reduce 155 - BITOR shift 128 -- dropped by precedence - BITOR reduce 155 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 155 - BITAND shift 129 -- dropped by precedence - BITAND reduce 155 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 155 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 155 - PLUS shift 136 -- dropped by precedence - PLUS reduce 155 - MINUS shift 135 -- dropped by precedence - MINUS reduce 155 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 155 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 155 - MOD shift 132 -- dropped by precedence - MOD reduce 155 - BITNOT reduce 155 - LPAREN reduce 155 - LSQBRACKET reduce 155 - PERIOD reduce 155 - SEMICOLON reduce 155 - NAME reduce 155 - COLON reduce 155 - FUNCTION reduce 155 - RPAREN reduce 155 - LBRACKET reduce 155 - VAR reduce 155 - NUMBER reduce 155 - RSQBRACKET reduce 155 - KILLS reduce 155 - TRGCONST reduce 155 - L2V reduce 155 - MAPSTRING reduce 155 - UNIT reduce 155 - SWITCH reduce 155 - LOCATION reduce 155 - STATTXTTBL reduce 155 - VARRAY reduce 155 - STATIC reduce 155 - CONST reduce 155 - INC reduce 155 - DEC reduce 155 - ONCE reduce 155 - IF reduce 155 - SWITCHCASE reduce 155 - WHILE reduce 155 - FOR reduce 155 - FOREACH reduce 155 - CONTINUE reduce 155 - BREAK reduce 155 - RETURN reduce 155 - ACTIONNAME reduce 155 + QMARK reduce 124 + COMMA reduce 124 + LOR reduce 124 + LAND reduce 124 + LNOT reduce 124 + EQ reduce 124 + LE reduce 124 + LT reduce 124 + GE reduce 124 + GT reduce 124 + NE reduce 124 + BITOR reduce 124 + BITXOR reduce 124 + BITAND reduce 124 + LSHIFT reduce 124 + RSHIFT reduce 124 + PLUS reduce 124 + MINUS reduce 124 + DIVIDE reduce 124 + MULTIPLY reduce 124 + MOD reduce 124 + BITNOT reduce 124 + LPAREN reduce 124 + SEMICOLON reduce 124 + NAME reduce 124 + COLON reduce 124 + RPAREN reduce 124 + LBRACKET reduce 124 + VAR reduce 124 + RSQBRACKET reduce 124 + L2V reduce 124 + STATIC reduce 124 + CONST reduce 124 + INC reduce 124 + DEC reduce 124 + ONCE reduce 124 + IF reduce 124 + SWITCHCASE reduce 124 + WHILE reduce 124 + FOR reduce 124 + FOREACH reduce 124 + CONTINUE reduce 124 + BREAK reduce 124 + RETURN reduce 124 + ACTIONNAME reduce 124 -State 245: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (153) constExpr ::= PLUS constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 261: + (123) constExpr ::= SWITCH LPAREN STRING RPAREN * - QMARK reduce 153 - COMMA reduce 153 - LOR reduce 153 - LAND reduce 153 - EQ shift 138 -- dropped by precedence - EQ reduce 153 - LE shift 125 -- dropped by precedence - LE reduce 153 - LT shift 123 -- dropped by precedence - LT reduce 153 - GE shift 124 -- dropped by precedence - GE reduce 153 - GT shift 122 -- dropped by precedence - GT reduce 153 - NE shift 126 -- dropped by precedence - NE reduce 153 - BITOR shift 128 -- dropped by precedence - BITOR reduce 153 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 153 - BITAND shift 129 -- dropped by precedence - BITAND reduce 153 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 153 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 153 - PLUS shift 136 -- dropped by precedence - PLUS reduce 153 - MINUS shift 135 -- dropped by precedence - MINUS reduce 153 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 153 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 153 - MOD shift 132 -- dropped by precedence - MOD reduce 153 - BITNOT reduce 153 - LPAREN reduce 153 - LSQBRACKET reduce 153 - PERIOD reduce 153 - SEMICOLON reduce 153 - NAME reduce 153 - COLON reduce 153 - FUNCTION reduce 153 - RPAREN reduce 153 - LBRACKET reduce 153 - VAR reduce 153 - NUMBER reduce 153 - RSQBRACKET reduce 153 - KILLS reduce 153 - TRGCONST reduce 153 - L2V reduce 153 - MAPSTRING reduce 153 - UNIT reduce 153 - SWITCH reduce 153 - LOCATION reduce 153 - STATTXTTBL reduce 153 - VARRAY reduce 153 - STATIC reduce 153 - CONST reduce 153 - INC reduce 153 - DEC reduce 153 - ONCE reduce 153 - IF reduce 153 - SWITCHCASE reduce 153 - WHILE reduce 153 - FOR reduce 153 - FOREACH reduce 153 - CONTINUE reduce 153 - BREAK reduce 153 - RETURN reduce 153 - ACTIONNAME reduce 153 + QMARK reduce 123 + COMMA reduce 123 + LOR reduce 123 + LAND reduce 123 + LNOT reduce 123 + EQ reduce 123 + LE reduce 123 + LT reduce 123 + GE reduce 123 + GT reduce 123 + NE reduce 123 + BITOR reduce 123 + BITXOR reduce 123 + BITAND reduce 123 + LSHIFT reduce 123 + RSHIFT reduce 123 + PLUS reduce 123 + MINUS reduce 123 + DIVIDE reduce 123 + MULTIPLY reduce 123 + MOD reduce 123 + BITNOT reduce 123 + LPAREN reduce 123 + SEMICOLON reduce 123 + NAME reduce 123 + COLON reduce 123 + RPAREN reduce 123 + LBRACKET reduce 123 + VAR reduce 123 + RSQBRACKET reduce 123 + L2V reduce 123 + STATIC reduce 123 + CONST reduce 123 + INC reduce 123 + DEC reduce 123 + ONCE reduce 123 + IF reduce 123 + SWITCHCASE reduce 123 + WHILE reduce 123 + FOR reduce 123 + FOREACH reduce 123 + CONTINUE reduce 123 + BREAK reduce 123 + RETURN reduce 123 + ACTIONNAME reduce 123 -State 246: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - (150) constExpr ::= constExpr BITXOR constExpr * - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 262: + (122) constExpr ::= UNIT LPAREN STRING RPAREN * - QMARK reduce 150 - COMMA reduce 150 - LOR reduce 150 - LAND reduce 150 - EQ shift 138 -- dropped by precedence - EQ reduce 150 - LE shift 125 -- dropped by precedence - LE reduce 150 - LT shift 123 -- dropped by precedence - LT reduce 150 - GE shift 124 -- dropped by precedence - GE reduce 150 - GT shift 122 -- dropped by precedence - GT reduce 150 - NE shift 126 -- dropped by precedence - NE reduce 150 - BITOR shift 128 -- dropped by precedence - BITOR reduce 150 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 150 - BITAND shift 129 - BITAND reduce 150 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 150 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 150 -- dropped by precedence - PLUS shift 136 - PLUS reduce 150 -- dropped by precedence - MINUS shift 135 - MINUS reduce 150 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 150 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 150 -- dropped by precedence - MOD shift 132 - MOD reduce 150 -- dropped by precedence - BITNOT reduce 150 - LPAREN reduce 150 - LSQBRACKET reduce 150 - PERIOD reduce 150 - SEMICOLON reduce 150 - NAME reduce 150 - COLON reduce 150 - FUNCTION reduce 150 - RPAREN reduce 150 - LBRACKET reduce 150 - VAR reduce 150 - NUMBER reduce 150 - RSQBRACKET reduce 150 - KILLS reduce 150 - TRGCONST reduce 150 - L2V reduce 150 - MAPSTRING reduce 150 - UNIT reduce 150 - SWITCH reduce 150 - LOCATION reduce 150 - STATTXTTBL reduce 150 - VARRAY reduce 150 - STATIC reduce 150 - CONST reduce 150 - INC reduce 150 - DEC reduce 150 - ONCE reduce 150 - IF reduce 150 - SWITCHCASE reduce 150 - WHILE reduce 150 - FOR reduce 150 - FOREACH reduce 150 - CONTINUE reduce 150 - BREAK reduce 150 - RETURN reduce 150 - ACTIONNAME reduce 150 + QMARK reduce 122 + COMMA reduce 122 + LOR reduce 122 + LAND reduce 122 + LNOT reduce 122 + EQ reduce 122 + LE reduce 122 + LT reduce 122 + GE reduce 122 + GT reduce 122 + NE reduce 122 + BITOR reduce 122 + BITXOR reduce 122 + BITAND reduce 122 + LSHIFT reduce 122 + RSHIFT reduce 122 + PLUS reduce 122 + MINUS reduce 122 + DIVIDE reduce 122 + MULTIPLY reduce 122 + MOD reduce 122 + BITNOT reduce 122 + LPAREN reduce 122 + SEMICOLON reduce 122 + NAME reduce 122 + COLON reduce 122 + RPAREN reduce 122 + LBRACKET reduce 122 + VAR reduce 122 + RSQBRACKET reduce 122 + L2V reduce 122 + STATIC reduce 122 + CONST reduce 122 + INC reduce 122 + DEC reduce 122 + ONCE reduce 122 + IF reduce 122 + SWITCHCASE reduce 122 + WHILE reduce 122 + FOR reduce 122 + FOREACH reduce 122 + CONTINUE reduce 122 + BREAK reduce 122 + RETURN reduce 122 + ACTIONNAME reduce 122 -State 247: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - (147) constExpr ::= constExpr BITOR constExpr * - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 263: + (121) constExpr ::= MAPSTRING LPAREN STRING RPAREN * + + QMARK reduce 121 + COMMA reduce 121 + LOR reduce 121 + LAND reduce 121 + LNOT reduce 121 + EQ reduce 121 + LE reduce 121 + LT reduce 121 + GE reduce 121 + GT reduce 121 + NE reduce 121 + BITOR reduce 121 + BITXOR reduce 121 + BITAND reduce 121 + LSHIFT reduce 121 + RSHIFT reduce 121 + PLUS reduce 121 + MINUS reduce 121 + DIVIDE reduce 121 + MULTIPLY reduce 121 + MOD reduce 121 + BITNOT reduce 121 + LPAREN reduce 121 + SEMICOLON reduce 121 + NAME reduce 121 + COLON reduce 121 + RPAREN reduce 121 + LBRACKET reduce 121 + VAR reduce 121 + RSQBRACKET reduce 121 + L2V reduce 121 + STATIC reduce 121 + CONST reduce 121 + INC reduce 121 + DEC reduce 121 + ONCE reduce 121 + IF reduce 121 + SWITCHCASE reduce 121 + WHILE reduce 121 + FOR reduce 121 + FOREACH reduce 121 + CONTINUE reduce 121 + BREAK reduce 121 + RETURN reduce 121 + ACTIONNAME reduce 121 - QMARK reduce 147 - COMMA reduce 147 - LOR reduce 147 - LAND reduce 147 - EQ shift 138 -- dropped by precedence - EQ reduce 147 - LE shift 125 -- dropped by precedence - LE reduce 147 - LT shift 123 -- dropped by precedence - LT reduce 147 - GE shift 124 -- dropped by precedence - GE reduce 147 - GT shift 122 -- dropped by precedence - GT reduce 147 - NE shift 126 -- dropped by precedence - NE reduce 147 - BITOR shift 128 -- dropped by precedence - BITOR reduce 147 - BITXOR shift 127 - BITXOR reduce 147 -- dropped by precedence - BITAND shift 129 - BITAND reduce 147 -- dropped by precedence - LSHIFT shift 131 - LSHIFT reduce 147 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 147 -- dropped by precedence - PLUS shift 136 - PLUS reduce 147 -- dropped by precedence - MINUS shift 135 - MINUS reduce 147 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 147 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 147 -- dropped by precedence - MOD shift 132 - MOD reduce 147 -- dropped by precedence - BITNOT reduce 147 - LPAREN reduce 147 - LSQBRACKET reduce 147 - PERIOD reduce 147 - SEMICOLON reduce 147 - NAME reduce 147 - COLON reduce 147 - FUNCTION reduce 147 - RPAREN reduce 147 - LBRACKET reduce 147 - VAR reduce 147 - NUMBER reduce 147 - RSQBRACKET reduce 147 - KILLS reduce 147 - TRGCONST reduce 147 - L2V reduce 147 - MAPSTRING reduce 147 - UNIT reduce 147 - SWITCH reduce 147 - LOCATION reduce 147 - STATTXTTBL reduce 147 - VARRAY reduce 147 - STATIC reduce 147 - CONST reduce 147 - INC reduce 147 - DEC reduce 147 - ONCE reduce 147 - IF reduce 147 - SWITCHCASE reduce 147 - WHILE reduce 147 - FOR reduce 147 - FOREACH reduce 147 - CONTINUE reduce 147 - BREAK reduce 147 - RETURN reduce 147 - ACTIONNAME reduce 147 +State 264: + (85) constExpr ::= KILLS * + + QMARK reduce 85 + COMMA reduce 85 + LOR reduce 85 + LAND reduce 85 + LNOT reduce 85 + EQ reduce 85 + LE reduce 85 + LT reduce 85 + GE reduce 85 + GT reduce 85 + NE reduce 85 + BITOR reduce 85 + BITXOR reduce 85 + BITAND reduce 85 + LSHIFT reduce 85 + RSHIFT reduce 85 + PLUS reduce 85 + MINUS reduce 85 + DIVIDE reduce 85 + MULTIPLY reduce 85 + MOD reduce 85 + BITNOT reduce 85 + LPAREN reduce 85 + SEMICOLON reduce 85 + NAME reduce 85 + COLON reduce 85 + RPAREN reduce 85 + LBRACKET reduce 85 + VAR reduce 85 + RSQBRACKET reduce 85 + L2V reduce 85 + STATIC reduce 85 + CONST reduce 85 + INC reduce 85 + DEC reduce 85 + ONCE reduce 85 + IF reduce 85 + SWITCHCASE reduce 85 + WHILE reduce 85 + FOR reduce 85 + FOREACH reduce 85 + CONTINUE reduce 85 + BREAK reduce 85 + RETURN reduce 85 + ACTIONNAME reduce 85 -State 248: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - (144) constExpr ::= constExpr BITAND constExpr * - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 265: + (115) constExpr ::= LPAREN constLogicExpr RPAREN * - QMARK reduce 144 - COMMA reduce 144 - LOR reduce 144 - LAND reduce 144 - EQ shift 138 -- dropped by precedence - EQ reduce 144 - LE shift 125 -- dropped by precedence - LE reduce 144 - LT shift 123 -- dropped by precedence - LT reduce 144 - GE shift 124 -- dropped by precedence - GE reduce 144 - GT shift 122 -- dropped by precedence - GT reduce 144 - NE shift 126 -- dropped by precedence - NE reduce 144 - BITOR shift 128 -- dropped by precedence - BITOR reduce 144 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 144 - BITAND shift 129 -- dropped by precedence - BITAND reduce 144 - LSHIFT shift 131 - LSHIFT reduce 144 -- dropped by precedence - RSHIFT shift 130 - RSHIFT reduce 144 -- dropped by precedence - PLUS shift 136 - PLUS reduce 144 -- dropped by precedence - MINUS shift 135 - MINUS reduce 144 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 144 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 144 -- dropped by precedence - MOD shift 132 - MOD reduce 144 -- dropped by precedence - BITNOT reduce 144 - LPAREN reduce 144 - LSQBRACKET reduce 144 - PERIOD reduce 144 - SEMICOLON reduce 144 - NAME reduce 144 - COLON reduce 144 - FUNCTION reduce 144 - RPAREN reduce 144 - LBRACKET reduce 144 - VAR reduce 144 - NUMBER reduce 144 - RSQBRACKET reduce 144 - KILLS reduce 144 - TRGCONST reduce 144 - L2V reduce 144 - MAPSTRING reduce 144 - UNIT reduce 144 - SWITCH reduce 144 - LOCATION reduce 144 - STATTXTTBL reduce 144 - VARRAY reduce 144 - STATIC reduce 144 - CONST reduce 144 - INC reduce 144 - DEC reduce 144 - ONCE reduce 144 - IF reduce 144 - SWITCHCASE reduce 144 - WHILE reduce 144 - FOR reduce 144 - FOREACH reduce 144 - CONTINUE reduce 144 - BREAK reduce 144 - RETURN reduce 144 - ACTIONNAME reduce 144 + QMARK reduce 115 + COMMA reduce 115 + LOR reduce 115 + LAND reduce 115 + LNOT reduce 115 + EQ reduce 115 + LE reduce 115 + LT reduce 115 + GE reduce 115 + GT reduce 115 + NE reduce 115 + BITOR reduce 115 + BITXOR reduce 115 + BITAND reduce 115 + LSHIFT reduce 115 + RSHIFT reduce 115 + PLUS reduce 115 + MINUS reduce 115 + DIVIDE reduce 115 + MULTIPLY reduce 115 + MOD reduce 115 + BITNOT reduce 115 + LPAREN reduce 115 + SEMICOLON reduce 115 + NAME reduce 115 + COLON reduce 115 + RPAREN reduce 115 + LBRACKET reduce 115 + VAR reduce 115 + RSQBRACKET reduce 115 + L2V reduce 115 + STATIC reduce 115 + CONST reduce 115 + INC reduce 115 + DEC reduce 115 + ONCE reduce 115 + IF reduce 115 + SWITCHCASE reduce 115 + WHILE reduce 115 + FOR reduce 115 + FOREACH reduce 115 + CONTINUE reduce 115 + BREAK reduce 115 + RETURN reduce 115 + ACTIONNAME reduce 115 -State 249: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - (141) constExpr ::= constExpr RSHIFT constExpr * - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 266: + (86) constExpr ::= TRGCONST * - QMARK reduce 141 - COMMA reduce 141 - LOR reduce 141 - LAND reduce 141 - EQ shift 138 -- dropped by precedence - EQ reduce 141 - LE shift 125 -- dropped by precedence - LE reduce 141 - LT shift 123 -- dropped by precedence - LT reduce 141 - GE shift 124 -- dropped by precedence - GE reduce 141 - GT shift 122 -- dropped by precedence - GT reduce 141 - NE shift 126 -- dropped by precedence - NE reduce 141 - BITOR shift 128 -- dropped by precedence - BITOR reduce 141 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 141 - BITAND shift 129 -- dropped by precedence - BITAND reduce 141 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 141 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 141 - PLUS shift 136 - PLUS reduce 141 -- dropped by precedence - MINUS shift 135 - MINUS reduce 141 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 141 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 141 -- dropped by precedence - MOD shift 132 - MOD reduce 141 -- dropped by precedence - BITNOT reduce 141 - LPAREN reduce 141 - LSQBRACKET reduce 141 - PERIOD reduce 141 - SEMICOLON reduce 141 - NAME reduce 141 - COLON reduce 141 - FUNCTION reduce 141 - RPAREN reduce 141 - LBRACKET reduce 141 - VAR reduce 141 - NUMBER reduce 141 - RSQBRACKET reduce 141 - KILLS reduce 141 - TRGCONST reduce 141 - L2V reduce 141 - MAPSTRING reduce 141 - UNIT reduce 141 - SWITCH reduce 141 - LOCATION reduce 141 - STATTXTTBL reduce 141 - VARRAY reduce 141 - STATIC reduce 141 - CONST reduce 141 - INC reduce 141 - DEC reduce 141 - ONCE reduce 141 - IF reduce 141 - SWITCHCASE reduce 141 - WHILE reduce 141 - FOR reduce 141 - FOREACH reduce 141 - CONTINUE reduce 141 - BREAK reduce 141 - RETURN reduce 141 - ACTIONNAME reduce 141 + QMARK reduce 86 + COMMA reduce 86 + LOR reduce 86 + LAND reduce 86 + LNOT reduce 86 + EQ reduce 86 + LE reduce 86 + LT reduce 86 + GE reduce 86 + GT reduce 86 + NE reduce 86 + BITOR reduce 86 + BITXOR reduce 86 + BITAND reduce 86 + LSHIFT reduce 86 + RSHIFT reduce 86 + PLUS reduce 86 + MINUS reduce 86 + DIVIDE reduce 86 + MULTIPLY reduce 86 + MOD reduce 86 + BITNOT reduce 86 + LPAREN reduce 86 + SEMICOLON reduce 86 + NAME reduce 86 + COLON reduce 86 + RPAREN reduce 86 + LBRACKET reduce 86 + VAR reduce 86 + RSQBRACKET reduce 86 + L2V reduce 86 + STATIC reduce 86 + CONST reduce 86 + INC reduce 86 + DEC reduce 86 + ONCE reduce 86 + IF reduce 86 + SWITCHCASE reduce 86 + WHILE reduce 86 + FOR reduce 86 + FOREACH reduce 86 + CONTINUE reduce 86 + BREAK reduce 86 + RETURN reduce 86 + ACTIONNAME reduce 86 -State 250: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - (138) constExpr ::= constExpr LSHIFT constExpr * - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 267: + (85) constExpr ::= KILLS * + logicExpr ::= KILLS * LPAREN fArgs RPAREN - QMARK reduce 138 - COMMA reduce 138 - LOR reduce 138 - LAND reduce 138 - EQ shift 138 -- dropped by precedence - EQ reduce 138 - LE shift 125 -- dropped by precedence - LE reduce 138 - LT shift 123 -- dropped by precedence - LT reduce 138 - GE shift 124 -- dropped by precedence - GE reduce 138 - GT shift 122 -- dropped by precedence - GT reduce 138 - NE shift 126 -- dropped by precedence - NE reduce 138 - BITOR shift 128 -- dropped by precedence - BITOR reduce 138 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 138 - BITAND shift 129 -- dropped by precedence - BITAND reduce 138 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 138 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 138 - PLUS shift 136 - PLUS reduce 138 -- dropped by precedence - MINUS shift 135 - MINUS reduce 138 -- dropped by precedence - DIVIDE shift 133 - DIVIDE reduce 138 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 138 -- dropped by precedence - MOD shift 132 - MOD reduce 138 -- dropped by precedence - BITNOT reduce 138 - LPAREN reduce 138 - LSQBRACKET reduce 138 - PERIOD reduce 138 - SEMICOLON reduce 138 - NAME reduce 138 - COLON reduce 138 - FUNCTION reduce 138 - RPAREN reduce 138 - LBRACKET reduce 138 - VAR reduce 138 - NUMBER reduce 138 - RSQBRACKET reduce 138 - KILLS reduce 138 - TRGCONST reduce 138 - L2V reduce 138 - MAPSTRING reduce 138 - UNIT reduce 138 - SWITCH reduce 138 - LOCATION reduce 138 - STATTXTTBL reduce 138 - VARRAY reduce 138 - STATIC reduce 138 - CONST reduce 138 - INC reduce 138 - DEC reduce 138 - ONCE reduce 138 - IF reduce 138 - SWITCHCASE reduce 138 - WHILE reduce 138 - FOR reduce 138 - FOREACH reduce 138 - CONTINUE reduce 138 - BREAK reduce 138 - RETURN reduce 138 - ACTIONNAME reduce 138 + QMARK reduce 85 + COMMA reduce 85 + LOR reduce 85 + LAND reduce 85 + LNOT reduce 85 + EQ reduce 85 + LE reduce 85 + LT reduce 85 + GE reduce 85 + GT reduce 85 + NE reduce 85 + BITOR reduce 85 + BITXOR reduce 85 + BITAND reduce 85 + LSHIFT reduce 85 + RSHIFT reduce 85 + PLUS reduce 85 + MINUS reduce 85 + DIVIDE reduce 85 + MULTIPLY reduce 85 + MOD reduce 85 + BITNOT reduce 85 + LPAREN shift 22 + LPAREN reduce 85 -- dropped by precedence + SEMICOLON reduce 85 + NAME reduce 85 + COLON reduce 85 + RPAREN reduce 85 + LBRACKET reduce 85 + VAR reduce 85 + RSQBRACKET reduce 85 + L2V reduce 85 + STATIC reduce 85 + CONST reduce 85 + INC reduce 85 + DEC reduce 85 + ONCE reduce 85 + IF reduce 85 + SWITCHCASE reduce 85 + WHILE reduce 85 + FOR reduce 85 + FOREACH reduce 85 + CONTINUE reduce 85 + BREAK reduce 85 + RETURN reduce 85 + ACTIONNAME reduce 85 -State 251: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - (135) constExpr ::= constExpr MOD constExpr * - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 268: + (84) constExpr ::= NUMBER * - QMARK reduce 135 - COMMA reduce 135 - LOR reduce 135 - LAND reduce 135 - EQ shift 138 -- dropped by precedence - EQ reduce 135 - LE shift 125 -- dropped by precedence - LE reduce 135 - LT shift 123 -- dropped by precedence - LT reduce 135 - GE shift 124 -- dropped by precedence - GE reduce 135 - GT shift 122 -- dropped by precedence - GT reduce 135 - NE shift 126 -- dropped by precedence - NE reduce 135 - BITOR shift 128 -- dropped by precedence - BITOR reduce 135 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 135 - BITAND shift 129 -- dropped by precedence - BITAND reduce 135 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 135 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 135 - PLUS shift 136 -- dropped by precedence - PLUS reduce 135 - MINUS shift 135 -- dropped by precedence - MINUS reduce 135 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 135 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 135 - MOD shift 132 -- dropped by precedence - MOD reduce 135 - BITNOT reduce 135 - LPAREN reduce 135 - LSQBRACKET reduce 135 - PERIOD reduce 135 - SEMICOLON reduce 135 - NAME reduce 135 - COLON reduce 135 - FUNCTION reduce 135 - RPAREN reduce 135 - LBRACKET reduce 135 - VAR reduce 135 - NUMBER reduce 135 - RSQBRACKET reduce 135 - KILLS reduce 135 - TRGCONST reduce 135 - L2V reduce 135 - MAPSTRING reduce 135 - UNIT reduce 135 - SWITCH reduce 135 - LOCATION reduce 135 - STATTXTTBL reduce 135 - VARRAY reduce 135 - STATIC reduce 135 - CONST reduce 135 - INC reduce 135 - DEC reduce 135 - ONCE reduce 135 - IF reduce 135 - SWITCHCASE reduce 135 - WHILE reduce 135 - FOR reduce 135 - FOREACH reduce 135 - CONTINUE reduce 135 - BREAK reduce 135 - RETURN reduce 135 - ACTIONNAME reduce 135 + QMARK reduce 84 + COMMA reduce 84 + LOR reduce 84 + LAND reduce 84 + LNOT reduce 84 + EQ reduce 84 + LE reduce 84 + LT reduce 84 + GE reduce 84 + GT reduce 84 + NE reduce 84 + BITOR reduce 84 + BITXOR reduce 84 + BITAND reduce 84 + LSHIFT reduce 84 + RSHIFT reduce 84 + PLUS reduce 84 + MINUS reduce 84 + DIVIDE reduce 84 + MULTIPLY reduce 84 + MOD reduce 84 + BITNOT reduce 84 + LPAREN reduce 84 + SEMICOLON reduce 84 + NAME reduce 84 + COLON reduce 84 + RPAREN reduce 84 + LBRACKET reduce 84 + VAR reduce 84 + RSQBRACKET reduce 84 + L2V reduce 84 + STATIC reduce 84 + CONST reduce 84 + INC reduce 84 + DEC reduce 84 + ONCE reduce 84 + IF reduce 84 + SWITCHCASE reduce 84 + WHILE reduce 84 + FOR reduce 84 + FOREACH reduce 84 + CONTINUE reduce 84 + BREAK reduce 84 + RETURN reduce 84 + ACTIONNAME reduce 84 -State 252: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - (132) constExpr ::= constExpr DIVIDE constExpr * - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 269: + constShTerm ::= constShTerm * RSHIFT constTerm + constShTerm ::= constShTerm * LSHIFT constTerm + (163) constBitAndTerm ::= constShTerm * - QMARK reduce 132 - COMMA reduce 132 - LOR reduce 132 - LAND reduce 132 - EQ shift 138 -- dropped by precedence - EQ reduce 132 - LE shift 125 -- dropped by precedence - LE reduce 132 - LT shift 123 -- dropped by precedence - LT reduce 132 - GE shift 124 -- dropped by precedence - GE reduce 132 - GT shift 122 -- dropped by precedence - GT reduce 132 - NE shift 126 -- dropped by precedence - NE reduce 132 - BITOR shift 128 -- dropped by precedence - BITOR reduce 132 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 132 - BITAND shift 129 -- dropped by precedence - BITAND reduce 132 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 132 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 132 - PLUS shift 136 -- dropped by precedence - PLUS reduce 132 - MINUS shift 135 -- dropped by precedence - MINUS reduce 132 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 132 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 132 - MOD shift 132 -- dropped by precedence - MOD reduce 132 - BITNOT reduce 132 - LPAREN reduce 132 - LSQBRACKET reduce 132 - PERIOD reduce 132 - SEMICOLON reduce 132 - NAME reduce 132 - COLON reduce 132 - FUNCTION reduce 132 - RPAREN reduce 132 - LBRACKET reduce 132 - VAR reduce 132 - NUMBER reduce 132 - RSQBRACKET reduce 132 - KILLS reduce 132 - TRGCONST reduce 132 - L2V reduce 132 - MAPSTRING reduce 132 - UNIT reduce 132 - SWITCH reduce 132 - LOCATION reduce 132 - STATTXTTBL reduce 132 - VARRAY reduce 132 - STATIC reduce 132 - CONST reduce 132 - INC reduce 132 - DEC reduce 132 - ONCE reduce 132 - IF reduce 132 - SWITCHCASE reduce 132 - WHILE reduce 132 - FOR reduce 132 - FOREACH reduce 132 - CONTINUE reduce 132 - BREAK reduce 132 - RETURN reduce 132 - ACTIONNAME reduce 132 + QMARK reduce 163 + COMMA reduce 163 + LOR reduce 163 + LAND reduce 163 + LNOT reduce 163 + EQ reduce 163 + LE reduce 163 + LT reduce 163 + GE reduce 163 + GT reduce 163 + NE reduce 163 + BITOR reduce 163 + BITXOR reduce 163 + BITAND reduce 163 + LSHIFT shift 127 + RSHIFT shift 128 + PLUS reduce 163 + MINUS reduce 163 + BITNOT reduce 163 + LPAREN reduce 163 + SEMICOLON reduce 163 + NAME reduce 163 + COLON reduce 163 + RPAREN reduce 163 + LBRACKET reduce 163 + VAR reduce 163 + RSQBRACKET reduce 163 + L2V reduce 163 + STATIC reduce 163 + CONST reduce 163 + INC reduce 163 + DEC reduce 163 + ONCE reduce 163 + IF reduce 163 + SWITCHCASE reduce 163 + WHILE reduce 163 + FOR reduce 163 + FOREACH reduce 163 + CONTINUE reduce 163 + BREAK reduce 163 + RETURN reduce 163 + ACTIONNAME reduce 163 + +State 270: + shTerm ::= shTerm * RSHIFT term + shTerm ::= shTerm * RSHIFT constTerm + shTerm ::= shTerm * LSHIFT constTerm + shTerm ::= shTerm * LSHIFT term + (167) bitAndTerm ::= bitAndTerm BITAND shTerm * + + QMARK reduce 167 + COMMA reduce 167 + LOR reduce 167 + LAND reduce 167 + LNOT reduce 167 + EQ reduce 167 + LE reduce 167 + LT reduce 167 + GE reduce 167 + GT reduce 167 + NE reduce 167 + BITOR reduce 167 + BITXOR reduce 167 + BITAND reduce 167 + LSHIFT shift 104 + RSHIFT shift 105 + PLUS reduce 167 + MINUS reduce 167 + BITNOT reduce 167 + LPAREN reduce 167 + SEMICOLON reduce 167 + NAME reduce 167 + COLON reduce 167 + RPAREN reduce 167 + LBRACKET reduce 167 + VAR reduce 167 + RSQBRACKET reduce 167 + L2V reduce 167 + STATIC reduce 167 + CONST reduce 167 + INC reduce 167 + DEC reduce 167 + ONCE reduce 167 + IF reduce 167 + SWITCHCASE reduce 167 + WHILE reduce 167 + FOR reduce 167 + FOREACH reduce 167 + CONTINUE reduce 167 + BREAK reduce 167 + RETURN reduce 167 + ACTIONNAME reduce 167 -State 253: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - (129) constExpr ::= constExpr MULTIPLY constExpr * - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 271: + constShTerm ::= constShTerm * RSHIFT constTerm + constShTerm ::= constShTerm * LSHIFT constTerm + (168) bitAndTerm ::= bitAndTerm BITAND constShTerm * - QMARK reduce 129 - COMMA reduce 129 - LOR reduce 129 - LAND reduce 129 - EQ shift 138 -- dropped by precedence - EQ reduce 129 - LE shift 125 -- dropped by precedence - LE reduce 129 - LT shift 123 -- dropped by precedence - LT reduce 129 - GE shift 124 -- dropped by precedence - GE reduce 129 - GT shift 122 -- dropped by precedence - GT reduce 129 - NE shift 126 -- dropped by precedence - NE reduce 129 - BITOR shift 128 -- dropped by precedence - BITOR reduce 129 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 129 - BITAND shift 129 -- dropped by precedence - BITAND reduce 129 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 129 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 129 - PLUS shift 136 -- dropped by precedence - PLUS reduce 129 - MINUS shift 135 -- dropped by precedence - MINUS reduce 129 - DIVIDE shift 133 -- dropped by precedence - DIVIDE reduce 129 - MULTIPLY shift 134 -- dropped by precedence - MULTIPLY reduce 129 - MOD shift 132 -- dropped by precedence - MOD reduce 129 - BITNOT reduce 129 - LPAREN reduce 129 - LSQBRACKET reduce 129 - PERIOD reduce 129 - SEMICOLON reduce 129 - NAME reduce 129 - COLON reduce 129 - FUNCTION reduce 129 - RPAREN reduce 129 - LBRACKET reduce 129 - VAR reduce 129 - NUMBER reduce 129 - RSQBRACKET reduce 129 - KILLS reduce 129 - TRGCONST reduce 129 - L2V reduce 129 - MAPSTRING reduce 129 - UNIT reduce 129 - SWITCH reduce 129 - LOCATION reduce 129 - STATTXTTBL reduce 129 - VARRAY reduce 129 - STATIC reduce 129 - CONST reduce 129 - INC reduce 129 - DEC reduce 129 - ONCE reduce 129 - IF reduce 129 - SWITCHCASE reduce 129 - WHILE reduce 129 - FOR reduce 129 - FOREACH reduce 129 - CONTINUE reduce 129 - BREAK reduce 129 - RETURN reduce 129 - ACTIONNAME reduce 129 + QMARK reduce 168 + COMMA reduce 168 + LOR reduce 168 + LAND reduce 168 + LNOT reduce 168 + EQ reduce 168 + LE reduce 168 + LT reduce 168 + GE reduce 168 + GT reduce 168 + NE reduce 168 + BITOR reduce 168 + BITXOR reduce 168 + BITAND reduce 168 + LSHIFT shift 127 + RSHIFT shift 128 + PLUS reduce 168 + MINUS reduce 168 + BITNOT reduce 168 + LPAREN reduce 168 + SEMICOLON reduce 168 + NAME reduce 168 + COLON reduce 168 + RPAREN reduce 168 + LBRACKET reduce 168 + VAR reduce 168 + RSQBRACKET reduce 168 + L2V reduce 168 + STATIC reduce 168 + CONST reduce 168 + INC reduce 168 + DEC reduce 168 + ONCE reduce 168 + IF reduce 168 + SWITCHCASE reduce 168 + WHILE reduce 168 + FOR reduce 168 + FOREACH reduce 168 + CONTINUE reduce 168 + BREAK reduce 168 + RETURN reduce 168 + ACTIONNAME reduce 168 -State 254: - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - (126) constExpr ::= constExpr MINUS constExpr * - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 272: + constShTerm ::= constShTerm * RSHIFT constTerm + constShTerm ::= constShTerm * LSHIFT constTerm + (164) constBitAndTerm ::= constBitAndTerm BITAND constShTerm * - QMARK reduce 126 - COMMA reduce 126 - LOR reduce 126 - LAND reduce 126 - EQ shift 138 -- dropped by precedence - EQ reduce 126 - LE shift 125 -- dropped by precedence - LE reduce 126 - LT shift 123 -- dropped by precedence - LT reduce 126 - GE shift 124 -- dropped by precedence - GE reduce 126 - GT shift 122 -- dropped by precedence - GT reduce 126 - NE shift 126 -- dropped by precedence - NE reduce 126 - BITOR shift 128 -- dropped by precedence - BITOR reduce 126 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 126 - BITAND shift 129 -- dropped by precedence - BITAND reduce 126 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 126 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 126 - PLUS shift 136 -- dropped by precedence - PLUS reduce 126 - MINUS shift 135 -- dropped by precedence - MINUS reduce 126 - DIVIDE shift 133 - DIVIDE reduce 126 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 126 -- dropped by precedence - MOD shift 132 - MOD reduce 126 -- dropped by precedence - BITNOT reduce 126 - LPAREN reduce 126 - LSQBRACKET reduce 126 - PERIOD reduce 126 - SEMICOLON reduce 126 - NAME reduce 126 - COLON reduce 126 - FUNCTION reduce 126 - RPAREN reduce 126 - LBRACKET reduce 126 - VAR reduce 126 - NUMBER reduce 126 - RSQBRACKET reduce 126 - KILLS reduce 126 - TRGCONST reduce 126 - L2V reduce 126 - MAPSTRING reduce 126 - UNIT reduce 126 - SWITCH reduce 126 - LOCATION reduce 126 - STATTXTTBL reduce 126 - VARRAY reduce 126 - STATIC reduce 126 - CONST reduce 126 - INC reduce 126 - DEC reduce 126 - ONCE reduce 126 - IF reduce 126 - SWITCHCASE reduce 126 - WHILE reduce 126 - FOR reduce 126 - FOREACH reduce 126 - CONTINUE reduce 126 - BREAK reduce 126 - RETURN reduce 126 - ACTIONNAME reduce 126 + QMARK reduce 164 + COMMA reduce 164 + LOR reduce 164 + LAND reduce 164 + LNOT reduce 164 + EQ reduce 164 + LE reduce 164 + LT reduce 164 + GE reduce 164 + GT reduce 164 + NE reduce 164 + BITOR reduce 164 + BITXOR reduce 164 + BITAND reduce 164 + LSHIFT shift 127 + RSHIFT shift 128 + PLUS reduce 164 + MINUS reduce 164 + BITNOT reduce 164 + LPAREN reduce 164 + SEMICOLON reduce 164 + NAME reduce 164 + COLON reduce 164 + RPAREN reduce 164 + LBRACKET reduce 164 + VAR reduce 164 + RSQBRACKET reduce 164 + L2V reduce 164 + STATIC reduce 164 + CONST reduce 164 + INC reduce 164 + DEC reduce 164 + ONCE reduce 164 + IF reduce 164 + SWITCHCASE reduce 164 + WHILE reduce 164 + FOR reduce 164 + FOREACH reduce 164 + CONTINUE reduce 164 + BREAK reduce 164 + RETURN reduce 164 + ACTIONNAME reduce 164 -State 255: - constExpr ::= constExpr * PLUS constExpr - (123) constExpr ::= constExpr PLUS constExpr * - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 273: + constTerm ::= constTerm * PLUS constFactor + constTerm ::= constTerm * MINUS constFactor + (153) constShTerm ::= constTerm * - QMARK reduce 123 - COMMA reduce 123 - LOR reduce 123 - LAND reduce 123 - EQ shift 138 -- dropped by precedence - EQ reduce 123 - LE shift 125 -- dropped by precedence - LE reduce 123 - LT shift 123 -- dropped by precedence - LT reduce 123 - GE shift 124 -- dropped by precedence - GE reduce 123 - GT shift 122 -- dropped by precedence - GT reduce 123 - NE shift 126 -- dropped by precedence - NE reduce 123 - BITOR shift 128 -- dropped by precedence - BITOR reduce 123 - BITXOR shift 127 -- dropped by precedence - BITXOR reduce 123 - BITAND shift 129 -- dropped by precedence - BITAND reduce 123 - LSHIFT shift 131 -- dropped by precedence - LSHIFT reduce 123 - RSHIFT shift 130 -- dropped by precedence - RSHIFT reduce 123 - PLUS shift 136 -- dropped by precedence - PLUS reduce 123 - MINUS shift 135 -- dropped by precedence - MINUS reduce 123 - DIVIDE shift 133 - DIVIDE reduce 123 -- dropped by precedence - MULTIPLY shift 134 - MULTIPLY reduce 123 -- dropped by precedence - MOD shift 132 - MOD reduce 123 -- dropped by precedence - BITNOT reduce 123 - LPAREN reduce 123 - LSQBRACKET reduce 123 - PERIOD reduce 123 - SEMICOLON reduce 123 - NAME reduce 123 - COLON reduce 123 - FUNCTION reduce 123 - RPAREN reduce 123 - LBRACKET reduce 123 - VAR reduce 123 - NUMBER reduce 123 - RSQBRACKET reduce 123 - KILLS reduce 123 - TRGCONST reduce 123 - L2V reduce 123 - MAPSTRING reduce 123 - UNIT reduce 123 - SWITCH reduce 123 - LOCATION reduce 123 - STATTXTTBL reduce 123 - VARRAY reduce 123 - STATIC reduce 123 - CONST reduce 123 - INC reduce 123 - DEC reduce 123 - ONCE reduce 123 - IF reduce 123 - SWITCHCASE reduce 123 - WHILE reduce 123 - FOR reduce 123 - FOREACH reduce 123 - CONTINUE reduce 123 - BREAK reduce 123 - RETURN reduce 123 - ACTIONNAME reduce 123 + QMARK reduce 153 + COMMA reduce 153 + LOR reduce 153 + LAND reduce 153 + LNOT reduce 153 + EQ reduce 153 + LE reduce 153 + LT reduce 153 + GE reduce 153 + GT reduce 153 + NE reduce 153 + BITOR reduce 153 + BITXOR reduce 153 + BITAND reduce 153 + LSHIFT reduce 153 + RSHIFT reduce 153 + PLUS shift 132 + PLUS reduce 153 -- dropped by precedence + MINUS shift 131 + MINUS reduce 153 -- dropped by precedence + BITNOT reduce 153 + LPAREN reduce 153 + SEMICOLON reduce 153 + NAME reduce 153 + COLON reduce 153 + RPAREN reduce 153 + LBRACKET reduce 153 + VAR reduce 153 + RSQBRACKET reduce 153 + L2V reduce 153 + STATIC reduce 153 + CONST reduce 153 + INC reduce 153 + DEC reduce 153 + ONCE reduce 153 + IF reduce 153 + SWITCHCASE reduce 153 + WHILE reduce 153 + FOR reduce 153 + FOREACH reduce 153 + CONTINUE reduce 153 + BREAK reduce 153 + RETURN reduce 153 + ACTIONNAME reduce 153 -State 256: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - (150) constExpr ::= constExpr BITXOR constExpr * - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 274: + shTerm ::= shTerm * RSHIFT term + shTerm ::= shTerm * RSHIFT constTerm + shTerm ::= shTerm * LSHIFT constTerm + shTerm ::= shTerm * LSHIFT term + (165) bitAndTerm ::= shTerm * - QMARK reduce 150 - COMMA reduce 150 - LOR reduce 150 - LAND reduce 150 - EQ shift 138 -- dropped by precedence - EQ reduce 150 - LE shift 125 -- dropped by precedence - LE reduce 150 - LT shift 123 -- dropped by precedence - LT reduce 150 - GE shift 124 -- dropped by precedence - GE reduce 150 - GT shift 122 -- dropped by precedence - GT reduce 150 - NE shift 126 -- dropped by precedence - NE reduce 150 - BITOR shift 102 -- dropped by precedence - BITOR reduce 150 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 150 - BITAND shift 103 - BITAND reduce 150 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 150 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 150 -- dropped by precedence - PLUS shift 113 - PLUS reduce 150 -- dropped by precedence - MINUS shift 112 - MINUS reduce 150 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 150 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 150 -- dropped by precedence - MOD shift 106 - MOD reduce 150 -- dropped by precedence - BITNOT reduce 150 - LPAREN reduce 150 - LSQBRACKET reduce 150 - PERIOD reduce 150 - SEMICOLON reduce 150 - NAME reduce 150 - COLON reduce 150 - FUNCTION reduce 150 - RPAREN reduce 150 - LBRACKET reduce 150 - VAR reduce 150 - NUMBER reduce 150 - RSQBRACKET reduce 150 - KILLS reduce 150 - TRGCONST reduce 150 - L2V reduce 150 - MAPSTRING reduce 150 - UNIT reduce 150 - SWITCH reduce 150 - LOCATION reduce 150 - STATTXTTBL reduce 150 - VARRAY reduce 150 - STATIC reduce 150 - CONST reduce 150 - INC reduce 150 - DEC reduce 150 - ONCE reduce 150 - IF reduce 150 - SWITCHCASE reduce 150 - WHILE reduce 150 - FOR reduce 150 - FOREACH reduce 150 - CONTINUE reduce 150 - BREAK reduce 150 - RETURN reduce 150 - ACTIONNAME reduce 150 + QMARK reduce 165 + COMMA reduce 165 + LOR reduce 165 + LAND reduce 165 + LNOT reduce 165 + EQ reduce 165 + LE reduce 165 + LT reduce 165 + GE reduce 165 + GT reduce 165 + NE reduce 165 + BITOR reduce 165 + BITXOR reduce 165 + BITAND reduce 165 + LSHIFT shift 104 + RSHIFT shift 105 + PLUS reduce 165 + MINUS reduce 165 + BITNOT reduce 165 + LPAREN reduce 165 + SEMICOLON reduce 165 + NAME reduce 165 + COLON reduce 165 + RPAREN reduce 165 + LBRACKET reduce 165 + VAR reduce 165 + RSQBRACKET reduce 165 + L2V reduce 165 + STATIC reduce 165 + CONST reduce 165 + INC reduce 165 + DEC reduce 165 + ONCE reduce 165 + IF reduce 165 + SWITCHCASE reduce 165 + WHILE reduce 165 + FOR reduce 165 + FOREACH reduce 165 + CONTINUE reduce 165 + BREAK reduce 165 + RETURN reduce 165 + ACTIONNAME reduce 165 -State 257: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - (151) nonConstExpr ::= constExpr BITXOR nonConstExpr * - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 151 - COMMA reduce 151 - LOR reduce 151 - LAND reduce 151 - EQ reduce 151 - LE reduce 151 - LT reduce 151 - GE reduce 151 - GT reduce 151 - NE reduce 151 - BITOR shift 66 -- dropped by precedence - BITOR reduce 151 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 151 - BITAND shift 67 - BITAND reduce 151 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 151 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 151 -- dropped by precedence - PLUS shift 74 - PLUS reduce 151 -- dropped by precedence - MINUS shift 73 - MINUS reduce 151 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 151 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 151 -- dropped by precedence - MOD shift 70 - MOD reduce 151 -- dropped by precedence - BITNOT reduce 151 - LPAREN shift 23 - LPAREN reduce 151 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 151 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 151 -- dropped by precedence - SEMICOLON reduce 151 - NAME reduce 151 - COLON reduce 151 - FUNCTION reduce 151 - RPAREN reduce 151 - LBRACKET reduce 151 - VAR reduce 151 - NUMBER reduce 151 - RSQBRACKET reduce 151 - KILLS reduce 151 - TRGCONST reduce 151 - L2V reduce 151 - MAPSTRING reduce 151 - UNIT reduce 151 - SWITCH reduce 151 - LOCATION reduce 151 - STATTXTTBL reduce 151 - VARRAY reduce 151 - STATIC reduce 151 - CONST reduce 151 - INC reduce 151 - DEC reduce 151 - ONCE reduce 151 - IF reduce 151 - SWITCHCASE reduce 151 - WHILE reduce 151 - FOR reduce 151 - FOREACH reduce 151 - CONTINUE reduce 151 - BREAK reduce 151 - RETURN reduce 151 - ACTIONNAME reduce 151 +State 275: + term ::= term * PLUS constFactor + term ::= term * PLUS factor + term ::= term * MINUS constFactor + term ::= term * MINUS factor + (162) shTerm ::= shTerm LSHIFT term * -State 258: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - (147) constExpr ::= constExpr BITOR constExpr * - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 162 + COMMA reduce 162 + LOR reduce 162 + LAND reduce 162 + LNOT reduce 162 + EQ reduce 162 + LE reduce 162 + LT reduce 162 + GE reduce 162 + GT reduce 162 + NE reduce 162 + BITOR reduce 162 + BITXOR reduce 162 + BITAND reduce 162 + LSHIFT reduce 162 + RSHIFT reduce 162 + PLUS shift 114 + PLUS reduce 162 -- dropped by precedence + MINUS shift 113 + MINUS reduce 162 -- dropped by precedence + BITNOT reduce 162 + LPAREN reduce 162 + SEMICOLON reduce 162 + NAME reduce 162 + COLON reduce 162 + RPAREN reduce 162 + LBRACKET reduce 162 + VAR reduce 162 + RSQBRACKET reduce 162 + L2V reduce 162 + STATIC reduce 162 + CONST reduce 162 + INC reduce 162 + DEC reduce 162 + ONCE reduce 162 + IF reduce 162 + SWITCHCASE reduce 162 + WHILE reduce 162 + FOR reduce 162 + FOREACH reduce 162 + CONTINUE reduce 162 + BREAK reduce 162 + RETURN reduce 162 + ACTIONNAME reduce 162 - QMARK reduce 147 - COMMA reduce 147 - LOR reduce 147 - LAND reduce 147 - EQ shift 138 -- dropped by precedence - EQ reduce 147 - LE shift 125 -- dropped by precedence - LE reduce 147 - LT shift 123 -- dropped by precedence - LT reduce 147 - GE shift 124 -- dropped by precedence - GE reduce 147 - GT shift 122 -- dropped by precedence - GT reduce 147 - NE shift 126 -- dropped by precedence - NE reduce 147 - BITOR shift 102 -- dropped by precedence - BITOR reduce 147 - BITXOR shift 101 - BITXOR reduce 147 -- dropped by precedence - BITAND shift 103 - BITAND reduce 147 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 147 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 147 -- dropped by precedence - PLUS shift 113 - PLUS reduce 147 -- dropped by precedence - MINUS shift 112 - MINUS reduce 147 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 147 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 147 -- dropped by precedence - MOD shift 106 - MOD reduce 147 -- dropped by precedence - BITNOT reduce 147 - LPAREN reduce 147 - LSQBRACKET reduce 147 - PERIOD reduce 147 - SEMICOLON reduce 147 - NAME reduce 147 - COLON reduce 147 - FUNCTION reduce 147 - RPAREN reduce 147 - LBRACKET reduce 147 - VAR reduce 147 - NUMBER reduce 147 - RSQBRACKET reduce 147 - KILLS reduce 147 - TRGCONST reduce 147 - L2V reduce 147 - MAPSTRING reduce 147 - UNIT reduce 147 - SWITCH reduce 147 - LOCATION reduce 147 - STATTXTTBL reduce 147 - VARRAY reduce 147 - STATIC reduce 147 - CONST reduce 147 - INC reduce 147 - DEC reduce 147 - ONCE reduce 147 - IF reduce 147 - SWITCHCASE reduce 147 - WHILE reduce 147 - FOR reduce 147 - FOREACH reduce 147 - CONTINUE reduce 147 - BREAK reduce 147 - RETURN reduce 147 - ACTIONNAME reduce 147 +State 276: + constTerm ::= constTerm * PLUS constFactor + constTerm ::= constTerm * MINUS constFactor + (161) shTerm ::= shTerm LSHIFT constTerm * -State 259: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - (148) nonConstExpr ::= constExpr BITOR nonConstExpr * - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 148 - COMMA reduce 148 - LOR reduce 148 - LAND reduce 148 - EQ reduce 148 - LE reduce 148 - LT reduce 148 - GE reduce 148 - GT reduce 148 - NE reduce 148 - BITOR shift 66 -- dropped by precedence - BITOR reduce 148 - BITXOR shift 65 - BITXOR reduce 148 -- dropped by precedence - BITAND shift 67 - BITAND reduce 148 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 148 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 148 -- dropped by precedence - PLUS shift 74 - PLUS reduce 148 -- dropped by precedence - MINUS shift 73 - MINUS reduce 148 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 148 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 148 -- dropped by precedence - MOD shift 70 - MOD reduce 148 -- dropped by precedence - BITNOT reduce 148 - LPAREN shift 23 - LPAREN reduce 148 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 148 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 148 -- dropped by precedence - SEMICOLON reduce 148 - NAME reduce 148 - COLON reduce 148 - FUNCTION reduce 148 - RPAREN reduce 148 - LBRACKET reduce 148 - VAR reduce 148 - NUMBER reduce 148 - RSQBRACKET reduce 148 - KILLS reduce 148 - TRGCONST reduce 148 - L2V reduce 148 - MAPSTRING reduce 148 - UNIT reduce 148 - SWITCH reduce 148 - LOCATION reduce 148 - STATTXTTBL reduce 148 - VARRAY reduce 148 - STATIC reduce 148 - CONST reduce 148 - INC reduce 148 - DEC reduce 148 - ONCE reduce 148 - IF reduce 148 - SWITCHCASE reduce 148 - WHILE reduce 148 - FOR reduce 148 - FOREACH reduce 148 - CONTINUE reduce 148 - BREAK reduce 148 - RETURN reduce 148 - ACTIONNAME reduce 148 + QMARK reduce 161 + COMMA reduce 161 + LOR reduce 161 + LAND reduce 161 + LNOT reduce 161 + EQ reduce 161 + LE reduce 161 + LT reduce 161 + GE reduce 161 + GT reduce 161 + NE reduce 161 + BITOR reduce 161 + BITXOR reduce 161 + BITAND reduce 161 + LSHIFT reduce 161 + RSHIFT reduce 161 + PLUS shift 132 + PLUS reduce 161 -- dropped by precedence + MINUS shift 131 + MINUS reduce 161 -- dropped by precedence + BITNOT reduce 161 + LPAREN reduce 161 + SEMICOLON reduce 161 + NAME reduce 161 + COLON reduce 161 + RPAREN reduce 161 + LBRACKET reduce 161 + VAR reduce 161 + RSQBRACKET reduce 161 + L2V reduce 161 + STATIC reduce 161 + CONST reduce 161 + INC reduce 161 + DEC reduce 161 + ONCE reduce 161 + IF reduce 161 + SWITCHCASE reduce 161 + WHILE reduce 161 + FOR reduce 161 + FOREACH reduce 161 + CONTINUE reduce 161 + BREAK reduce 161 + RETURN reduce 161 + ACTIONNAME reduce 161 -State 260: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - (144) constExpr ::= constExpr BITAND constExpr * - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 277: + term ::= term * PLUS constFactor + term ::= term * PLUS factor + term ::= term * MINUS constFactor + term ::= term * MINUS factor + (158) shTerm ::= shTerm RSHIFT term * - QMARK reduce 144 - COMMA reduce 144 - LOR reduce 144 - LAND reduce 144 - EQ shift 138 -- dropped by precedence - EQ reduce 144 - LE shift 125 -- dropped by precedence - LE reduce 144 - LT shift 123 -- dropped by precedence - LT reduce 144 - GE shift 124 -- dropped by precedence - GE reduce 144 - GT shift 122 -- dropped by precedence - GT reduce 144 - NE shift 126 -- dropped by precedence - NE reduce 144 - BITOR shift 102 -- dropped by precedence - BITOR reduce 144 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 144 - BITAND shift 103 -- dropped by precedence - BITAND reduce 144 - LSHIFT shift 105 - LSHIFT reduce 144 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 144 -- dropped by precedence - PLUS shift 113 - PLUS reduce 144 -- dropped by precedence - MINUS shift 112 - MINUS reduce 144 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 144 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 144 -- dropped by precedence - MOD shift 106 - MOD reduce 144 -- dropped by precedence - BITNOT reduce 144 - LPAREN reduce 144 - LSQBRACKET reduce 144 - PERIOD reduce 144 - SEMICOLON reduce 144 - NAME reduce 144 - COLON reduce 144 - FUNCTION reduce 144 - RPAREN reduce 144 - LBRACKET reduce 144 - VAR reduce 144 - NUMBER reduce 144 - RSQBRACKET reduce 144 - KILLS reduce 144 - TRGCONST reduce 144 - L2V reduce 144 - MAPSTRING reduce 144 - UNIT reduce 144 - SWITCH reduce 144 - LOCATION reduce 144 - STATTXTTBL reduce 144 - VARRAY reduce 144 - STATIC reduce 144 - CONST reduce 144 - INC reduce 144 - DEC reduce 144 - ONCE reduce 144 - IF reduce 144 - SWITCHCASE reduce 144 - WHILE reduce 144 - FOR reduce 144 - FOREACH reduce 144 - CONTINUE reduce 144 - BREAK reduce 144 - RETURN reduce 144 - ACTIONNAME reduce 144 + QMARK reduce 158 + COMMA reduce 158 + LOR reduce 158 + LAND reduce 158 + LNOT reduce 158 + EQ reduce 158 + LE reduce 158 + LT reduce 158 + GE reduce 158 + GT reduce 158 + NE reduce 158 + BITOR reduce 158 + BITXOR reduce 158 + BITAND reduce 158 + LSHIFT reduce 158 + RSHIFT reduce 158 + PLUS shift 114 + PLUS reduce 158 -- dropped by precedence + MINUS shift 113 + MINUS reduce 158 -- dropped by precedence + BITNOT reduce 158 + LPAREN reduce 158 + SEMICOLON reduce 158 + NAME reduce 158 + COLON reduce 158 + RPAREN reduce 158 + LBRACKET reduce 158 + VAR reduce 158 + RSQBRACKET reduce 158 + L2V reduce 158 + STATIC reduce 158 + CONST reduce 158 + INC reduce 158 + DEC reduce 158 + ONCE reduce 158 + IF reduce 158 + SWITCHCASE reduce 158 + WHILE reduce 158 + FOR reduce 158 + FOREACH reduce 158 + CONTINUE reduce 158 + BREAK reduce 158 + RETURN reduce 158 + ACTIONNAME reduce 158 -State 261: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - (145) nonConstExpr ::= constExpr BITAND nonConstExpr * - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 145 - COMMA reduce 145 - LOR reduce 145 - LAND reduce 145 - EQ reduce 145 - LE reduce 145 - LT reduce 145 - GE reduce 145 - GT reduce 145 - NE reduce 145 - BITOR shift 66 -- dropped by precedence - BITOR reduce 145 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 145 - BITAND shift 67 -- dropped by precedence - BITAND reduce 145 - LSHIFT shift 69 - LSHIFT reduce 145 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 145 -- dropped by precedence - PLUS shift 74 - PLUS reduce 145 -- dropped by precedence - MINUS shift 73 - MINUS reduce 145 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 145 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 145 -- dropped by precedence - MOD shift 70 - MOD reduce 145 -- dropped by precedence - BITNOT reduce 145 - LPAREN shift 23 - LPAREN reduce 145 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 145 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 145 -- dropped by precedence - SEMICOLON reduce 145 - NAME reduce 145 - COLON reduce 145 - FUNCTION reduce 145 - RPAREN reduce 145 - LBRACKET reduce 145 - VAR reduce 145 - NUMBER reduce 145 - RSQBRACKET reduce 145 - KILLS reduce 145 - TRGCONST reduce 145 - L2V reduce 145 - MAPSTRING reduce 145 - UNIT reduce 145 - SWITCH reduce 145 - LOCATION reduce 145 - STATTXTTBL reduce 145 - VARRAY reduce 145 - STATIC reduce 145 - CONST reduce 145 - INC reduce 145 - DEC reduce 145 - ONCE reduce 145 - IF reduce 145 - SWITCHCASE reduce 145 - WHILE reduce 145 - FOR reduce 145 - FOREACH reduce 145 - CONTINUE reduce 145 - BREAK reduce 145 - RETURN reduce 145 - ACTIONNAME reduce 145 +State 278: + constTerm ::= constTerm * PLUS constFactor + constTerm ::= constTerm * MINUS constFactor + (159) shTerm ::= shTerm RSHIFT constTerm * -State 262: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - (141) constExpr ::= constExpr RSHIFT constExpr * - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 159 + COMMA reduce 159 + LOR reduce 159 + LAND reduce 159 + LNOT reduce 159 + EQ reduce 159 + LE reduce 159 + LT reduce 159 + GE reduce 159 + GT reduce 159 + NE reduce 159 + BITOR reduce 159 + BITXOR reduce 159 + BITAND reduce 159 + LSHIFT reduce 159 + RSHIFT reduce 159 + PLUS shift 132 + PLUS reduce 159 -- dropped by precedence + MINUS shift 131 + MINUS reduce 159 -- dropped by precedence + BITNOT reduce 159 + LPAREN reduce 159 + SEMICOLON reduce 159 + NAME reduce 159 + COLON reduce 159 + RPAREN reduce 159 + LBRACKET reduce 159 + VAR reduce 159 + RSQBRACKET reduce 159 + L2V reduce 159 + STATIC reduce 159 + CONST reduce 159 + INC reduce 159 + DEC reduce 159 + ONCE reduce 159 + IF reduce 159 + SWITCHCASE reduce 159 + WHILE reduce 159 + FOR reduce 159 + FOREACH reduce 159 + CONTINUE reduce 159 + BREAK reduce 159 + RETURN reduce 159 + ACTIONNAME reduce 159 - QMARK reduce 141 - COMMA reduce 141 - LOR reduce 141 - LAND reduce 141 - EQ shift 138 -- dropped by precedence - EQ reduce 141 - LE shift 125 -- dropped by precedence - LE reduce 141 - LT shift 123 -- dropped by precedence - LT reduce 141 - GE shift 124 -- dropped by precedence - GE reduce 141 - GT shift 122 -- dropped by precedence - GT reduce 141 - NE shift 126 -- dropped by precedence - NE reduce 141 - BITOR shift 102 -- dropped by precedence - BITOR reduce 141 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 141 - BITAND shift 103 -- dropped by precedence - BITAND reduce 141 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 141 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 141 - PLUS shift 113 - PLUS reduce 141 -- dropped by precedence - MINUS shift 112 - MINUS reduce 141 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 141 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 141 -- dropped by precedence - MOD shift 106 - MOD reduce 141 -- dropped by precedence - BITNOT reduce 141 - LPAREN reduce 141 - LSQBRACKET reduce 141 - PERIOD reduce 141 - SEMICOLON reduce 141 - NAME reduce 141 - COLON reduce 141 - FUNCTION reduce 141 - RPAREN reduce 141 - LBRACKET reduce 141 - VAR reduce 141 - NUMBER reduce 141 - RSQBRACKET reduce 141 - KILLS reduce 141 - TRGCONST reduce 141 - L2V reduce 141 - MAPSTRING reduce 141 - UNIT reduce 141 - SWITCH reduce 141 - LOCATION reduce 141 - STATTXTTBL reduce 141 - VARRAY reduce 141 - STATIC reduce 141 - CONST reduce 141 - INC reduce 141 - DEC reduce 141 - ONCE reduce 141 - IF reduce 141 - SWITCHCASE reduce 141 - WHILE reduce 141 - FOR reduce 141 - FOREACH reduce 141 - CONTINUE reduce 141 - BREAK reduce 141 - RETURN reduce 141 - ACTIONNAME reduce 141 +State 279: + shTerm ::= shTerm * RSHIFT term + shTerm ::= shTerm * RSHIFT constTerm + shTerm ::= shTerm * LSHIFT constTerm + shTerm ::= shTerm * LSHIFT term + (166) bitAndTerm ::= constShTerm BITAND shTerm * -State 263: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - (142) nonConstExpr ::= constExpr RSHIFT nonConstExpr * - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 142 - COMMA reduce 142 - LOR reduce 142 - LAND reduce 142 - EQ reduce 142 - LE reduce 142 - LT reduce 142 - GE reduce 142 - GT reduce 142 - NE reduce 142 - BITOR shift 66 -- dropped by precedence - BITOR reduce 142 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 142 - BITAND shift 67 -- dropped by precedence - BITAND reduce 142 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 142 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 142 - PLUS shift 74 - PLUS reduce 142 -- dropped by precedence - MINUS shift 73 - MINUS reduce 142 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 142 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 142 -- dropped by precedence - MOD shift 70 - MOD reduce 142 -- dropped by precedence - BITNOT reduce 142 - LPAREN shift 23 - LPAREN reduce 142 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 142 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 142 -- dropped by precedence - SEMICOLON reduce 142 - NAME reduce 142 - COLON reduce 142 - FUNCTION reduce 142 - RPAREN reduce 142 - LBRACKET reduce 142 - VAR reduce 142 - NUMBER reduce 142 - RSQBRACKET reduce 142 - KILLS reduce 142 - TRGCONST reduce 142 - L2V reduce 142 - MAPSTRING reduce 142 - UNIT reduce 142 - SWITCH reduce 142 - LOCATION reduce 142 - STATTXTTBL reduce 142 - VARRAY reduce 142 - STATIC reduce 142 - CONST reduce 142 - INC reduce 142 - DEC reduce 142 - ONCE reduce 142 - IF reduce 142 - SWITCHCASE reduce 142 - WHILE reduce 142 - FOR reduce 142 - FOREACH reduce 142 - CONTINUE reduce 142 - BREAK reduce 142 - RETURN reduce 142 - ACTIONNAME reduce 142 + QMARK reduce 166 + COMMA reduce 166 + LOR reduce 166 + LAND reduce 166 + LNOT reduce 166 + EQ reduce 166 + LE reduce 166 + LT reduce 166 + GE reduce 166 + GT reduce 166 + NE reduce 166 + BITOR reduce 166 + BITXOR reduce 166 + BITAND reduce 166 + LSHIFT shift 104 + RSHIFT shift 105 + PLUS reduce 166 + MINUS reduce 166 + BITNOT reduce 166 + LPAREN reduce 166 + SEMICOLON reduce 166 + NAME reduce 166 + COLON reduce 166 + RPAREN reduce 166 + LBRACKET reduce 166 + VAR reduce 166 + RSQBRACKET reduce 166 + L2V reduce 166 + STATIC reduce 166 + CONST reduce 166 + INC reduce 166 + DEC reduce 166 + ONCE reduce 166 + IF reduce 166 + SWITCHCASE reduce 166 + WHILE reduce 166 + FOR reduce 166 + FOREACH reduce 166 + CONTINUE reduce 166 + BREAK reduce 166 + RETURN reduce 166 + ACTIONNAME reduce 166 -State 264: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - (138) constExpr ::= constExpr LSHIFT constExpr * - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr +State 280: + term ::= term * PLUS constFactor + term ::= term * PLUS factor + term ::= term * MINUS constFactor + term ::= term * MINUS factor + (160) shTerm ::= constTerm LSHIFT term * - QMARK reduce 138 - COMMA reduce 138 - LOR reduce 138 - LAND reduce 138 - EQ shift 138 -- dropped by precedence - EQ reduce 138 - LE shift 125 -- dropped by precedence - LE reduce 138 - LT shift 123 -- dropped by precedence - LT reduce 138 - GE shift 124 -- dropped by precedence - GE reduce 138 - GT shift 122 -- dropped by precedence - GT reduce 138 - NE shift 126 -- dropped by precedence - NE reduce 138 - BITOR shift 102 -- dropped by precedence - BITOR reduce 138 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 138 - BITAND shift 103 -- dropped by precedence - BITAND reduce 138 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 138 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 138 - PLUS shift 113 - PLUS reduce 138 -- dropped by precedence - MINUS shift 112 - MINUS reduce 138 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 138 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 138 -- dropped by precedence - MOD shift 106 - MOD reduce 138 -- dropped by precedence - BITNOT reduce 138 - LPAREN reduce 138 - LSQBRACKET reduce 138 - PERIOD reduce 138 - SEMICOLON reduce 138 - NAME reduce 138 - COLON reduce 138 - FUNCTION reduce 138 - RPAREN reduce 138 - LBRACKET reduce 138 - VAR reduce 138 - NUMBER reduce 138 - RSQBRACKET reduce 138 - KILLS reduce 138 - TRGCONST reduce 138 - L2V reduce 138 - MAPSTRING reduce 138 - UNIT reduce 138 - SWITCH reduce 138 - LOCATION reduce 138 - STATTXTTBL reduce 138 - VARRAY reduce 138 - STATIC reduce 138 - CONST reduce 138 - INC reduce 138 - DEC reduce 138 - ONCE reduce 138 - IF reduce 138 - SWITCHCASE reduce 138 - WHILE reduce 138 - FOR reduce 138 - FOREACH reduce 138 - CONTINUE reduce 138 - BREAK reduce 138 - RETURN reduce 138 - ACTIONNAME reduce 138 + QMARK reduce 160 + COMMA reduce 160 + LOR reduce 160 + LAND reduce 160 + LNOT reduce 160 + EQ reduce 160 + LE reduce 160 + LT reduce 160 + GE reduce 160 + GT reduce 160 + NE reduce 160 + BITOR reduce 160 + BITXOR reduce 160 + BITAND reduce 160 + LSHIFT reduce 160 + RSHIFT reduce 160 + PLUS shift 114 + PLUS reduce 160 -- dropped by precedence + MINUS shift 113 + MINUS reduce 160 -- dropped by precedence + BITNOT reduce 160 + LPAREN reduce 160 + SEMICOLON reduce 160 + NAME reduce 160 + COLON reduce 160 + RPAREN reduce 160 + LBRACKET reduce 160 + VAR reduce 160 + RSQBRACKET reduce 160 + L2V reduce 160 + STATIC reduce 160 + CONST reduce 160 + INC reduce 160 + DEC reduce 160 + ONCE reduce 160 + IF reduce 160 + SWITCHCASE reduce 160 + WHILE reduce 160 + FOR reduce 160 + FOREACH reduce 160 + CONTINUE reduce 160 + BREAK reduce 160 + RETURN reduce 160 + ACTIONNAME reduce 160 -State 265: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - (139) nonConstExpr ::= constExpr LSHIFT nonConstExpr * - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 139 - COMMA reduce 139 - LOR reduce 139 - LAND reduce 139 - EQ reduce 139 - LE reduce 139 - LT reduce 139 - GE reduce 139 - GT reduce 139 - NE reduce 139 - BITOR shift 66 -- dropped by precedence - BITOR reduce 139 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 139 - BITAND shift 67 -- dropped by precedence - BITAND reduce 139 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 139 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 139 - PLUS shift 74 - PLUS reduce 139 -- dropped by precedence - MINUS shift 73 - MINUS reduce 139 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 139 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 139 -- dropped by precedence - MOD shift 70 - MOD reduce 139 -- dropped by precedence - BITNOT reduce 139 - LPAREN shift 23 - LPAREN reduce 139 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 139 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 139 -- dropped by precedence - SEMICOLON reduce 139 - NAME reduce 139 - COLON reduce 139 - FUNCTION reduce 139 - RPAREN reduce 139 - LBRACKET reduce 139 - VAR reduce 139 - NUMBER reduce 139 - RSQBRACKET reduce 139 - KILLS reduce 139 - TRGCONST reduce 139 - L2V reduce 139 - MAPSTRING reduce 139 - UNIT reduce 139 - SWITCH reduce 139 - LOCATION reduce 139 - STATTXTTBL reduce 139 - VARRAY reduce 139 - STATIC reduce 139 - CONST reduce 139 - INC reduce 139 - DEC reduce 139 - ONCE reduce 139 - IF reduce 139 - SWITCHCASE reduce 139 - WHILE reduce 139 - FOR reduce 139 - FOREACH reduce 139 - CONTINUE reduce 139 - BREAK reduce 139 - RETURN reduce 139 - ACTIONNAME reduce 139 +State 281: + term ::= term * PLUS constFactor + term ::= term * PLUS factor + term ::= term * MINUS constFactor + term ::= term * MINUS factor + (157) shTerm ::= constTerm RSHIFT term * -State 266: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - (135) constExpr ::= constExpr MOD constExpr * - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 157 + COMMA reduce 157 + LOR reduce 157 + LAND reduce 157 + LNOT reduce 157 + EQ reduce 157 + LE reduce 157 + LT reduce 157 + GE reduce 157 + GT reduce 157 + NE reduce 157 + BITOR reduce 157 + BITXOR reduce 157 + BITAND reduce 157 + LSHIFT reduce 157 + RSHIFT reduce 157 + PLUS shift 114 + PLUS reduce 157 -- dropped by precedence + MINUS shift 113 + MINUS reduce 157 -- dropped by precedence + BITNOT reduce 157 + LPAREN reduce 157 + SEMICOLON reduce 157 + NAME reduce 157 + COLON reduce 157 + RPAREN reduce 157 + LBRACKET reduce 157 + VAR reduce 157 + RSQBRACKET reduce 157 + L2V reduce 157 + STATIC reduce 157 + CONST reduce 157 + INC reduce 157 + DEC reduce 157 + ONCE reduce 157 + IF reduce 157 + SWITCHCASE reduce 157 + WHILE reduce 157 + FOR reduce 157 + FOREACH reduce 157 + CONTINUE reduce 157 + BREAK reduce 157 + RETURN reduce 157 + ACTIONNAME reduce 157 - QMARK reduce 135 - COMMA reduce 135 - LOR reduce 135 - LAND reduce 135 - EQ shift 138 -- dropped by precedence - EQ reduce 135 - LE shift 125 -- dropped by precedence - LE reduce 135 - LT shift 123 -- dropped by precedence - LT reduce 135 - GE shift 124 -- dropped by precedence - GE reduce 135 - GT shift 122 -- dropped by precedence - GT reduce 135 - NE shift 126 -- dropped by precedence - NE reduce 135 - BITOR shift 102 -- dropped by precedence - BITOR reduce 135 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 135 - BITAND shift 103 -- dropped by precedence - BITAND reduce 135 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 135 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 135 - PLUS shift 113 -- dropped by precedence - PLUS reduce 135 - MINUS shift 112 -- dropped by precedence - MINUS reduce 135 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 135 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 135 - MOD shift 106 -- dropped by precedence - MOD reduce 135 - BITNOT reduce 135 - LPAREN reduce 135 - LSQBRACKET reduce 135 - PERIOD reduce 135 - SEMICOLON reduce 135 - NAME reduce 135 - COLON reduce 135 - FUNCTION reduce 135 - RPAREN reduce 135 - LBRACKET reduce 135 - VAR reduce 135 - NUMBER reduce 135 - RSQBRACKET reduce 135 - KILLS reduce 135 - TRGCONST reduce 135 - L2V reduce 135 - MAPSTRING reduce 135 - UNIT reduce 135 - SWITCH reduce 135 - LOCATION reduce 135 - STATTXTTBL reduce 135 - VARRAY reduce 135 - STATIC reduce 135 - CONST reduce 135 - INC reduce 135 - DEC reduce 135 - ONCE reduce 135 - IF reduce 135 - SWITCHCASE reduce 135 - WHILE reduce 135 - FOR reduce 135 - FOREACH reduce 135 - CONTINUE reduce 135 - BREAK reduce 135 - RETURN reduce 135 - ACTIONNAME reduce 135 +State 282: + constTerm ::= constTerm * PLUS constFactor + constTerm ::= constTerm * MINUS constFactor + (155) constShTerm ::= constShTerm LSHIFT constTerm * + + QMARK reduce 155 + COMMA reduce 155 + LOR reduce 155 + LAND reduce 155 + LNOT reduce 155 + EQ reduce 155 + LE reduce 155 + LT reduce 155 + GE reduce 155 + GT reduce 155 + NE reduce 155 + BITOR reduce 155 + BITXOR reduce 155 + BITAND reduce 155 + LSHIFT reduce 155 + RSHIFT reduce 155 + PLUS shift 132 + PLUS reduce 155 -- dropped by precedence + MINUS shift 131 + MINUS reduce 155 -- dropped by precedence + BITNOT reduce 155 + LPAREN reduce 155 + SEMICOLON reduce 155 + NAME reduce 155 + COLON reduce 155 + RPAREN reduce 155 + LBRACKET reduce 155 + VAR reduce 155 + RSQBRACKET reduce 155 + L2V reduce 155 + STATIC reduce 155 + CONST reduce 155 + INC reduce 155 + DEC reduce 155 + ONCE reduce 155 + IF reduce 155 + SWITCHCASE reduce 155 + WHILE reduce 155 + FOR reduce 155 + FOREACH reduce 155 + CONTINUE reduce 155 + BREAK reduce 155 + RETURN reduce 155 + ACTIONNAME reduce 155 -State 267: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - (136) nonConstExpr ::= constExpr MOD nonConstExpr * - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 136 - COMMA reduce 136 - LOR reduce 136 - LAND reduce 136 - EQ reduce 136 - LE reduce 136 - LT reduce 136 - GE reduce 136 - GT reduce 136 - NE reduce 136 - BITOR shift 66 -- dropped by precedence - BITOR reduce 136 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 136 - BITAND shift 67 -- dropped by precedence - BITAND reduce 136 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 136 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 136 - PLUS shift 74 -- dropped by precedence - PLUS reduce 136 - MINUS shift 73 -- dropped by precedence - MINUS reduce 136 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 136 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 136 - MOD shift 70 -- dropped by precedence - MOD reduce 136 - BITNOT reduce 136 - LPAREN shift 23 - LPAREN reduce 136 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 136 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 136 -- dropped by precedence - SEMICOLON reduce 136 - NAME reduce 136 - COLON reduce 136 - FUNCTION reduce 136 - RPAREN reduce 136 - LBRACKET reduce 136 - VAR reduce 136 - NUMBER reduce 136 - RSQBRACKET reduce 136 - KILLS reduce 136 - TRGCONST reduce 136 - L2V reduce 136 - MAPSTRING reduce 136 - UNIT reduce 136 - SWITCH reduce 136 - LOCATION reduce 136 - STATTXTTBL reduce 136 - VARRAY reduce 136 - STATIC reduce 136 - CONST reduce 136 - INC reduce 136 - DEC reduce 136 - ONCE reduce 136 - IF reduce 136 - SWITCHCASE reduce 136 - WHILE reduce 136 - FOR reduce 136 - FOREACH reduce 136 - CONTINUE reduce 136 - BREAK reduce 136 - RETURN reduce 136 - ACTIONNAME reduce 136 +State 283: + constTerm ::= constTerm * PLUS constFactor + constTerm ::= constTerm * MINUS constFactor + (154) constShTerm ::= constShTerm RSHIFT constTerm * -State 268: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - (132) constExpr ::= constExpr DIVIDE constExpr * - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr + QMARK reduce 154 + COMMA reduce 154 + LOR reduce 154 + LAND reduce 154 + LNOT reduce 154 + EQ reduce 154 + LE reduce 154 + LT reduce 154 + GE reduce 154 + GT reduce 154 + NE reduce 154 + BITOR reduce 154 + BITXOR reduce 154 + BITAND reduce 154 + LSHIFT reduce 154 + RSHIFT reduce 154 + PLUS shift 132 + PLUS reduce 154 -- dropped by precedence + MINUS shift 131 + MINUS reduce 154 -- dropped by precedence + BITNOT reduce 154 + LPAREN reduce 154 + SEMICOLON reduce 154 + NAME reduce 154 + COLON reduce 154 + RPAREN reduce 154 + LBRACKET reduce 154 + VAR reduce 154 + RSQBRACKET reduce 154 + L2V reduce 154 + STATIC reduce 154 + CONST reduce 154 + INC reduce 154 + DEC reduce 154 + ONCE reduce 154 + IF reduce 154 + SWITCHCASE reduce 154 + WHILE reduce 154 + FOR reduce 154 + FOREACH reduce 154 + CONTINUE reduce 154 + BREAK reduce 154 + RETURN reduce 154 + ACTIONNAME reduce 154 - QMARK reduce 132 - COMMA reduce 132 - LOR reduce 132 - LAND reduce 132 - EQ shift 138 -- dropped by precedence - EQ reduce 132 - LE shift 125 -- dropped by precedence - LE reduce 132 - LT shift 123 -- dropped by precedence - LT reduce 132 - GE shift 124 -- dropped by precedence - GE reduce 132 - GT shift 122 -- dropped by precedence - GT reduce 132 - NE shift 126 -- dropped by precedence - NE reduce 132 - BITOR shift 102 -- dropped by precedence - BITOR reduce 132 - BITXOR shift 101 -- dropped by precedence - BITXOR reduce 132 - BITAND shift 103 -- dropped by precedence - BITAND reduce 132 - LSHIFT shift 105 -- dropped by precedence - LSHIFT reduce 132 - RSHIFT shift 104 -- dropped by precedence - RSHIFT reduce 132 - PLUS shift 113 -- dropped by precedence - PLUS reduce 132 - MINUS shift 112 -- dropped by precedence - MINUS reduce 132 - DIVIDE shift 107 -- dropped by precedence - DIVIDE reduce 132 - MULTIPLY shift 108 -- dropped by precedence - MULTIPLY reduce 132 - MOD shift 106 -- dropped by precedence - MOD reduce 132 - BITNOT reduce 132 - LPAREN reduce 132 - LSQBRACKET reduce 132 - PERIOD reduce 132 - SEMICOLON reduce 132 - NAME reduce 132 - COLON reduce 132 - FUNCTION reduce 132 - RPAREN reduce 132 - LBRACKET reduce 132 - VAR reduce 132 - NUMBER reduce 132 - RSQBRACKET reduce 132 - KILLS reduce 132 - TRGCONST reduce 132 - L2V reduce 132 - MAPSTRING reduce 132 - UNIT reduce 132 - SWITCH reduce 132 - LOCATION reduce 132 - STATTXTTBL reduce 132 - VARRAY reduce 132 - STATIC reduce 132 - CONST reduce 132 - INC reduce 132 - DEC reduce 132 - ONCE reduce 132 - IF reduce 132 - SWITCHCASE reduce 132 - WHILE reduce 132 - FOR reduce 132 - FOREACH reduce 132 - CONTINUE reduce 132 - BREAK reduce 132 - RETURN reduce 132 - ACTIONNAME reduce 132 +State 284: + constShTerm ::= constShTerm * RSHIFT constTerm + constShTerm ::= constShTerm * LSHIFT constTerm + (163) constBitAndTerm ::= constShTerm * + bitAndTerm ::= constShTerm * BITAND shTerm -State 269: - (152) nonConstExpr ::= nonConstExpr BITXOR expr * + QMARK reduce 163 + COMMA reduce 163 + LOR reduce 163 + LAND reduce 163 + LNOT reduce 163 + EQ reduce 163 + LE reduce 163 + LT reduce 163 + GE reduce 163 + GT reduce 163 + NE reduce 163 + BITOR reduce 163 + BITXOR reduce 163 + BITAND shift 98 + BITAND reduce 163 -- dropped by precedence + LSHIFT shift 127 + RSHIFT shift 128 + PLUS reduce 163 + MINUS reduce 163 + BITNOT reduce 163 + LPAREN reduce 163 + SEMICOLON reduce 163 + NAME reduce 163 + COLON reduce 163 + RPAREN reduce 163 + LBRACKET reduce 163 + VAR reduce 163 + RSQBRACKET reduce 163 + L2V reduce 163 + STATIC reduce 163 + CONST reduce 163 + INC reduce 163 + DEC reduce 163 + ONCE reduce 163 + IF reduce 163 + SWITCHCASE reduce 163 + WHILE reduce 163 + FOR reduce 163 + FOREACH reduce 163 + CONTINUE reduce 163 + BREAK reduce 163 + RETURN reduce 163 + ACTIONNAME reduce 163 - QMARK reduce 152 - COMMA reduce 152 - LOR reduce 152 - LAND reduce 152 - EQ reduce 152 - LE reduce 152 - LT reduce 152 - GE reduce 152 - GT reduce 152 - NE reduce 152 - BITOR reduce 152 - BITXOR reduce 152 - BITAND reduce 152 - LSHIFT reduce 152 - RSHIFT reduce 152 - PLUS reduce 152 - MINUS reduce 152 - DIVIDE reduce 152 - MULTIPLY reduce 152 - MOD reduce 152 - BITNOT reduce 152 - LPAREN reduce 152 - LSQBRACKET reduce 152 - PERIOD reduce 152 - SEMICOLON reduce 152 - NAME reduce 152 - COLON reduce 152 - FUNCTION reduce 152 - RPAREN reduce 152 - LBRACKET reduce 152 - VAR reduce 152 - NUMBER reduce 152 - RSQBRACKET reduce 152 - KILLS reduce 152 - TRGCONST reduce 152 - L2V reduce 152 - MAPSTRING reduce 152 - UNIT reduce 152 - SWITCH reduce 152 - LOCATION reduce 152 - STATTXTTBL reduce 152 - VARRAY reduce 152 - STATIC reduce 152 - CONST reduce 152 - INC reduce 152 - DEC reduce 152 - ONCE reduce 152 - IF reduce 152 - SWITCHCASE reduce 152 - WHILE reduce 152 - FOR reduce 152 - FOREACH reduce 152 - CONTINUE reduce 152 - BREAK reduce 152 - RETURN reduce 152 - ACTIONNAME reduce 152 +State 285: + term ::= term * PLUS constFactor + term ::= term * PLUS factor + term ::= term * MINUS constFactor + term ::= term * MINUS factor + (156) shTerm ::= term * + + QMARK reduce 156 + COMMA reduce 156 + LOR reduce 156 + LAND reduce 156 + LNOT reduce 156 + EQ reduce 156 + LE reduce 156 + LT reduce 156 + GE reduce 156 + GT reduce 156 + NE reduce 156 + BITOR reduce 156 + BITXOR reduce 156 + BITAND reduce 156 + LSHIFT reduce 156 + RSHIFT reduce 156 + PLUS shift 114 + PLUS reduce 156 -- dropped by precedence + MINUS shift 113 + MINUS reduce 156 -- dropped by precedence + BITNOT reduce 156 + LPAREN reduce 156 + SEMICOLON reduce 156 + NAME reduce 156 + COLON reduce 156 + RPAREN reduce 156 + LBRACKET reduce 156 + VAR reduce 156 + RSQBRACKET reduce 156 + L2V reduce 156 + STATIC reduce 156 + CONST reduce 156 + INC reduce 156 + DEC reduce 156 + ONCE reduce 156 + IF reduce 156 + SWITCHCASE reduce 156 + WHILE reduce 156 + FOR reduce 156 + FOREACH reduce 156 + CONTINUE reduce 156 + BREAK reduce 156 + RETURN reduce 156 + ACTIONNAME reduce 156 -State 270: - (149) nonConstExpr ::= nonConstExpr BITOR expr * +State 286: + constTerm ::= constTerm * PLUS constFactor + constTerm ::= constTerm * MINUS constFactor + (153) constShTerm ::= constTerm * + shTerm ::= constTerm * RSHIFT term + shTerm ::= constTerm * LSHIFT term - QMARK reduce 149 - COMMA reduce 149 - LOR reduce 149 - LAND reduce 149 - EQ reduce 149 - LE reduce 149 - LT reduce 149 - GE reduce 149 - GT reduce 149 - NE reduce 149 - BITOR reduce 149 - BITXOR reduce 149 - BITAND reduce 149 - LSHIFT reduce 149 - RSHIFT reduce 149 - PLUS reduce 149 - MINUS reduce 149 - DIVIDE reduce 149 - MULTIPLY reduce 149 - MOD reduce 149 - BITNOT reduce 149 - LPAREN reduce 149 - LSQBRACKET reduce 149 - PERIOD reduce 149 - SEMICOLON reduce 149 - NAME reduce 149 - COLON reduce 149 - FUNCTION reduce 149 - RPAREN reduce 149 - LBRACKET reduce 149 - VAR reduce 149 - NUMBER reduce 149 - RSQBRACKET reduce 149 - KILLS reduce 149 - TRGCONST reduce 149 - L2V reduce 149 - MAPSTRING reduce 149 - UNIT reduce 149 - SWITCH reduce 149 - LOCATION reduce 149 - STATTXTTBL reduce 149 - VARRAY reduce 149 - STATIC reduce 149 - CONST reduce 149 - INC reduce 149 - DEC reduce 149 - ONCE reduce 149 - IF reduce 149 - SWITCHCASE reduce 149 - WHILE reduce 149 - FOR reduce 149 - FOREACH reduce 149 - CONTINUE reduce 149 - BREAK reduce 149 - RETURN reduce 149 - ACTIONNAME reduce 149 + QMARK reduce 153 + COMMA reduce 153 + LOR reduce 153 + LAND reduce 153 + LNOT reduce 153 + EQ reduce 153 + LE reduce 153 + LT reduce 153 + GE reduce 153 + GT reduce 153 + NE reduce 153 + BITOR reduce 153 + BITXOR reduce 153 + BITAND reduce 153 + LSHIFT shift 109 + LSHIFT reduce 153 -- dropped by precedence + RSHIFT shift 110 + RSHIFT reduce 153 -- dropped by precedence + PLUS shift 132 + PLUS reduce 153 -- dropped by precedence + MINUS shift 131 + MINUS reduce 153 -- dropped by precedence + BITNOT reduce 153 + LPAREN reduce 153 + SEMICOLON reduce 153 + NAME reduce 153 + COLON reduce 153 + RPAREN reduce 153 + LBRACKET reduce 153 + VAR reduce 153 + RSQBRACKET reduce 153 + L2V reduce 153 + STATIC reduce 153 + CONST reduce 153 + INC reduce 153 + DEC reduce 153 + ONCE reduce 153 + IF reduce 153 + SWITCHCASE reduce 153 + WHILE reduce 153 + FOR reduce 153 + FOREACH reduce 153 + CONTINUE reduce 153 + BREAK reduce 153 + RETURN reduce 153 + ACTIONNAME reduce 153 -State 271: - (146) nonConstExpr ::= nonConstExpr BITAND expr * +State 287: + constBitAndTerm ::= constBitAndTerm * BITAND constShTerm + (169) constBitXorTerm ::= constBitAndTerm * - QMARK reduce 146 - COMMA reduce 146 - LOR reduce 146 - LAND reduce 146 - EQ reduce 146 - LE reduce 146 - LT reduce 146 - GE reduce 146 - GT reduce 146 - NE reduce 146 - BITOR reduce 146 - BITXOR reduce 146 - BITAND reduce 146 - LSHIFT reduce 146 - RSHIFT reduce 146 - PLUS reduce 146 - MINUS reduce 146 - DIVIDE reduce 146 - MULTIPLY reduce 146 - MOD reduce 146 - BITNOT reduce 146 - LPAREN reduce 146 - LSQBRACKET reduce 146 - PERIOD reduce 146 - SEMICOLON reduce 146 - NAME reduce 146 - COLON reduce 146 - FUNCTION reduce 146 - RPAREN reduce 146 - LBRACKET reduce 146 - VAR reduce 146 - NUMBER reduce 146 - RSQBRACKET reduce 146 - KILLS reduce 146 - TRGCONST reduce 146 - L2V reduce 146 - MAPSTRING reduce 146 - UNIT reduce 146 - SWITCH reduce 146 - LOCATION reduce 146 - STATTXTTBL reduce 146 - VARRAY reduce 146 - STATIC reduce 146 - CONST reduce 146 - INC reduce 146 - DEC reduce 146 - ONCE reduce 146 - IF reduce 146 - SWITCHCASE reduce 146 - WHILE reduce 146 - FOR reduce 146 - FOREACH reduce 146 - CONTINUE reduce 146 - BREAK reduce 146 - RETURN reduce 146 - ACTIONNAME reduce 146 + QMARK reduce 169 + COMMA reduce 169 + LOR reduce 169 + LAND reduce 169 + LNOT reduce 169 + EQ reduce 169 + LE reduce 169 + LT reduce 169 + GE reduce 169 + GT reduce 169 + NE reduce 169 + BITOR reduce 169 + BITXOR reduce 169 + BITAND shift 118 + PLUS reduce 169 + MINUS reduce 169 + BITNOT reduce 169 + LPAREN reduce 169 + SEMICOLON reduce 169 + NAME reduce 169 + COLON reduce 169 + RPAREN reduce 169 + LBRACKET reduce 169 + VAR reduce 169 + RSQBRACKET reduce 169 + L2V reduce 169 + STATIC reduce 169 + CONST reduce 169 + INC reduce 169 + DEC reduce 169 + ONCE reduce 169 + IF reduce 169 + SWITCHCASE reduce 169 + WHILE reduce 169 + FOR reduce 169 + FOREACH reduce 169 + CONTINUE reduce 169 + BREAK reduce 169 + RETURN reduce 169 + ACTIONNAME reduce 169 -State 272: - (143) nonConstExpr ::= nonConstExpr RSHIFT expr * +State 288: + bitAndTerm ::= bitAndTerm * BITAND shTerm + bitAndTerm ::= bitAndTerm * BITAND constShTerm + (174) bitXorTerm ::= bitXorTerm BITXOR bitAndTerm * - QMARK reduce 143 - COMMA reduce 143 - LOR reduce 143 - LAND reduce 143 - EQ reduce 143 - LE reduce 143 - LT reduce 143 - GE reduce 143 - GT reduce 143 - NE reduce 143 - BITOR reduce 143 - BITXOR reduce 143 - BITAND reduce 143 - LSHIFT reduce 143 - RSHIFT reduce 143 - PLUS reduce 143 - MINUS reduce 143 - DIVIDE reduce 143 - MULTIPLY reduce 143 - MOD reduce 143 - BITNOT reduce 143 - LPAREN reduce 143 - LSQBRACKET reduce 143 - PERIOD reduce 143 - SEMICOLON reduce 143 - NAME reduce 143 - COLON reduce 143 - FUNCTION reduce 143 - RPAREN reduce 143 - LBRACKET reduce 143 - VAR reduce 143 - NUMBER reduce 143 - RSQBRACKET reduce 143 - KILLS reduce 143 - TRGCONST reduce 143 - L2V reduce 143 - MAPSTRING reduce 143 - UNIT reduce 143 - SWITCH reduce 143 - LOCATION reduce 143 - STATTXTTBL reduce 143 - VARRAY reduce 143 - STATIC reduce 143 - CONST reduce 143 - INC reduce 143 - DEC reduce 143 - ONCE reduce 143 - IF reduce 143 - SWITCHCASE reduce 143 - WHILE reduce 143 - FOR reduce 143 - FOREACH reduce 143 - CONTINUE reduce 143 - BREAK reduce 143 - RETURN reduce 143 - ACTIONNAME reduce 143 + QMARK reduce 174 + COMMA reduce 174 + LOR reduce 174 + LAND reduce 174 + LNOT reduce 174 + EQ reduce 174 + LE reduce 174 + LT reduce 174 + GE reduce 174 + GT reduce 174 + NE reduce 174 + BITOR reduce 174 + BITXOR reduce 174 + BITAND shift 96 + PLUS reduce 174 + MINUS reduce 174 + BITNOT reduce 174 + LPAREN reduce 174 + SEMICOLON reduce 174 + NAME reduce 174 + COLON reduce 174 + RPAREN reduce 174 + LBRACKET reduce 174 + VAR reduce 174 + RSQBRACKET reduce 174 + L2V reduce 174 + STATIC reduce 174 + CONST reduce 174 + INC reduce 174 + DEC reduce 174 + ONCE reduce 174 + IF reduce 174 + SWITCHCASE reduce 174 + WHILE reduce 174 + FOR reduce 174 + FOREACH reduce 174 + CONTINUE reduce 174 + BREAK reduce 174 + RETURN reduce 174 + ACTIONNAME reduce 174 + +State 289: + constBitAndTerm ::= constBitAndTerm * BITAND constShTerm + (173) bitXorTerm ::= bitXorTerm BITXOR constBitAndTerm * + + QMARK reduce 173 + COMMA reduce 173 + LOR reduce 173 + LAND reduce 173 + LNOT reduce 173 + EQ reduce 173 + LE reduce 173 + LT reduce 173 + GE reduce 173 + GT reduce 173 + NE reduce 173 + BITOR reduce 173 + BITXOR reduce 173 + BITAND shift 118 + PLUS reduce 173 + MINUS reduce 173 + BITNOT reduce 173 + LPAREN reduce 173 + SEMICOLON reduce 173 + NAME reduce 173 + COLON reduce 173 + RPAREN reduce 173 + LBRACKET reduce 173 + VAR reduce 173 + RSQBRACKET reduce 173 + L2V reduce 173 + STATIC reduce 173 + CONST reduce 173 + INC reduce 173 + DEC reduce 173 + ONCE reduce 173 + IF reduce 173 + SWITCHCASE reduce 173 + WHILE reduce 173 + FOR reduce 173 + FOREACH reduce 173 + CONTINUE reduce 173 + BREAK reduce 173 + RETURN reduce 173 + ACTIONNAME reduce 173 -State 273: - (140) nonConstExpr ::= nonConstExpr LSHIFT expr * +State 290: + constBitAndTerm ::= constBitAndTerm * BITAND constShTerm + (170) constBitXorTerm ::= constBitXorTerm BITXOR constBitAndTerm * - QMARK reduce 140 - COMMA reduce 140 - LOR reduce 140 - LAND reduce 140 - EQ reduce 140 - LE reduce 140 - LT reduce 140 - GE reduce 140 - GT reduce 140 - NE reduce 140 - BITOR reduce 140 - BITXOR reduce 140 - BITAND reduce 140 - LSHIFT reduce 140 - RSHIFT reduce 140 - PLUS reduce 140 - MINUS reduce 140 - DIVIDE reduce 140 - MULTIPLY reduce 140 - MOD reduce 140 - BITNOT reduce 140 - LPAREN reduce 140 - LSQBRACKET reduce 140 - PERIOD reduce 140 - SEMICOLON reduce 140 - NAME reduce 140 - COLON reduce 140 - FUNCTION reduce 140 - RPAREN reduce 140 - LBRACKET reduce 140 - VAR reduce 140 - NUMBER reduce 140 - RSQBRACKET reduce 140 - KILLS reduce 140 - TRGCONST reduce 140 - L2V reduce 140 - MAPSTRING reduce 140 - UNIT reduce 140 - SWITCH reduce 140 - LOCATION reduce 140 - STATTXTTBL reduce 140 - VARRAY reduce 140 - STATIC reduce 140 - CONST reduce 140 - INC reduce 140 - DEC reduce 140 - ONCE reduce 140 - IF reduce 140 - SWITCHCASE reduce 140 - WHILE reduce 140 - FOR reduce 140 - FOREACH reduce 140 - CONTINUE reduce 140 - BREAK reduce 140 - RETURN reduce 140 - ACTIONNAME reduce 140 + QMARK reduce 170 + COMMA reduce 170 + LOR reduce 170 + LAND reduce 170 + LNOT reduce 170 + EQ reduce 170 + LE reduce 170 + LT reduce 170 + GE reduce 170 + GT reduce 170 + NE reduce 170 + BITOR reduce 170 + BITXOR reduce 170 + BITAND shift 118 + PLUS reduce 170 + MINUS reduce 170 + BITNOT reduce 170 + LPAREN reduce 170 + SEMICOLON reduce 170 + NAME reduce 170 + COLON reduce 170 + RPAREN reduce 170 + LBRACKET reduce 170 + VAR reduce 170 + RSQBRACKET reduce 170 + L2V reduce 170 + STATIC reduce 170 + CONST reduce 170 + INC reduce 170 + DEC reduce 170 + ONCE reduce 170 + IF reduce 170 + SWITCHCASE reduce 170 + WHILE reduce 170 + FOR reduce 170 + FOREACH reduce 170 + CONTINUE reduce 170 + BREAK reduce 170 + RETURN reduce 170 + ACTIONNAME reduce 170 -State 274: - (279) constExpr ::= ACTIONNAME LPAREN fArgs RPAREN * - - QMARK reduce 279 - COMMA reduce 279 - LOR reduce 279 - LAND reduce 279 - EQ reduce 279 - LE reduce 279 - LT reduce 279 - GE reduce 279 - GT reduce 279 - NE reduce 279 - BITOR reduce 279 - BITXOR reduce 279 - BITAND reduce 279 - LSHIFT reduce 279 - RSHIFT reduce 279 - PLUS reduce 279 - MINUS reduce 279 - DIVIDE reduce 279 - MULTIPLY reduce 279 - MOD reduce 279 - BITNOT reduce 279 - LPAREN reduce 279 - LSQBRACKET reduce 279 - PERIOD reduce 279 - SEMICOLON reduce 279 - NAME reduce 279 - COLON reduce 279 - FUNCTION reduce 279 - RPAREN reduce 279 - LBRACKET reduce 279 - VAR reduce 279 - NUMBER reduce 279 - RSQBRACKET reduce 279 - KILLS reduce 279 - TRGCONST reduce 279 - L2V reduce 279 - MAPSTRING reduce 279 - UNIT reduce 279 - SWITCH reduce 279 - LOCATION reduce 279 - STATTXTTBL reduce 279 - VARRAY reduce 279 - STATIC reduce 279 - CONST reduce 279 - INC reduce 279 - DEC reduce 279 - ONCE reduce 279 - IF reduce 279 - SWITCHCASE reduce 279 - WHILE reduce 279 - FOR reduce 279 - FOREACH reduce 279 - CONTINUE reduce 279 - BREAK reduce 279 - RETURN reduce 279 - ACTIONNAME reduce 279 +State 291: + bitAndTerm ::= bitAndTerm * BITAND shTerm + bitAndTerm ::= bitAndTerm * BITAND constShTerm + (171) bitXorTerm ::= bitAndTerm * -State 275: - (137) nonConstExpr ::= nonConstExpr MOD expr * + QMARK reduce 171 + COMMA reduce 171 + LOR reduce 171 + LAND reduce 171 + LNOT reduce 171 + EQ reduce 171 + LE reduce 171 + LT reduce 171 + GE reduce 171 + GT reduce 171 + NE reduce 171 + BITOR reduce 171 + BITXOR reduce 171 + BITAND shift 96 + PLUS reduce 171 + MINUS reduce 171 + BITNOT reduce 171 + LPAREN reduce 171 + SEMICOLON reduce 171 + NAME reduce 171 + COLON reduce 171 + RPAREN reduce 171 + LBRACKET reduce 171 + VAR reduce 171 + RSQBRACKET reduce 171 + L2V reduce 171 + STATIC reduce 171 + CONST reduce 171 + INC reduce 171 + DEC reduce 171 + ONCE reduce 171 + IF reduce 171 + SWITCHCASE reduce 171 + WHILE reduce 171 + FOR reduce 171 + FOREACH reduce 171 + CONTINUE reduce 171 + BREAK reduce 171 + RETURN reduce 171 + ACTIONNAME reduce 171 - QMARK reduce 137 - COMMA reduce 137 - LOR reduce 137 - LAND reduce 137 - EQ reduce 137 - LE reduce 137 - LT reduce 137 - GE reduce 137 - GT reduce 137 - NE reduce 137 - BITOR reduce 137 - BITXOR reduce 137 - BITAND reduce 137 - LSHIFT reduce 137 - RSHIFT reduce 137 - PLUS reduce 137 - MINUS reduce 137 - DIVIDE reduce 137 - MULTIPLY reduce 137 - MOD reduce 137 - BITNOT reduce 137 - LPAREN reduce 137 - LSQBRACKET reduce 137 - PERIOD reduce 137 - SEMICOLON reduce 137 - NAME reduce 137 - COLON reduce 137 - FUNCTION reduce 137 - RPAREN reduce 137 - LBRACKET reduce 137 - VAR reduce 137 - NUMBER reduce 137 - RSQBRACKET reduce 137 - KILLS reduce 137 - TRGCONST reduce 137 - L2V reduce 137 - MAPSTRING reduce 137 - UNIT reduce 137 - SWITCH reduce 137 - LOCATION reduce 137 - STATTXTTBL reduce 137 - VARRAY reduce 137 - STATIC reduce 137 - CONST reduce 137 - INC reduce 137 - DEC reduce 137 - ONCE reduce 137 - IF reduce 137 - SWITCHCASE reduce 137 - WHILE reduce 137 - FOR reduce 137 - FOREACH reduce 137 - CONTINUE reduce 137 - BREAK reduce 137 - RETURN reduce 137 - ACTIONNAME reduce 137 +State 292: + bitAndTerm ::= bitAndTerm * BITAND shTerm + bitAndTerm ::= bitAndTerm * BITAND constShTerm + (172) bitXorTerm ::= constBitAndTerm BITXOR bitAndTerm * -State 276: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - (133) nonConstExpr ::= constExpr DIVIDE nonConstExpr * - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 133 - COMMA reduce 133 - LOR reduce 133 - LAND reduce 133 - EQ reduce 133 - LE reduce 133 - LT reduce 133 - GE reduce 133 - GT reduce 133 - NE reduce 133 - BITOR shift 66 -- dropped by precedence - BITOR reduce 133 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 133 - BITAND shift 67 -- dropped by precedence - BITAND reduce 133 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 133 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 133 - PLUS shift 74 -- dropped by precedence - PLUS reduce 133 - MINUS shift 73 -- dropped by precedence - MINUS reduce 133 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 133 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 133 - MOD shift 70 -- dropped by precedence - MOD reduce 133 - BITNOT reduce 133 - LPAREN shift 23 - LPAREN reduce 133 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 133 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 133 -- dropped by precedence - SEMICOLON reduce 133 - NAME reduce 133 - COLON reduce 133 - FUNCTION reduce 133 - RPAREN reduce 133 - LBRACKET reduce 133 - VAR reduce 133 - NUMBER reduce 133 - RSQBRACKET reduce 133 - KILLS reduce 133 - TRGCONST reduce 133 - L2V reduce 133 - MAPSTRING reduce 133 - UNIT reduce 133 - SWITCH reduce 133 - LOCATION reduce 133 - STATTXTTBL reduce 133 - VARRAY reduce 133 - STATIC reduce 133 - CONST reduce 133 - INC reduce 133 - DEC reduce 133 - ONCE reduce 133 - IF reduce 133 - SWITCHCASE reduce 133 - WHILE reduce 133 - FOR reduce 133 - FOREACH reduce 133 - CONTINUE reduce 133 - BREAK reduce 133 - RETURN reduce 133 - ACTIONNAME reduce 133 + QMARK reduce 172 + COMMA reduce 172 + LOR reduce 172 + LAND reduce 172 + LNOT reduce 172 + EQ reduce 172 + LE reduce 172 + LT reduce 172 + GE reduce 172 + GT reduce 172 + NE reduce 172 + BITOR reduce 172 + BITXOR reduce 172 + BITAND shift 96 + PLUS reduce 172 + MINUS reduce 172 + BITNOT reduce 172 + LPAREN reduce 172 + SEMICOLON reduce 172 + NAME reduce 172 + COLON reduce 172 + RPAREN reduce 172 + LBRACKET reduce 172 + VAR reduce 172 + RSQBRACKET reduce 172 + L2V reduce 172 + STATIC reduce 172 + CONST reduce 172 + INC reduce 172 + DEC reduce 172 + ONCE reduce 172 + IF reduce 172 + SWITCHCASE reduce 172 + WHILE reduce 172 + FOR reduce 172 + FOREACH reduce 172 + CONTINUE reduce 172 + BREAK reduce 172 + RETURN reduce 172 + ACTIONNAME reduce 172 -State 277: - (134) nonConstExpr ::= nonConstExpr DIVIDE expr * +State 293: + constBitAndTerm ::= constBitAndTerm * BITAND constShTerm + (169) constBitXorTerm ::= constBitAndTerm * + bitXorTerm ::= constBitAndTerm * BITXOR bitAndTerm - QMARK reduce 134 - COMMA reduce 134 - LOR reduce 134 - LAND reduce 134 - EQ reduce 134 - LE reduce 134 - LT reduce 134 - GE reduce 134 - GT reduce 134 - NE reduce 134 - BITOR reduce 134 - BITXOR reduce 134 - BITAND reduce 134 - LSHIFT reduce 134 - RSHIFT reduce 134 - PLUS reduce 134 - MINUS reduce 134 - DIVIDE reduce 134 - MULTIPLY reduce 134 - MOD reduce 134 - BITNOT reduce 134 - LPAREN reduce 134 - LSQBRACKET reduce 134 - PERIOD reduce 134 - SEMICOLON reduce 134 - NAME reduce 134 - COLON reduce 134 - FUNCTION reduce 134 - RPAREN reduce 134 - LBRACKET reduce 134 - VAR reduce 134 - NUMBER reduce 134 - RSQBRACKET reduce 134 - KILLS reduce 134 - TRGCONST reduce 134 - L2V reduce 134 - MAPSTRING reduce 134 - UNIT reduce 134 - SWITCH reduce 134 - LOCATION reduce 134 - STATTXTTBL reduce 134 - VARRAY reduce 134 - STATIC reduce 134 - CONST reduce 134 - INC reduce 134 - DEC reduce 134 - ONCE reduce 134 - IF reduce 134 - SWITCHCASE reduce 134 - WHILE reduce 134 - FOR reduce 134 - FOREACH reduce 134 - CONTINUE reduce 134 - BREAK reduce 134 - RETURN reduce 134 - ACTIONNAME reduce 134 + QMARK reduce 169 + COMMA reduce 169 + LOR reduce 169 + LAND reduce 169 + LNOT reduce 169 + EQ reduce 169 + LE reduce 169 + LT reduce 169 + GE reduce 169 + GT reduce 169 + NE reduce 169 + BITOR reduce 169 + BITXOR shift 95 + BITXOR reduce 169 -- dropped by precedence + BITAND shift 118 + PLUS reduce 169 + MINUS reduce 169 + BITNOT reduce 169 + LPAREN reduce 169 + SEMICOLON reduce 169 + NAME reduce 169 + COLON reduce 169 + RPAREN reduce 169 + LBRACKET reduce 169 + VAR reduce 169 + RSQBRACKET reduce 169 + L2V reduce 169 + STATIC reduce 169 + CONST reduce 169 + INC reduce 169 + DEC reduce 169 + ONCE reduce 169 + IF reduce 169 + SWITCHCASE reduce 169 + WHILE reduce 169 + FOR reduce 169 + FOREACH reduce 169 + CONTINUE reduce 169 + BREAK reduce 169 + RETURN reduce 169 + ACTIONNAME reduce 169 -State 278: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - (130) nonConstExpr ::= constExpr MULTIPLY nonConstExpr * - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 130 - COMMA reduce 130 - LOR reduce 130 - LAND reduce 130 - EQ reduce 130 - LE reduce 130 - LT reduce 130 - GE reduce 130 - GT reduce 130 - NE reduce 130 - BITOR shift 66 -- dropped by precedence - BITOR reduce 130 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 130 - BITAND shift 67 -- dropped by precedence - BITAND reduce 130 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 130 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 130 - PLUS shift 74 -- dropped by precedence - PLUS reduce 130 - MINUS shift 73 -- dropped by precedence - MINUS reduce 130 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 130 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 130 - MOD shift 70 -- dropped by precedence - MOD reduce 130 - BITNOT reduce 130 - LPAREN shift 23 - LPAREN reduce 130 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 130 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 130 -- dropped by precedence - SEMICOLON reduce 130 - NAME reduce 130 - COLON reduce 130 - FUNCTION reduce 130 - RPAREN reduce 130 - LBRACKET reduce 130 - VAR reduce 130 - NUMBER reduce 130 - RSQBRACKET reduce 130 - KILLS reduce 130 - TRGCONST reduce 130 - L2V reduce 130 - MAPSTRING reduce 130 - UNIT reduce 130 - SWITCH reduce 130 - LOCATION reduce 130 - STATTXTTBL reduce 130 - VARRAY reduce 130 - STATIC reduce 130 - CONST reduce 130 - INC reduce 130 - DEC reduce 130 - ONCE reduce 130 - IF reduce 130 - SWITCHCASE reduce 130 - WHILE reduce 130 - FOR reduce 130 - FOREACH reduce 130 - CONTINUE reduce 130 - BREAK reduce 130 - RETURN reduce 130 - ACTIONNAME reduce 130 +State 294: + bitXorTerm ::= bitXorTerm * BITXOR constBitAndTerm + bitXorTerm ::= bitXorTerm * BITXOR bitAndTerm + (179) bitOrTerm ::= bitOrTerm BITOR bitXorTerm * -State 279: - (131) nonConstExpr ::= nonConstExpr MULTIPLY expr * + QMARK reduce 179 + COMMA reduce 179 + LOR reduce 179 + LAND reduce 179 + LNOT reduce 179 + EQ reduce 179 + LE reduce 179 + LT reduce 179 + GE reduce 179 + GT reduce 179 + NE reduce 179 + BITOR reduce 179 + BITXOR shift 93 + PLUS reduce 179 + MINUS reduce 179 + BITNOT reduce 179 + LPAREN reduce 179 + SEMICOLON reduce 179 + NAME reduce 179 + COLON reduce 179 + RPAREN reduce 179 + LBRACKET reduce 179 + VAR reduce 179 + RSQBRACKET reduce 179 + L2V reduce 179 + STATIC reduce 179 + CONST reduce 179 + INC reduce 179 + DEC reduce 179 + ONCE reduce 179 + IF reduce 179 + SWITCHCASE reduce 179 + WHILE reduce 179 + FOR reduce 179 + FOREACH reduce 179 + CONTINUE reduce 179 + BREAK reduce 179 + RETURN reduce 179 + ACTIONNAME reduce 179 - QMARK reduce 131 - COMMA reduce 131 - LOR reduce 131 - LAND reduce 131 - EQ reduce 131 - LE reduce 131 - LT reduce 131 - GE reduce 131 - GT reduce 131 - NE reduce 131 - BITOR reduce 131 - BITXOR reduce 131 - BITAND reduce 131 - LSHIFT reduce 131 - RSHIFT reduce 131 - PLUS reduce 131 - MINUS reduce 131 - DIVIDE reduce 131 - MULTIPLY reduce 131 - MOD reduce 131 - BITNOT reduce 131 - LPAREN reduce 131 - LSQBRACKET reduce 131 - PERIOD reduce 131 - SEMICOLON reduce 131 - NAME reduce 131 - COLON reduce 131 - FUNCTION reduce 131 - RPAREN reduce 131 - LBRACKET reduce 131 - VAR reduce 131 - NUMBER reduce 131 - RSQBRACKET reduce 131 - KILLS reduce 131 - TRGCONST reduce 131 - L2V reduce 131 - MAPSTRING reduce 131 - UNIT reduce 131 - SWITCH reduce 131 - LOCATION reduce 131 - STATTXTTBL reduce 131 - VARRAY reduce 131 - STATIC reduce 131 - CONST reduce 131 - INC reduce 131 - DEC reduce 131 - ONCE reduce 131 - IF reduce 131 - SWITCHCASE reduce 131 - WHILE reduce 131 - FOR reduce 131 - FOREACH reduce 131 - CONTINUE reduce 131 - BREAK reduce 131 - RETURN reduce 131 - ACTIONNAME reduce 131 +State 295: + constBitXorTerm ::= constBitXorTerm * BITXOR constBitAndTerm + (180) bitOrTerm ::= bitOrTerm BITOR constBitXorTerm * + + QMARK reduce 180 + COMMA reduce 180 + LOR reduce 180 + LAND reduce 180 + LNOT reduce 180 + EQ reduce 180 + LE reduce 180 + LT reduce 180 + GE reduce 180 + GT reduce 180 + NE reduce 180 + BITOR reduce 180 + BITXOR shift 115 + PLUS reduce 180 + MINUS reduce 180 + BITNOT reduce 180 + LPAREN reduce 180 + SEMICOLON reduce 180 + NAME reduce 180 + COLON reduce 180 + RPAREN reduce 180 + LBRACKET reduce 180 + VAR reduce 180 + RSQBRACKET reduce 180 + L2V reduce 180 + STATIC reduce 180 + CONST reduce 180 + INC reduce 180 + DEC reduce 180 + ONCE reduce 180 + IF reduce 180 + SWITCHCASE reduce 180 + WHILE reduce 180 + FOR reduce 180 + FOREACH reduce 180 + CONTINUE reduce 180 + BREAK reduce 180 + RETURN reduce 180 + ACTIONNAME reduce 180 + +State 296: + constBitXorTerm ::= constBitXorTerm * BITXOR constBitAndTerm + (176) constBitOrTerm ::= constBitOrTerm BITOR constBitXorTerm * + + QMARK reduce 176 + COMMA reduce 176 + LOR reduce 176 + LAND reduce 176 + LNOT reduce 176 + EQ reduce 176 + LE reduce 176 + LT reduce 176 + GE reduce 176 + GT reduce 176 + NE reduce 176 + BITOR reduce 176 + BITXOR shift 115 + PLUS reduce 176 + MINUS reduce 176 + BITNOT reduce 176 + LPAREN reduce 176 + SEMICOLON reduce 176 + NAME reduce 176 + COLON reduce 176 + RPAREN reduce 176 + LBRACKET reduce 176 + VAR reduce 176 + RSQBRACKET reduce 176 + L2V reduce 176 + STATIC reduce 176 + CONST reduce 176 + INC reduce 176 + DEC reduce 176 + ONCE reduce 176 + IF reduce 176 + SWITCHCASE reduce 176 + WHILE reduce 176 + FOR reduce 176 + FOREACH reduce 176 + CONTINUE reduce 176 + BREAK reduce 176 + RETURN reduce 176 + ACTIONNAME reduce 176 -State 280: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (158) nonConstExpr ::= BITNOT nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 158 - COMMA reduce 158 - LOR reduce 158 - LAND reduce 158 - EQ reduce 158 - LE reduce 158 - LT reduce 158 - GE reduce 158 - GT reduce 158 - NE reduce 158 - BITOR shift 66 -- dropped by precedence - BITOR reduce 158 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 158 - BITAND shift 67 -- dropped by precedence - BITAND reduce 158 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 158 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 158 - PLUS shift 74 -- dropped by precedence - PLUS reduce 158 - MINUS shift 73 -- dropped by precedence - MINUS reduce 158 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 158 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 158 - MOD shift 70 -- dropped by precedence - MOD reduce 158 - BITNOT reduce 158 - LPAREN shift 23 - LPAREN reduce 158 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 158 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 158 -- dropped by precedence - SEMICOLON reduce 158 - NAME reduce 158 - COLON reduce 158 - FUNCTION reduce 158 - RPAREN reduce 158 - LBRACKET reduce 158 - VAR reduce 158 - NUMBER reduce 158 - RSQBRACKET reduce 158 - KILLS reduce 158 - TRGCONST reduce 158 - L2V reduce 158 - MAPSTRING reduce 158 - UNIT reduce 158 - SWITCH reduce 158 - LOCATION reduce 158 - STATTXTTBL reduce 158 - VARRAY reduce 158 - STATIC reduce 158 - CONST reduce 158 - INC reduce 158 - DEC reduce 158 - ONCE reduce 158 - IF reduce 158 - SWITCHCASE reduce 158 - WHILE reduce 158 - FOR reduce 158 - FOREACH reduce 158 - CONTINUE reduce 158 - BREAK reduce 158 - RETURN reduce 158 - ACTIONNAME reduce 158 +State 297: + bitXorTerm ::= bitXorTerm * BITXOR constBitAndTerm + bitXorTerm ::= bitXorTerm * BITXOR bitAndTerm + (177) bitOrTerm ::= bitXorTerm * -State 281: - (128) nonConstExpr ::= nonConstExpr MINUS expr * + QMARK reduce 177 + COMMA reduce 177 + LOR reduce 177 + LAND reduce 177 + LNOT reduce 177 + EQ reduce 177 + LE reduce 177 + LT reduce 177 + GE reduce 177 + GT reduce 177 + NE reduce 177 + BITOR reduce 177 + BITXOR shift 93 + PLUS reduce 177 + MINUS reduce 177 + BITNOT reduce 177 + LPAREN reduce 177 + SEMICOLON reduce 177 + NAME reduce 177 + COLON reduce 177 + RPAREN reduce 177 + LBRACKET reduce 177 + VAR reduce 177 + RSQBRACKET reduce 177 + L2V reduce 177 + STATIC reduce 177 + CONST reduce 177 + INC reduce 177 + DEC reduce 177 + ONCE reduce 177 + IF reduce 177 + SWITCHCASE reduce 177 + WHILE reduce 177 + FOR reduce 177 + FOREACH reduce 177 + CONTINUE reduce 177 + BREAK reduce 177 + RETURN reduce 177 + ACTIONNAME reduce 177 - QMARK reduce 128 - COMMA reduce 128 - LOR reduce 128 - LAND reduce 128 - EQ reduce 128 - LE reduce 128 - LT reduce 128 - GE reduce 128 - GT reduce 128 - NE reduce 128 - BITOR reduce 128 - BITXOR reduce 128 - BITAND reduce 128 - LSHIFT reduce 128 - RSHIFT reduce 128 - PLUS reduce 128 - MINUS reduce 128 - DIVIDE reduce 128 - MULTIPLY reduce 128 - MOD reduce 128 - BITNOT reduce 128 - LPAREN reduce 128 - LSQBRACKET reduce 128 - PERIOD reduce 128 - SEMICOLON reduce 128 - NAME reduce 128 - COLON reduce 128 - FUNCTION reduce 128 - RPAREN reduce 128 - LBRACKET reduce 128 - VAR reduce 128 - NUMBER reduce 128 - RSQBRACKET reduce 128 - KILLS reduce 128 - TRGCONST reduce 128 - L2V reduce 128 - MAPSTRING reduce 128 - UNIT reduce 128 - SWITCH reduce 128 - LOCATION reduce 128 - STATTXTTBL reduce 128 - VARRAY reduce 128 - STATIC reduce 128 - CONST reduce 128 - INC reduce 128 - DEC reduce 128 - ONCE reduce 128 - IF reduce 128 - SWITCHCASE reduce 128 - WHILE reduce 128 - FOR reduce 128 - FOREACH reduce 128 - CONTINUE reduce 128 - BREAK reduce 128 - RETURN reduce 128 - ACTIONNAME reduce 128 +State 298: + bitXorTerm ::= bitXorTerm * BITXOR constBitAndTerm + bitXorTerm ::= bitXorTerm * BITXOR bitAndTerm + (178) bitOrTerm ::= constBitXorTerm BITOR bitXorTerm * -State 282: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (156) nonConstExpr ::= MINUS nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 156 - COMMA reduce 156 - LOR reduce 156 - LAND reduce 156 - EQ reduce 156 - LE reduce 156 - LT reduce 156 - GE reduce 156 - GT reduce 156 - NE reduce 156 - BITOR shift 66 -- dropped by precedence - BITOR reduce 156 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 156 - BITAND shift 67 -- dropped by precedence - BITAND reduce 156 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 156 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 156 - PLUS shift 74 -- dropped by precedence - PLUS reduce 156 - MINUS shift 73 -- dropped by precedence - MINUS reduce 156 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 156 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 156 - MOD shift 70 -- dropped by precedence - MOD reduce 156 - BITNOT reduce 156 - LPAREN shift 23 - LPAREN reduce 156 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 156 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 156 -- dropped by precedence - SEMICOLON reduce 156 - NAME reduce 156 - COLON reduce 156 - FUNCTION reduce 156 - RPAREN reduce 156 - LBRACKET reduce 156 - VAR reduce 156 - NUMBER reduce 156 - RSQBRACKET reduce 156 - KILLS reduce 156 - TRGCONST reduce 156 - L2V reduce 156 - MAPSTRING reduce 156 - UNIT reduce 156 - SWITCH reduce 156 - LOCATION reduce 156 - STATTXTTBL reduce 156 - VARRAY reduce 156 - STATIC reduce 156 - CONST reduce 156 - INC reduce 156 - DEC reduce 156 - ONCE reduce 156 - IF reduce 156 - SWITCHCASE reduce 156 - WHILE reduce 156 - FOR reduce 156 - FOREACH reduce 156 - CONTINUE reduce 156 - BREAK reduce 156 - RETURN reduce 156 - ACTIONNAME reduce 156 + QMARK reduce 178 + COMMA reduce 178 + LOR reduce 178 + LAND reduce 178 + LNOT reduce 178 + EQ reduce 178 + LE reduce 178 + LT reduce 178 + GE reduce 178 + GT reduce 178 + NE reduce 178 + BITOR reduce 178 + BITXOR shift 93 + PLUS reduce 178 + MINUS reduce 178 + BITNOT reduce 178 + LPAREN reduce 178 + SEMICOLON reduce 178 + NAME reduce 178 + COLON reduce 178 + RPAREN reduce 178 + LBRACKET reduce 178 + VAR reduce 178 + RSQBRACKET reduce 178 + L2V reduce 178 + STATIC reduce 178 + CONST reduce 178 + INC reduce 178 + DEC reduce 178 + ONCE reduce 178 + IF reduce 178 + SWITCHCASE reduce 178 + WHILE reduce 178 + FOR reduce 178 + FOREACH reduce 178 + CONTINUE reduce 178 + BREAK reduce 178 + RETURN reduce 178 + ACTIONNAME reduce 178 -State 283: - (125) nonConstExpr ::= nonConstExpr PLUS expr * +State 299: + constBitXorTerm ::= constBitXorTerm * BITXOR constBitAndTerm + (175) constBitOrTerm ::= constBitXorTerm * + bitOrTerm ::= constBitXorTerm * BITOR bitXorTerm - QMARK reduce 125 - COMMA reduce 125 - LOR reduce 125 - LAND reduce 125 - EQ reduce 125 - LE reduce 125 - LT reduce 125 - GE reduce 125 - GT reduce 125 - NE reduce 125 - BITOR reduce 125 - BITXOR reduce 125 - BITAND reduce 125 - LSHIFT reduce 125 - RSHIFT reduce 125 - PLUS reduce 125 - MINUS reduce 125 - DIVIDE reduce 125 - MULTIPLY reduce 125 - MOD reduce 125 - BITNOT reduce 125 - LPAREN reduce 125 - LSQBRACKET reduce 125 - PERIOD reduce 125 - SEMICOLON reduce 125 - NAME reduce 125 - COLON reduce 125 - FUNCTION reduce 125 - RPAREN reduce 125 - LBRACKET reduce 125 - VAR reduce 125 - NUMBER reduce 125 - RSQBRACKET reduce 125 - KILLS reduce 125 - TRGCONST reduce 125 - L2V reduce 125 - MAPSTRING reduce 125 - UNIT reduce 125 - SWITCH reduce 125 - LOCATION reduce 125 - STATTXTTBL reduce 125 - VARRAY reduce 125 - STATIC reduce 125 - CONST reduce 125 - INC reduce 125 - DEC reduce 125 - ONCE reduce 125 - IF reduce 125 - SWITCHCASE reduce 125 - WHILE reduce 125 - FOR reduce 125 - FOREACH reduce 125 - CONTINUE reduce 125 - BREAK reduce 125 - RETURN reduce 125 - ACTIONNAME reduce 125 + QMARK reduce 175 + COMMA reduce 175 + LOR reduce 175 + LAND reduce 175 + LNOT reduce 175 + EQ reduce 175 + LE reduce 175 + LT reduce 175 + GE reduce 175 + GT reduce 175 + NE reduce 175 + BITOR shift 92 + BITOR reduce 175 -- dropped by precedence + BITXOR shift 115 + PLUS reduce 175 + MINUS reduce 175 + BITNOT reduce 175 + LPAREN reduce 175 + SEMICOLON reduce 175 + NAME reduce 175 + COLON reduce 175 + RPAREN reduce 175 + LBRACKET reduce 175 + VAR reduce 175 + RSQBRACKET reduce 175 + L2V reduce 175 + STATIC reduce 175 + CONST reduce 175 + INC reduce 175 + DEC reduce 175 + ONCE reduce 175 + IF reduce 175 + SWITCHCASE reduce 175 + WHILE reduce 175 + FOR reduce 175 + FOREACH reduce 175 + CONTINUE reduce 175 + BREAK reduce 175 + RETURN reduce 175 + ACTIONNAME reduce 175 -State 284: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - (154) nonConstExpr ::= PLUS nonConstExpr * - - QMARK shift 76 -- dropped by precedence - QMARK reduce 154 - COMMA reduce 154 - LOR reduce 154 - LAND reduce 154 - EQ reduce 154 - LE reduce 154 - LT reduce 154 - GE reduce 154 - GT reduce 154 - NE reduce 154 - BITOR shift 66 -- dropped by precedence - BITOR reduce 154 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 154 - BITAND shift 67 -- dropped by precedence - BITAND reduce 154 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 154 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 154 - PLUS shift 74 -- dropped by precedence - PLUS reduce 154 - MINUS shift 73 -- dropped by precedence - MINUS reduce 154 - DIVIDE shift 71 -- dropped by precedence - DIVIDE reduce 154 - MULTIPLY shift 72 -- dropped by precedence - MULTIPLY reduce 154 - MOD shift 70 -- dropped by precedence - MOD reduce 154 - BITNOT reduce 154 - LPAREN shift 23 - LPAREN reduce 154 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 154 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 154 -- dropped by precedence - SEMICOLON reduce 154 - NAME reduce 154 - COLON reduce 154 - FUNCTION reduce 154 - RPAREN reduce 154 - LBRACKET reduce 154 - VAR reduce 154 - NUMBER reduce 154 - RSQBRACKET reduce 154 - KILLS reduce 154 - TRGCONST reduce 154 - L2V reduce 154 - MAPSTRING reduce 154 - UNIT reduce 154 - SWITCH reduce 154 - LOCATION reduce 154 - STATTXTTBL reduce 154 - VARRAY reduce 154 - STATIC reduce 154 - CONST reduce 154 - INC reduce 154 - DEC reduce 154 - ONCE reduce 154 - IF reduce 154 - SWITCHCASE reduce 154 - WHILE reduce 154 - FOR reduce 154 - FOREACH reduce 154 - CONTINUE reduce 154 - BREAK reduce 154 - RETURN reduce 154 - ACTIONNAME reduce 154 +State 300: + bitOrTerm ::= bitOrTerm * BITOR bitXorTerm + bitOrTerm ::= bitOrTerm * BITOR constBitXorTerm + (192) eqExpr ::= bitOrTerm * + eqExpr ::= bitOrTerm * EQ constBitOrTerm + eqExpr ::= bitOrTerm * EQ bitOrTerm + eqExpr ::= bitOrTerm * NE constBitOrTerm + eqExpr ::= bitOrTerm * NE bitOrTerm + + QMARK reduce 192 + COMMA reduce 192 + LOR reduce 192 + LAND reduce 192 + LNOT reduce 192 + EQ shift 86 + LE reduce 192 + LT reduce 192 + GE reduce 192 + GT reduce 192 + NE shift 85 + BITOR shift 91 + PLUS reduce 192 + MINUS reduce 192 + BITNOT reduce 192 + LPAREN reduce 192 + SEMICOLON reduce 192 + NAME reduce 192 + COLON reduce 192 + RPAREN reduce 192 + LBRACKET reduce 192 + VAR reduce 192 + RSQBRACKET reduce 192 + L2V reduce 192 + STATIC reduce 192 + CONST reduce 192 + INC reduce 192 + DEC reduce 192 + ONCE reduce 192 + IF reduce 192 + SWITCHCASE reduce 192 + WHILE reduce 192 + FOR reduce 192 + FOREACH reduce 192 + CONTINUE reduce 192 + BREAK reduce 192 + RETURN reduce 192 + ACTIONNAME reduce 192 -State 285: - (121) logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * +State 301: + constBitOrTerm ::= constBitOrTerm * BITOR constBitXorTerm + (189) constEqExpr ::= constBitOrTerm * + constEqExpr ::= constBitOrTerm * EQ constBitOrTerm + constEqExpr ::= constBitOrTerm * NE constBitOrTerm + eqExpr ::= constBitOrTerm * EQ bitOrTerm + eqExpr ::= constBitOrTerm * NE bitOrTerm + + QMARK reduce 189 + COMMA reduce 189 + LOR reduce 189 + LAND reduce 189 + LNOT reduce 189 + EQ shift 88 + LE reduce 189 + LT reduce 189 + GE reduce 189 + GT reduce 189 + NE shift 87 + BITOR shift 111 + PLUS reduce 189 + MINUS reduce 189 + BITNOT reduce 189 + LPAREN reduce 189 + SEMICOLON reduce 189 + NAME reduce 189 + COLON reduce 189 + RPAREN reduce 189 + LBRACKET reduce 189 + VAR reduce 189 + RSQBRACKET reduce 189 + L2V reduce 189 + STATIC reduce 189 + CONST reduce 189 + INC reduce 189 + DEC reduce 189 + ONCE reduce 189 + IF reduce 189 + SWITCHCASE reduce 189 + WHILE reduce 189 + FOR reduce 189 + FOREACH reduce 189 + CONTINUE reduce 189 + BREAK reduce 189 + RETURN reduce 189 + ACTIONNAME reduce 189 - QMARK reduce 121 - COMMA reduce 121 - LOR reduce 121 - LAND reduce 121 - EQ reduce 121 - LE reduce 121 - LT reduce 121 - GE reduce 121 - GT reduce 121 - NE reduce 121 - BITOR reduce 121 - BITXOR reduce 121 - BITAND reduce 121 - LSHIFT reduce 121 - RSHIFT reduce 121 - PLUS reduce 121 - MINUS reduce 121 - DIVIDE reduce 121 - MULTIPLY reduce 121 - MOD reduce 121 - BITNOT reduce 121 - LPAREN reduce 121 - LSQBRACKET reduce 121 - PERIOD reduce 121 - SEMICOLON reduce 121 - NAME reduce 121 - COLON reduce 121 - FUNCTION reduce 121 - RPAREN reduce 121 - LBRACKET reduce 121 - VAR reduce 121 - NUMBER reduce 121 - RSQBRACKET reduce 121 - KILLS reduce 121 - TRGCONST reduce 121 - L2V reduce 121 - MAPSTRING reduce 121 - UNIT reduce 121 - SWITCH reduce 121 - LOCATION reduce 121 - STATTXTTBL reduce 121 - VARRAY reduce 121 - STATIC reduce 121 - CONST reduce 121 - INC reduce 121 - DEC reduce 121 - ONCE reduce 121 - IF reduce 121 - SWITCHCASE reduce 121 - WHILE reduce 121 - FOR reduce 121 - FOREACH reduce 121 - CONTINUE reduce 121 - BREAK reduce 121 - RETURN reduce 121 - ACTIONNAME reduce 121 +State 302: + bitOrTerm ::= bitOrTerm * BITOR bitXorTerm + bitOrTerm ::= bitOrTerm * BITOR constBitXorTerm + (198) eqExpr ::= bitOrTerm NE bitOrTerm * -State 286: - (120) constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable RPAREN * + QMARK reduce 198 + COMMA reduce 198 + LOR reduce 198 + LAND reduce 198 + LNOT reduce 198 + LE reduce 198 + LT reduce 198 + GE reduce 198 + GT reduce 198 + BITOR shift 91 + PLUS reduce 198 + MINUS reduce 198 + BITNOT reduce 198 + LPAREN reduce 198 + SEMICOLON reduce 198 + NAME reduce 198 + COLON reduce 198 + RPAREN reduce 198 + LBRACKET reduce 198 + VAR reduce 198 + RSQBRACKET reduce 198 + L2V reduce 198 + STATIC reduce 198 + CONST reduce 198 + INC reduce 198 + DEC reduce 198 + ONCE reduce 198 + IF reduce 198 + SWITCHCASE reduce 198 + WHILE reduce 198 + FOR reduce 198 + FOREACH reduce 198 + CONTINUE reduce 198 + BREAK reduce 198 + RETURN reduce 198 + ACTIONNAME reduce 198 - QMARK reduce 120 - COMMA reduce 120 - LOR reduce 120 - LAND reduce 120 - EQ reduce 120 - LE reduce 120 - LT reduce 120 - GE reduce 120 - GT reduce 120 - NE reduce 120 - BITOR reduce 120 - BITXOR reduce 120 - BITAND reduce 120 - LSHIFT reduce 120 - RSHIFT reduce 120 - PLUS reduce 120 - MINUS reduce 120 - DIVIDE reduce 120 - MULTIPLY reduce 120 - MOD reduce 120 - BITNOT reduce 120 - LPAREN reduce 120 - LSQBRACKET reduce 120 - PERIOD reduce 120 - SEMICOLON reduce 120 - NAME reduce 120 - COLON reduce 120 - FUNCTION reduce 120 - RPAREN reduce 120 - LBRACKET reduce 120 - VAR reduce 120 - NUMBER reduce 120 - RSQBRACKET reduce 120 - KILLS reduce 120 - TRGCONST reduce 120 - L2V reduce 120 - MAPSTRING reduce 120 - UNIT reduce 120 - SWITCH reduce 120 - LOCATION reduce 120 - STATTXTTBL reduce 120 - VARRAY reduce 120 - STATIC reduce 120 - CONST reduce 120 - INC reduce 120 - DEC reduce 120 - ONCE reduce 120 - IF reduce 120 - SWITCHCASE reduce 120 - WHILE reduce 120 - FOR reduce 120 - FOREACH reduce 120 - CONTINUE reduce 120 - BREAK reduce 120 - RETURN reduce 120 - ACTIONNAME reduce 120 +State 303: + constBitOrTerm ::= constBitOrTerm * BITOR constBitXorTerm + (197) eqExpr ::= bitOrTerm NE constBitOrTerm * -State 287: - (119) constExpr ::= STATTXTTBL LPAREN STRING RPAREN * + QMARK reduce 197 + COMMA reduce 197 + LOR reduce 197 + LAND reduce 197 + LNOT reduce 197 + LE reduce 197 + LT reduce 197 + GE reduce 197 + GT reduce 197 + BITOR shift 111 + PLUS reduce 197 + MINUS reduce 197 + BITNOT reduce 197 + LPAREN reduce 197 + SEMICOLON reduce 197 + NAME reduce 197 + COLON reduce 197 + RPAREN reduce 197 + LBRACKET reduce 197 + VAR reduce 197 + RSQBRACKET reduce 197 + L2V reduce 197 + STATIC reduce 197 + CONST reduce 197 + INC reduce 197 + DEC reduce 197 + ONCE reduce 197 + IF reduce 197 + SWITCHCASE reduce 197 + WHILE reduce 197 + FOR reduce 197 + FOREACH reduce 197 + CONTINUE reduce 197 + BREAK reduce 197 + RETURN reduce 197 + ACTIONNAME reduce 197 - QMARK reduce 119 - COMMA reduce 119 - LOR reduce 119 - LAND reduce 119 - EQ reduce 119 - LE reduce 119 - LT reduce 119 - GE reduce 119 - GT reduce 119 - NE reduce 119 - BITOR reduce 119 - BITXOR reduce 119 - BITAND reduce 119 - LSHIFT reduce 119 - RSHIFT reduce 119 - PLUS reduce 119 - MINUS reduce 119 - DIVIDE reduce 119 - MULTIPLY reduce 119 - MOD reduce 119 - BITNOT reduce 119 - LPAREN reduce 119 - LSQBRACKET reduce 119 - PERIOD reduce 119 - SEMICOLON reduce 119 - NAME reduce 119 - COLON reduce 119 - FUNCTION reduce 119 - RPAREN reduce 119 - LBRACKET reduce 119 - VAR reduce 119 - NUMBER reduce 119 - RSQBRACKET reduce 119 - KILLS reduce 119 - TRGCONST reduce 119 - L2V reduce 119 - MAPSTRING reduce 119 - UNIT reduce 119 - SWITCH reduce 119 - LOCATION reduce 119 - STATTXTTBL reduce 119 - VARRAY reduce 119 - STATIC reduce 119 - CONST reduce 119 - INC reduce 119 - DEC reduce 119 - ONCE reduce 119 - IF reduce 119 - SWITCHCASE reduce 119 - WHILE reduce 119 - FOR reduce 119 - FOREACH reduce 119 - CONTINUE reduce 119 - BREAK reduce 119 - RETURN reduce 119 - ACTIONNAME reduce 119 +State 304: + bitOrTerm ::= bitOrTerm * BITOR bitXorTerm + bitOrTerm ::= bitOrTerm * BITOR constBitXorTerm + (195) eqExpr ::= bitOrTerm EQ bitOrTerm * -State 288: - (118) constExpr ::= LOCATION LPAREN STRING RPAREN * - - QMARK reduce 118 - COMMA reduce 118 - LOR reduce 118 - LAND reduce 118 - EQ reduce 118 - LE reduce 118 - LT reduce 118 - GE reduce 118 - GT reduce 118 - NE reduce 118 - BITOR reduce 118 - BITXOR reduce 118 - BITAND reduce 118 - LSHIFT reduce 118 - RSHIFT reduce 118 - PLUS reduce 118 - MINUS reduce 118 - DIVIDE reduce 118 - MULTIPLY reduce 118 - MOD reduce 118 - BITNOT reduce 118 - LPAREN reduce 118 - LSQBRACKET reduce 118 - PERIOD reduce 118 - SEMICOLON reduce 118 - NAME reduce 118 - COLON reduce 118 - FUNCTION reduce 118 - RPAREN reduce 118 - LBRACKET reduce 118 - VAR reduce 118 - NUMBER reduce 118 - RSQBRACKET reduce 118 - KILLS reduce 118 - TRGCONST reduce 118 - L2V reduce 118 - MAPSTRING reduce 118 - UNIT reduce 118 - SWITCH reduce 118 - LOCATION reduce 118 - STATTXTTBL reduce 118 - VARRAY reduce 118 - STATIC reduce 118 - CONST reduce 118 - INC reduce 118 - DEC reduce 118 - ONCE reduce 118 - IF reduce 118 - SWITCHCASE reduce 118 - WHILE reduce 118 - FOR reduce 118 - FOREACH reduce 118 - CONTINUE reduce 118 - BREAK reduce 118 - RETURN reduce 118 - ACTIONNAME reduce 118 + QMARK reduce 195 + COMMA reduce 195 + LOR reduce 195 + LAND reduce 195 + LNOT reduce 195 + LE reduce 195 + LT reduce 195 + GE reduce 195 + GT reduce 195 + BITOR shift 91 + PLUS reduce 195 + MINUS reduce 195 + BITNOT reduce 195 + LPAREN reduce 195 + SEMICOLON reduce 195 + NAME reduce 195 + COLON reduce 195 + RPAREN reduce 195 + LBRACKET reduce 195 + VAR reduce 195 + RSQBRACKET reduce 195 + L2V reduce 195 + STATIC reduce 195 + CONST reduce 195 + INC reduce 195 + DEC reduce 195 + ONCE reduce 195 + IF reduce 195 + SWITCHCASE reduce 195 + WHILE reduce 195 + FOR reduce 195 + FOREACH reduce 195 + CONTINUE reduce 195 + BREAK reduce 195 + RETURN reduce 195 + ACTIONNAME reduce 195 -State 289: - (117) constExpr ::= SWITCH LPAREN STRING RPAREN * - - QMARK reduce 117 - COMMA reduce 117 - LOR reduce 117 - LAND reduce 117 - EQ reduce 117 - LE reduce 117 - LT reduce 117 - GE reduce 117 - GT reduce 117 - NE reduce 117 - BITOR reduce 117 - BITXOR reduce 117 - BITAND reduce 117 - LSHIFT reduce 117 - RSHIFT reduce 117 - PLUS reduce 117 - MINUS reduce 117 - DIVIDE reduce 117 - MULTIPLY reduce 117 - MOD reduce 117 - BITNOT reduce 117 - LPAREN reduce 117 - LSQBRACKET reduce 117 - PERIOD reduce 117 - SEMICOLON reduce 117 - NAME reduce 117 - COLON reduce 117 - FUNCTION reduce 117 - RPAREN reduce 117 - LBRACKET reduce 117 - VAR reduce 117 - NUMBER reduce 117 - RSQBRACKET reduce 117 - KILLS reduce 117 - TRGCONST reduce 117 - L2V reduce 117 - MAPSTRING reduce 117 - UNIT reduce 117 - SWITCH reduce 117 - LOCATION reduce 117 - STATTXTTBL reduce 117 - VARRAY reduce 117 - STATIC reduce 117 - CONST reduce 117 - INC reduce 117 - DEC reduce 117 - ONCE reduce 117 - IF reduce 117 - SWITCHCASE reduce 117 - WHILE reduce 117 - FOR reduce 117 - FOREACH reduce 117 - CONTINUE reduce 117 - BREAK reduce 117 - RETURN reduce 117 - ACTIONNAME reduce 117 +State 305: + constBitOrTerm ::= constBitOrTerm * BITOR constBitXorTerm + (194) eqExpr ::= bitOrTerm EQ constBitOrTerm * -State 290: - (116) constExpr ::= UNIT LPAREN STRING RPAREN * + QMARK reduce 194 + COMMA reduce 194 + LOR reduce 194 + LAND reduce 194 + LNOT reduce 194 + LE reduce 194 + LT reduce 194 + GE reduce 194 + GT reduce 194 + BITOR shift 111 + PLUS reduce 194 + MINUS reduce 194 + BITNOT reduce 194 + LPAREN reduce 194 + SEMICOLON reduce 194 + NAME reduce 194 + COLON reduce 194 + RPAREN reduce 194 + LBRACKET reduce 194 + VAR reduce 194 + RSQBRACKET reduce 194 + L2V reduce 194 + STATIC reduce 194 + CONST reduce 194 + INC reduce 194 + DEC reduce 194 + ONCE reduce 194 + IF reduce 194 + SWITCHCASE reduce 194 + WHILE reduce 194 + FOR reduce 194 + FOREACH reduce 194 + CONTINUE reduce 194 + BREAK reduce 194 + RETURN reduce 194 + ACTIONNAME reduce 194 + +State 306: + bitOrTerm ::= bitOrTerm * BITOR bitXorTerm + bitOrTerm ::= bitOrTerm * BITOR constBitXorTerm + (196) eqExpr ::= constBitOrTerm NE bitOrTerm * + + QMARK reduce 196 + COMMA reduce 196 + LOR reduce 196 + LAND reduce 196 + LNOT reduce 196 + LE reduce 196 + LT reduce 196 + GE reduce 196 + GT reduce 196 + BITOR shift 91 + PLUS reduce 196 + MINUS reduce 196 + BITNOT reduce 196 + LPAREN reduce 196 + SEMICOLON reduce 196 + NAME reduce 196 + COLON reduce 196 + RPAREN reduce 196 + LBRACKET reduce 196 + VAR reduce 196 + RSQBRACKET reduce 196 + L2V reduce 196 + STATIC reduce 196 + CONST reduce 196 + INC reduce 196 + DEC reduce 196 + ONCE reduce 196 + IF reduce 196 + SWITCHCASE reduce 196 + WHILE reduce 196 + FOR reduce 196 + FOREACH reduce 196 + CONTINUE reduce 196 + BREAK reduce 196 + RETURN reduce 196 + ACTIONNAME reduce 196 + +State 307: + constBitOrTerm ::= constBitOrTerm * BITOR constBitXorTerm + (191) constEqExpr ::= constBitOrTerm NE constBitOrTerm * + + QMARK reduce 191 + COMMA reduce 191 + LOR reduce 191 + LAND reduce 191 + LNOT reduce 191 + LE reduce 191 + LT reduce 191 + GE reduce 191 + GT reduce 191 + BITOR shift 111 + PLUS reduce 191 + MINUS reduce 191 + BITNOT reduce 191 + LPAREN reduce 191 + SEMICOLON reduce 191 + NAME reduce 191 + COLON reduce 191 + RPAREN reduce 191 + LBRACKET reduce 191 + VAR reduce 191 + RSQBRACKET reduce 191 + L2V reduce 191 + STATIC reduce 191 + CONST reduce 191 + INC reduce 191 + DEC reduce 191 + ONCE reduce 191 + IF reduce 191 + SWITCHCASE reduce 191 + WHILE reduce 191 + FOR reduce 191 + FOREACH reduce 191 + CONTINUE reduce 191 + BREAK reduce 191 + RETURN reduce 191 + ACTIONNAME reduce 191 + +State 308: + bitOrTerm ::= bitOrTerm * BITOR bitXorTerm + bitOrTerm ::= bitOrTerm * BITOR constBitXorTerm + (193) eqExpr ::= constBitOrTerm EQ bitOrTerm * + + QMARK reduce 193 + COMMA reduce 193 + LOR reduce 193 + LAND reduce 193 + LNOT reduce 193 + LE reduce 193 + LT reduce 193 + GE reduce 193 + GT reduce 193 + BITOR shift 91 + PLUS reduce 193 + MINUS reduce 193 + BITNOT reduce 193 + LPAREN reduce 193 + SEMICOLON reduce 193 + NAME reduce 193 + COLON reduce 193 + RPAREN reduce 193 + LBRACKET reduce 193 + VAR reduce 193 + RSQBRACKET reduce 193 + L2V reduce 193 + STATIC reduce 193 + CONST reduce 193 + INC reduce 193 + DEC reduce 193 + ONCE reduce 193 + IF reduce 193 + SWITCHCASE reduce 193 + WHILE reduce 193 + FOR reduce 193 + FOREACH reduce 193 + CONTINUE reduce 193 + BREAK reduce 193 + RETURN reduce 193 + ACTIONNAME reduce 193 - QMARK reduce 116 - COMMA reduce 116 - LOR reduce 116 - LAND reduce 116 - EQ reduce 116 - LE reduce 116 - LT reduce 116 - GE reduce 116 - GT reduce 116 - NE reduce 116 - BITOR reduce 116 - BITXOR reduce 116 - BITAND reduce 116 - LSHIFT reduce 116 - RSHIFT reduce 116 - PLUS reduce 116 - MINUS reduce 116 - DIVIDE reduce 116 - MULTIPLY reduce 116 - MOD reduce 116 - BITNOT reduce 116 - LPAREN reduce 116 - LSQBRACKET reduce 116 - PERIOD reduce 116 - SEMICOLON reduce 116 - NAME reduce 116 - COLON reduce 116 - FUNCTION reduce 116 - RPAREN reduce 116 - LBRACKET reduce 116 - VAR reduce 116 - NUMBER reduce 116 - RSQBRACKET reduce 116 - KILLS reduce 116 - TRGCONST reduce 116 - L2V reduce 116 - MAPSTRING reduce 116 - UNIT reduce 116 - SWITCH reduce 116 - LOCATION reduce 116 - STATTXTTBL reduce 116 - VARRAY reduce 116 - STATIC reduce 116 - CONST reduce 116 - INC reduce 116 - DEC reduce 116 - ONCE reduce 116 - IF reduce 116 - SWITCHCASE reduce 116 - WHILE reduce 116 - FOR reduce 116 - FOREACH reduce 116 - CONTINUE reduce 116 - BREAK reduce 116 - RETURN reduce 116 - ACTIONNAME reduce 116 +State 309: + constBitOrTerm ::= constBitOrTerm * BITOR constBitXorTerm + (190) constEqExpr ::= constBitOrTerm EQ constBitOrTerm * + + QMARK reduce 190 + COMMA reduce 190 + LOR reduce 190 + LAND reduce 190 + LNOT reduce 190 + LE reduce 190 + LT reduce 190 + GE reduce 190 + GT reduce 190 + BITOR shift 111 + PLUS reduce 190 + MINUS reduce 190 + BITNOT reduce 190 + LPAREN reduce 190 + SEMICOLON reduce 190 + NAME reduce 190 + COLON reduce 190 + RPAREN reduce 190 + LBRACKET reduce 190 + VAR reduce 190 + RSQBRACKET reduce 190 + L2V reduce 190 + STATIC reduce 190 + CONST reduce 190 + INC reduce 190 + DEC reduce 190 + ONCE reduce 190 + IF reduce 190 + SWITCHCASE reduce 190 + WHILE reduce 190 + FOR reduce 190 + FOREACH reduce 190 + CONTINUE reduce 190 + BREAK reduce 190 + RETURN reduce 190 + ACTIONNAME reduce 190 -State 291: - (115) constExpr ::= MAPSTRING LPAREN STRING RPAREN * +State 310: + (204) compExpr ::= eqExpr * + compExpr ::= eqExpr * LE constEqExpr + compExpr ::= eqExpr * LE eqExpr + compExpr ::= eqExpr * GE constEqExpr + compExpr ::= eqExpr * GE eqExpr + compExpr ::= eqExpr * LT constEqExpr + compExpr ::= eqExpr * LT eqExpr + compExpr ::= eqExpr * GT constEqExpr + compExpr ::= eqExpr * GT eqExpr + + QMARK reduce 204 + COMMA reduce 204 + LOR reduce 204 + LAND reduce 204 + LNOT reduce 204 + LE shift 75 + LT shift 73 + GE shift 74 + GT shift 72 + PLUS reduce 204 + MINUS reduce 204 + BITNOT reduce 204 + LPAREN reduce 204 + SEMICOLON reduce 204 + NAME reduce 204 + COLON reduce 204 + RPAREN reduce 204 + LBRACKET reduce 204 + VAR reduce 204 + RSQBRACKET reduce 204 + L2V reduce 204 + STATIC reduce 204 + CONST reduce 204 + INC reduce 204 + DEC reduce 204 + ONCE reduce 204 + IF reduce 204 + SWITCHCASE reduce 204 + WHILE reduce 204 + FOR reduce 204 + FOREACH reduce 204 + CONTINUE reduce 204 + BREAK reduce 204 + RETURN reduce 204 + ACTIONNAME reduce 204 - QMARK reduce 115 - COMMA reduce 115 - LOR reduce 115 - LAND reduce 115 - EQ reduce 115 - LE reduce 115 - LT reduce 115 - GE reduce 115 - GT reduce 115 - NE reduce 115 - BITOR reduce 115 - BITXOR reduce 115 - BITAND reduce 115 - LSHIFT reduce 115 - RSHIFT reduce 115 - PLUS reduce 115 - MINUS reduce 115 - DIVIDE reduce 115 - MULTIPLY reduce 115 - MOD reduce 115 - BITNOT reduce 115 - LPAREN reduce 115 - LSQBRACKET reduce 115 - PERIOD reduce 115 - SEMICOLON reduce 115 - NAME reduce 115 - COLON reduce 115 - FUNCTION reduce 115 - RPAREN reduce 115 - LBRACKET reduce 115 - VAR reduce 115 - NUMBER reduce 115 - RSQBRACKET reduce 115 - KILLS reduce 115 - TRGCONST reduce 115 - L2V reduce 115 - MAPSTRING reduce 115 - UNIT reduce 115 - SWITCH reduce 115 - LOCATION reduce 115 - STATTXTTBL reduce 115 - VARRAY reduce 115 - STATIC reduce 115 - CONST reduce 115 - INC reduce 115 - DEC reduce 115 - ONCE reduce 115 - IF reduce 115 - SWITCHCASE reduce 115 - WHILE reduce 115 - FOR reduce 115 - FOREACH reduce 115 - CONTINUE reduce 115 - BREAK reduce 115 - RETURN reduce 115 - ACTIONNAME reduce 115 +State 311: + (199) constCompExpr ::= constEqExpr * + constCompExpr ::= constEqExpr * LE constEqExpr + constCompExpr ::= constEqExpr * GE constEqExpr + constCompExpr ::= constEqExpr * LT constEqExpr + constCompExpr ::= constEqExpr * GT constEqExpr + compExpr ::= constEqExpr * LE eqExpr + compExpr ::= constEqExpr * GE eqExpr + compExpr ::= constEqExpr * LT eqExpr + compExpr ::= constEqExpr * GT eqExpr + + QMARK reduce 199 + COMMA reduce 199 + LOR reduce 199 + LAND reduce 199 + LNOT reduce 199 + LE shift 79 + LT shift 77 + GE shift 78 + GT shift 76 + PLUS reduce 199 + MINUS reduce 199 + BITNOT reduce 199 + LPAREN reduce 199 + SEMICOLON reduce 199 + NAME reduce 199 + COLON reduce 199 + RPAREN reduce 199 + LBRACKET reduce 199 + VAR reduce 199 + RSQBRACKET reduce 199 + L2V reduce 199 + STATIC reduce 199 + CONST reduce 199 + INC reduce 199 + DEC reduce 199 + ONCE reduce 199 + IF reduce 199 + SWITCHCASE reduce 199 + WHILE reduce 199 + FOR reduce 199 + FOREACH reduce 199 + CONTINUE reduce 199 + BREAK reduce 199 + RETURN reduce 199 + ACTIONNAME reduce 199 -State 292: - (114) nonConstExpr ::= L2V LPAREN expr RPAREN * +State 312: + logicAndExpr ::= logicAndExpr * LAND compExpr + logicAndExpr ::= logicAndExpr * LAND constCompExpr + (224) logicExpr ::= logicExpr LOR logicAndExpr * + + QMARK reduce 224 + COMMA reduce 224 + LOR reduce 224 + LAND shift 70 + LNOT reduce 224 + PLUS reduce 224 + MINUS reduce 224 + BITNOT reduce 224 + LPAREN reduce 224 + SEMICOLON reduce 224 + NAME reduce 224 + COLON reduce 224 + RPAREN reduce 224 + LBRACKET reduce 224 + VAR reduce 224 + RSQBRACKET reduce 224 + L2V reduce 224 + STATIC reduce 224 + CONST reduce 224 + INC reduce 224 + DEC reduce 224 + ONCE reduce 224 + IF reduce 224 + SWITCHCASE reduce 224 + WHILE reduce 224 + FOR reduce 224 + FOREACH reduce 224 + CONTINUE reduce 224 + BREAK reduce 224 + RETURN reduce 224 + ACTIONNAME reduce 224 - QMARK reduce 114 - COMMA reduce 114 - LOR reduce 114 - LAND reduce 114 - EQ reduce 114 - LE reduce 114 - LT reduce 114 - GE reduce 114 - GT reduce 114 - NE reduce 114 - BITOR reduce 114 - BITXOR reduce 114 - BITAND reduce 114 - LSHIFT reduce 114 - RSHIFT reduce 114 - PLUS reduce 114 - MINUS reduce 114 - DIVIDE reduce 114 - MULTIPLY reduce 114 - MOD reduce 114 - BITNOT reduce 114 - LPAREN reduce 114 - LSQBRACKET reduce 114 - PERIOD reduce 114 - SEMICOLON reduce 114 - NAME reduce 114 - COLON reduce 114 - FUNCTION reduce 114 - RPAREN reduce 114 - LBRACKET reduce 114 - VAR reduce 114 - NUMBER reduce 114 - RSQBRACKET reduce 114 - KILLS reduce 114 - TRGCONST reduce 114 - L2V reduce 114 - MAPSTRING reduce 114 - UNIT reduce 114 - SWITCH reduce 114 - LOCATION reduce 114 - STATTXTTBL reduce 114 - VARRAY reduce 114 - STATIC reduce 114 - CONST reduce 114 - INC reduce 114 - DEC reduce 114 - ONCE reduce 114 - IF reduce 114 - SWITCHCASE reduce 114 - WHILE reduce 114 - FOR reduce 114 - FOREACH reduce 114 - CONTINUE reduce 114 - BREAK reduce 114 - RETURN reduce 114 - ACTIONNAME reduce 114 +State 313: + logicAndExpr ::= logicAndExpr * LAND compExpr + logicAndExpr ::= logicAndExpr * LAND constCompExpr + (226) logicExpr ::= constLogicAndExpr LOR logicAndExpr * -State 293: - exprList_nonEmpty ::= funcexpr * LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (108) nonConstExpr ::= funcexpr * - - QMARK reduce 108 - COMMA reduce 108 - LOR reduce 108 - LAND reduce 108 - EQ reduce 108 - LE reduce 108 - LT reduce 108 - GE reduce 108 - GT reduce 108 - NE reduce 108 - BITOR reduce 108 - BITXOR reduce 108 - BITAND reduce 108 - LSHIFT reduce 108 - RSHIFT reduce 108 - PLUS reduce 108 - MINUS reduce 108 - DIVIDE reduce 108 - MULTIPLY reduce 108 - MOD reduce 108 - BITNOT reduce 108 - LPAREN reduce 108 - LSQBRACKET shift 529 - LSQBRACKET reduce 108 -- dropped by precedence - PERIOD reduce 108 - SEMICOLON reduce 108 - NAME reduce 108 - COLON reduce 108 - FUNCTION reduce 108 - RPAREN reduce 108 - LBRACKET reduce 108 - VAR reduce 108 - NUMBER reduce 108 - RSQBRACKET reduce 108 - KILLS reduce 108 - TRGCONST reduce 108 - L2V reduce 108 - MAPSTRING reduce 108 - UNIT reduce 108 - SWITCH reduce 108 - LOCATION reduce 108 - STATTXTTBL reduce 108 - VARRAY reduce 108 - STATIC reduce 108 - CONST reduce 108 - INC reduce 108 - DEC reduce 108 - ONCE reduce 108 - IF reduce 108 - SWITCHCASE reduce 108 - WHILE reduce 108 - FOR reduce 108 - FOREACH reduce 108 - CONTINUE reduce 108 - BREAK reduce 108 - RETURN reduce 108 - ACTIONNAME reduce 108 + QMARK reduce 226 + COMMA reduce 226 + LOR reduce 226 + LAND shift 70 + LNOT reduce 226 + PLUS reduce 226 + MINUS reduce 226 + BITNOT reduce 226 + LPAREN reduce 226 + SEMICOLON reduce 226 + NAME reduce 226 + COLON reduce 226 + RPAREN reduce 226 + LBRACKET reduce 226 + VAR reduce 226 + RSQBRACKET reduce 226 + L2V reduce 226 + STATIC reduce 226 + CONST reduce 226 + INC reduce 226 + DEC reduce 226 + ONCE reduce 226 + IF reduce 226 + SWITCHCASE reduce 226 + WHILE reduce 226 + FOR reduce 226 + FOREACH reduce 226 + CONTINUE reduce 226 + BREAK reduce 226 + RETURN reduce 226 + ACTIONNAME reduce 226 -State 294: - (88) expr ::= logicExpr * - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr +State 314: + (220) logicAndExpr ::= logicAndExpr LAND constCompExpr * - QMARK reduce 88 - COMMA reduce 88 - LOR shift 82 - LOR reduce 88 -- dropped by precedence - LAND shift 84 - LAND reduce 88 -- dropped by precedence - EQ reduce 88 - LE reduce 88 - LT reduce 88 - GE reduce 88 - GT reduce 88 - NE reduce 88 - BITOR reduce 88 - BITXOR reduce 88 - BITAND reduce 88 - LSHIFT reduce 88 - RSHIFT reduce 88 - PLUS reduce 88 - MINUS reduce 88 - DIVIDE reduce 88 - MULTIPLY reduce 88 - MOD reduce 88 - BITNOT reduce 88 - LPAREN reduce 88 - LSQBRACKET reduce 88 - PERIOD reduce 88 - SEMICOLON reduce 88 - NAME reduce 88 - COLON reduce 88 - FUNCTION reduce 88 - RPAREN reduce 88 - LBRACKET reduce 88 - VAR reduce 88 - NUMBER reduce 88 - RSQBRACKET reduce 88 - KILLS reduce 88 - TRGCONST reduce 88 - L2V reduce 88 - MAPSTRING reduce 88 - UNIT reduce 88 - SWITCH reduce 88 - LOCATION reduce 88 - STATTXTTBL reduce 88 - VARRAY reduce 88 - STATIC reduce 88 - CONST reduce 88 - INC reduce 88 - DEC reduce 88 - ONCE reduce 88 - IF reduce 88 - SWITCHCASE reduce 88 - WHILE reduce 88 - FOR reduce 88 - FOREACH reduce 88 - CONTINUE reduce 88 - BREAK reduce 88 - RETURN reduce 88 - ACTIONNAME reduce 88 + QMARK reduce 220 + COMMA reduce 220 + LOR reduce 220 + LAND reduce 220 + LNOT reduce 220 + PLUS reduce 220 + MINUS reduce 220 + BITNOT reduce 220 + LPAREN reduce 220 + SEMICOLON reduce 220 + NAME reduce 220 + COLON reduce 220 + RPAREN reduce 220 + LBRACKET reduce 220 + VAR reduce 220 + RSQBRACKET reduce 220 + L2V reduce 220 + STATIC reduce 220 + CONST reduce 220 + INC reduce 220 + DEC reduce 220 + ONCE reduce 220 + IF reduce 220 + SWITCHCASE reduce 220 + WHILE reduce 220 + FOR reduce 220 + FOREACH reduce 220 + CONTINUE reduce 220 + BREAK reduce 220 + RETURN reduce 220 + ACTIONNAME reduce 220 -State 295: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - (127) nonConstExpr ::= constExpr MINUS nonConstExpr * - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 127 - COMMA reduce 127 - LOR reduce 127 - LAND reduce 127 - EQ reduce 127 - LE reduce 127 - LT reduce 127 - GE reduce 127 - GT reduce 127 - NE reduce 127 - BITOR shift 66 -- dropped by precedence - BITOR reduce 127 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 127 - BITAND shift 67 -- dropped by precedence - BITAND reduce 127 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 127 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 127 - PLUS shift 74 -- dropped by precedence - PLUS reduce 127 - MINUS shift 73 -- dropped by precedence - MINUS reduce 127 - DIVIDE shift 71 - DIVIDE reduce 127 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 127 -- dropped by precedence - MOD shift 70 - MOD reduce 127 -- dropped by precedence - BITNOT reduce 127 - LPAREN shift 23 - LPAREN reduce 127 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 127 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 127 -- dropped by precedence - SEMICOLON reduce 127 - NAME reduce 127 - COLON reduce 127 - FUNCTION reduce 127 - RPAREN reduce 127 - LBRACKET reduce 127 - VAR reduce 127 - NUMBER reduce 127 - RSQBRACKET reduce 127 - KILLS reduce 127 - TRGCONST reduce 127 - L2V reduce 127 - MAPSTRING reduce 127 - UNIT reduce 127 - SWITCH reduce 127 - LOCATION reduce 127 - STATTXTTBL reduce 127 - VARRAY reduce 127 - STATIC reduce 127 - CONST reduce 127 - INC reduce 127 - DEC reduce 127 - ONCE reduce 127 - IF reduce 127 - SWITCHCASE reduce 127 - WHILE reduce 127 - FOR reduce 127 - FOREACH reduce 127 - CONTINUE reduce 127 - BREAK reduce 127 - RETURN reduce 127 - ACTIONNAME reduce 127 +State 315: + (219) logicAndExpr ::= logicAndExpr LAND compExpr * -State 296: - (109) constExpr ::= LPAREN constExpr RPAREN * - - QMARK reduce 109 - COMMA reduce 109 - LOR reduce 109 - LAND reduce 109 - EQ reduce 109 - LE reduce 109 - LT reduce 109 - GE reduce 109 - GT reduce 109 - NE reduce 109 - BITOR reduce 109 - BITXOR reduce 109 - BITAND reduce 109 - LSHIFT reduce 109 - RSHIFT reduce 109 - PLUS reduce 109 - MINUS reduce 109 - DIVIDE reduce 109 - MULTIPLY reduce 109 - MOD reduce 109 - BITNOT reduce 109 - LPAREN reduce 109 - LSQBRACKET reduce 109 - PERIOD reduce 109 - SEMICOLON reduce 109 - NAME reduce 109 - COLON reduce 109 - FUNCTION reduce 109 - RPAREN reduce 109 - LBRACKET reduce 109 - VAR reduce 109 - NUMBER reduce 109 - RSQBRACKET reduce 109 - KILLS reduce 109 - TRGCONST reduce 109 - L2V reduce 109 - MAPSTRING reduce 109 - UNIT reduce 109 - SWITCH reduce 109 - LOCATION reduce 109 - STATTXTTBL reduce 109 - VARRAY reduce 109 - STATIC reduce 109 - CONST reduce 109 - INC reduce 109 - DEC reduce 109 - ONCE reduce 109 - IF reduce 109 - SWITCHCASE reduce 109 - WHILE reduce 109 - FOR reduce 109 - FOREACH reduce 109 - CONTINUE reduce 109 - BREAK reduce 109 - RETURN reduce 109 - ACTIONNAME reduce 109 + QMARK reduce 219 + COMMA reduce 219 + LOR reduce 219 + LAND reduce 219 + LNOT reduce 219 + PLUS reduce 219 + MINUS reduce 219 + BITNOT reduce 219 + LPAREN reduce 219 + SEMICOLON reduce 219 + NAME reduce 219 + COLON reduce 219 + RPAREN reduce 219 + LBRACKET reduce 219 + VAR reduce 219 + RSQBRACKET reduce 219 + L2V reduce 219 + STATIC reduce 219 + CONST reduce 219 + INC reduce 219 + DEC reduce 219 + ONCE reduce 219 + IF reduce 219 + SWITCHCASE reduce 219 + WHILE reduce 219 + FOR reduce 219 + FOREACH reduce 219 + CONTINUE reduce 219 + BREAK reduce 219 + RETURN reduce 219 + ACTIONNAME reduce 219 -State 297: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - (124) nonConstExpr ::= constExpr PLUS nonConstExpr * - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - - QMARK shift 76 -- dropped by precedence - QMARK reduce 124 - COMMA reduce 124 - LOR reduce 124 - LAND reduce 124 - EQ reduce 124 - LE reduce 124 - LT reduce 124 - GE reduce 124 - GT reduce 124 - NE reduce 124 - BITOR shift 66 -- dropped by precedence - BITOR reduce 124 - BITXOR shift 65 -- dropped by precedence - BITXOR reduce 124 - BITAND shift 67 -- dropped by precedence - BITAND reduce 124 - LSHIFT shift 69 -- dropped by precedence - LSHIFT reduce 124 - RSHIFT shift 68 -- dropped by precedence - RSHIFT reduce 124 - PLUS shift 74 -- dropped by precedence - PLUS reduce 124 - MINUS shift 73 -- dropped by precedence - MINUS reduce 124 - DIVIDE shift 71 - DIVIDE reduce 124 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 124 -- dropped by precedence - MOD shift 70 - MOD reduce 124 -- dropped by precedence - BITNOT reduce 124 - LPAREN shift 23 - LPAREN reduce 124 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 124 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 124 -- dropped by precedence - SEMICOLON reduce 124 - NAME reduce 124 - COLON reduce 124 - FUNCTION reduce 124 - RPAREN reduce 124 - LBRACKET reduce 124 - VAR reduce 124 - NUMBER reduce 124 - RSQBRACKET reduce 124 - KILLS reduce 124 - TRGCONST reduce 124 - L2V reduce 124 - MAPSTRING reduce 124 - UNIT reduce 124 - SWITCH reduce 124 - LOCATION reduce 124 - STATTXTTBL reduce 124 - VARRAY reduce 124 - STATIC reduce 124 - CONST reduce 124 - INC reduce 124 - DEC reduce 124 - ONCE reduce 124 - IF reduce 124 - SWITCHCASE reduce 124 - WHILE reduce 124 - FOR reduce 124 - FOREACH reduce 124 - CONTINUE reduce 124 - BREAK reduce 124 - RETURN reduce 124 - ACTIONNAME reduce 124 +State 316: + logicAndExpr ::= logicAndExpr * LAND compExpr + logicAndExpr ::= logicAndExpr * LAND constCompExpr + (223) logicExpr ::= logicAndExpr * -State 298: - (87) expr ::= constExpr * - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr + QMARK reduce 223 + COMMA reduce 223 + LOR reduce 223 + LAND shift 70 + LNOT reduce 223 + PLUS reduce 223 + MINUS reduce 223 + BITNOT reduce 223 + LPAREN reduce 223 + SEMICOLON reduce 223 + NAME reduce 223 + COLON reduce 223 + RPAREN reduce 223 + LBRACKET reduce 223 + VAR reduce 223 + RSQBRACKET reduce 223 + L2V reduce 223 + STATIC reduce 223 + CONST reduce 223 + INC reduce 223 + DEC reduce 223 + ONCE reduce 223 + IF reduce 223 + SWITCHCASE reduce 223 + WHILE reduce 223 + FOR reduce 223 + FOREACH reduce 223 + CONTINUE reduce 223 + BREAK reduce 223 + RETURN reduce 223 + ACTIONNAME reduce 223 - QMARK reduce 87 - COMMA reduce 87 - LOR reduce 87 - LAND reduce 87 - EQ shift 100 - EQ reduce 87 -- dropped by precedence - LE shift 98 - LE reduce 87 -- dropped by precedence - LT shift 96 - LT reduce 87 -- dropped by precedence - GE shift 97 - GE reduce 87 -- dropped by precedence - GT shift 95 - GT reduce 87 -- dropped by precedence - NE shift 99 - NE reduce 87 -- dropped by precedence - BITOR shift 102 - BITOR reduce 87 -- dropped by precedence - BITXOR shift 101 - BITXOR reduce 87 -- dropped by precedence - BITAND shift 103 - BITAND reduce 87 -- dropped by precedence - LSHIFT shift 105 - LSHIFT reduce 87 -- dropped by precedence - RSHIFT shift 104 - RSHIFT reduce 87 -- dropped by precedence - PLUS shift 113 - PLUS reduce 87 -- dropped by precedence - MINUS shift 112 - MINUS reduce 87 -- dropped by precedence - DIVIDE shift 107 - DIVIDE reduce 87 -- dropped by precedence - MULTIPLY shift 108 - MULTIPLY reduce 87 -- dropped by precedence - MOD shift 106 - MOD reduce 87 -- dropped by precedence - BITNOT reduce 87 - LPAREN reduce 87 - LSQBRACKET reduce 87 - PERIOD reduce 87 - SEMICOLON reduce 87 - NAME reduce 87 - COLON reduce 87 - FUNCTION reduce 87 - RPAREN reduce 87 - LBRACKET reduce 87 - VAR reduce 87 - NUMBER reduce 87 - RSQBRACKET reduce 87 - KILLS reduce 87 - TRGCONST reduce 87 - L2V reduce 87 - MAPSTRING reduce 87 - UNIT reduce 87 - SWITCH reduce 87 - LOCATION reduce 87 - STATTXTTBL reduce 87 - VARRAY reduce 87 - STATIC reduce 87 - CONST reduce 87 - INC reduce 87 - DEC reduce 87 - ONCE reduce 87 - IF reduce 87 - SWITCHCASE reduce 87 - WHILE reduce 87 - FOR reduce 87 - FOREACH reduce 87 - CONTINUE reduce 87 - BREAK reduce 87 - RETURN reduce 87 - ACTIONNAME reduce 87 +State 317: + (218) logicAndExpr ::= compExpr * -State 299: - (79) constExpr ::= KILLS * + QMARK reduce 218 + COMMA reduce 218 + LOR reduce 218 + LAND reduce 218 + LNOT reduce 218 + PLUS reduce 218 + MINUS reduce 218 + BITNOT reduce 218 + LPAREN reduce 218 + SEMICOLON reduce 218 + NAME reduce 218 + COLON reduce 218 + RPAREN reduce 218 + LBRACKET reduce 218 + VAR reduce 218 + RSQBRACKET reduce 218 + L2V reduce 218 + STATIC reduce 218 + CONST reduce 218 + INC reduce 218 + DEC reduce 218 + ONCE reduce 218 + IF reduce 218 + SWITCHCASE reduce 218 + WHILE reduce 218 + FOR reduce 218 + FOREACH reduce 218 + CONTINUE reduce 218 + BREAK reduce 218 + RETURN reduce 218 + ACTIONNAME reduce 218 - QMARK reduce 79 - COMMA reduce 79 - LOR reduce 79 - LAND reduce 79 - EQ reduce 79 - LE reduce 79 - LT reduce 79 - GE reduce 79 - GT reduce 79 - NE reduce 79 - BITOR reduce 79 - BITXOR reduce 79 - BITAND reduce 79 - LSHIFT reduce 79 - RSHIFT reduce 79 - PLUS reduce 79 - MINUS reduce 79 - DIVIDE reduce 79 - MULTIPLY reduce 79 - MOD reduce 79 - BITNOT reduce 79 - LPAREN reduce 79 - LSQBRACKET reduce 79 - PERIOD reduce 79 - SEMICOLON reduce 79 - NAME reduce 79 - COLON reduce 79 - FUNCTION reduce 79 - RPAREN reduce 79 - LBRACKET reduce 79 - VAR reduce 79 - NUMBER reduce 79 - RSQBRACKET reduce 79 - KILLS reduce 79 - TRGCONST reduce 79 - L2V reduce 79 - MAPSTRING reduce 79 - UNIT reduce 79 - SWITCH reduce 79 - LOCATION reduce 79 - STATTXTTBL reduce 79 - VARRAY reduce 79 - STATIC reduce 79 - CONST reduce 79 - INC reduce 79 - DEC reduce 79 - ONCE reduce 79 - IF reduce 79 - SWITCHCASE reduce 79 - WHILE reduce 79 - FOR reduce 79 - FOREACH reduce 79 - CONTINUE reduce 79 - BREAK reduce 79 - RETURN reduce 79 - ACTIONNAME reduce 79 +State 318: + (221) logicAndExpr ::= constCompExpr LAND compExpr * + + QMARK reduce 221 + COMMA reduce 221 + LOR reduce 221 + LAND reduce 221 + LNOT reduce 221 + PLUS reduce 221 + MINUS reduce 221 + BITNOT reduce 221 + LPAREN reduce 221 + SEMICOLON reduce 221 + NAME reduce 221 + COLON reduce 221 + RPAREN reduce 221 + LBRACKET reduce 221 + VAR reduce 221 + RSQBRACKET reduce 221 + L2V reduce 221 + STATIC reduce 221 + CONST reduce 221 + INC reduce 221 + DEC reduce 221 + ONCE reduce 221 + IF reduce 221 + SWITCHCASE reduce 221 + WHILE reduce 221 + FOR reduce 221 + FOREACH reduce 221 + CONTINUE reduce 221 + BREAK reduce 221 + RETURN reduce 221 + ACTIONNAME reduce 221 + +State 319: + (217) constLogicAndExpr ::= constCompExpr * + logicAndExpr ::= constCompExpr * LAND compExpr + + QMARK reduce 217 + COMMA reduce 217 + LOR reduce 217 + LAND shift 71 + LNOT reduce 217 + PLUS reduce 217 + MINUS reduce 217 + BITNOT reduce 217 + LPAREN reduce 217 + SEMICOLON reduce 217 + NAME reduce 217 + COLON reduce 217 + RPAREN reduce 217 + LBRACKET reduce 217 + VAR reduce 217 + RSQBRACKET reduce 217 + L2V reduce 217 + STATIC reduce 217 + CONST reduce 217 + INC reduce 217 + DEC reduce 217 + ONCE reduce 217 + IF reduce 217 + SWITCHCASE reduce 217 + WHILE reduce 217 + FOR reduce 217 + FOREACH reduce 217 + CONTINUE reduce 217 + BREAK reduce 217 + RETURN reduce 217 + ACTIONNAME reduce 217 -State 300: - (84) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * +State 320: + (216) compExpr ::= eqExpr GT eqExpr * + + QMARK reduce 216 + COMMA reduce 216 + LOR reduce 216 + LAND reduce 216 + LNOT reduce 216 + PLUS reduce 216 + MINUS reduce 216 + BITNOT reduce 216 + LPAREN reduce 216 + SEMICOLON reduce 216 + NAME reduce 216 + COLON reduce 216 + RPAREN reduce 216 + LBRACKET reduce 216 + VAR reduce 216 + RSQBRACKET reduce 216 + L2V reduce 216 + STATIC reduce 216 + CONST reduce 216 + INC reduce 216 + DEC reduce 216 + ONCE reduce 216 + IF reduce 216 + SWITCHCASE reduce 216 + WHILE reduce 216 + FOR reduce 216 + FOREACH reduce 216 + CONTINUE reduce 216 + BREAK reduce 216 + RETURN reduce 216 + ACTIONNAME reduce 216 - QMARK reduce 84 - COMMA reduce 84 - LOR reduce 84 - LAND reduce 84 - EQ reduce 84 - LE reduce 84 - LT reduce 84 - GE reduce 84 - GT reduce 84 - NE reduce 84 - BITOR reduce 84 - BITXOR reduce 84 - BITAND reduce 84 - LSHIFT reduce 84 - RSHIFT reduce 84 - PLUS reduce 84 - MINUS reduce 84 - DIVIDE reduce 84 - MULTIPLY reduce 84 - MOD reduce 84 - BITNOT reduce 84 - LPAREN reduce 84 - LSQBRACKET reduce 84 - PERIOD reduce 84 - SEMICOLON reduce 84 - NAME reduce 84 - COLON reduce 84 - FUNCTION reduce 84 - RPAREN reduce 84 - LBRACKET reduce 84 - VAR reduce 84 - NUMBER reduce 84 - RSQBRACKET reduce 84 - KILLS reduce 84 - TRGCONST reduce 84 - L2V reduce 84 - MAPSTRING reduce 84 - UNIT reduce 84 - SWITCH reduce 84 - LOCATION reduce 84 - STATTXTTBL reduce 84 - VARRAY reduce 84 - STATIC reduce 84 - CONST reduce 84 - INC reduce 84 - DEC reduce 84 - ONCE reduce 84 - IF reduce 84 - SWITCHCASE reduce 84 - WHILE reduce 84 - FOR reduce 84 - FOREACH reduce 84 - CONTINUE reduce 84 - BREAK reduce 84 - RETURN reduce 84 - ACTIONNAME reduce 84 +State 321: + (215) compExpr ::= eqExpr GT constEqExpr * -State 301: - (83) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * - - QMARK reduce 83 - COMMA reduce 83 - LOR reduce 83 - LAND reduce 83 - EQ reduce 83 - LE reduce 83 - LT reduce 83 - GE reduce 83 - GT reduce 83 - NE reduce 83 - BITOR reduce 83 - BITXOR reduce 83 - BITAND reduce 83 - LSHIFT reduce 83 - RSHIFT reduce 83 - PLUS reduce 83 - MINUS reduce 83 - DIVIDE reduce 83 - MULTIPLY reduce 83 - MOD reduce 83 - BITNOT reduce 83 - LPAREN reduce 83 - LSQBRACKET reduce 83 - PERIOD reduce 83 - SEMICOLON reduce 83 - NAME reduce 83 - COLON reduce 83 - FUNCTION reduce 83 - RPAREN reduce 83 - LBRACKET reduce 83 - VAR reduce 83 - NUMBER reduce 83 - RSQBRACKET reduce 83 - KILLS reduce 83 - TRGCONST reduce 83 - L2V reduce 83 - MAPSTRING reduce 83 - UNIT reduce 83 - SWITCH reduce 83 - LOCATION reduce 83 - STATTXTTBL reduce 83 - VARRAY reduce 83 - STATIC reduce 83 - CONST reduce 83 - INC reduce 83 - DEC reduce 83 - ONCE reduce 83 - IF reduce 83 - SWITCHCASE reduce 83 - WHILE reduce 83 - FOR reduce 83 - FOREACH reduce 83 - CONTINUE reduce 83 - BREAK reduce 83 - RETURN reduce 83 - ACTIONNAME reduce 83 + QMARK reduce 215 + COMMA reduce 215 + LOR reduce 215 + LAND reduce 215 + LNOT reduce 215 + PLUS reduce 215 + MINUS reduce 215 + BITNOT reduce 215 + LPAREN reduce 215 + SEMICOLON reduce 215 + NAME reduce 215 + COLON reduce 215 + RPAREN reduce 215 + LBRACKET reduce 215 + VAR reduce 215 + RSQBRACKET reduce 215 + L2V reduce 215 + STATIC reduce 215 + CONST reduce 215 + INC reduce 215 + DEC reduce 215 + ONCE reduce 215 + IF reduce 215 + SWITCHCASE reduce 215 + WHILE reduce 215 + FOR reduce 215 + FOREACH reduce 215 + CONTINUE reduce 215 + BREAK reduce 215 + RETURN reduce 215 + ACTIONNAME reduce 215 -State 302: - (82) nonConstExpr ::= nonConstExpr PERIOD NAME * - - QMARK reduce 82 - COMMA reduce 82 - LOR reduce 82 - LAND reduce 82 - EQ reduce 82 - LE reduce 82 - LT reduce 82 - GE reduce 82 - GT reduce 82 - NE reduce 82 - BITOR reduce 82 - BITXOR reduce 82 - BITAND reduce 82 - LSHIFT reduce 82 - RSHIFT reduce 82 - PLUS reduce 82 - MINUS reduce 82 - DIVIDE reduce 82 - MULTIPLY reduce 82 - MOD reduce 82 - BITNOT reduce 82 - LPAREN reduce 82 - LSQBRACKET reduce 82 - PERIOD reduce 82 - SEMICOLON reduce 82 - NAME reduce 82 - COLON reduce 82 - FUNCTION reduce 82 - RPAREN reduce 82 - LBRACKET reduce 82 - VAR reduce 82 - NUMBER reduce 82 - RSQBRACKET reduce 82 - KILLS reduce 82 - TRGCONST reduce 82 - L2V reduce 82 - MAPSTRING reduce 82 - UNIT reduce 82 - SWITCH reduce 82 - LOCATION reduce 82 - STATTXTTBL reduce 82 - VARRAY reduce 82 - STATIC reduce 82 - CONST reduce 82 - INC reduce 82 - DEC reduce 82 - ONCE reduce 82 - IF reduce 82 - SWITCHCASE reduce 82 - WHILE reduce 82 - FOR reduce 82 - FOREACH reduce 82 - CONTINUE reduce 82 - BREAK reduce 82 - RETURN reduce 82 - ACTIONNAME reduce 82 +State 322: + (213) compExpr ::= eqExpr LT eqExpr * -State 303: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - logicExpr ::= nonConstExpr * EQ constExpr - logicExpr ::= nonConstExpr * EQ nonConstExpr - logicExpr ::= nonConstExpr * NE constExpr - logicExpr ::= nonConstExpr * NE nonConstExpr - logicExpr ::= nonConstExpr * LE constExpr - logicExpr ::= nonConstExpr * LE nonConstExpr - logicExpr ::= nonConstExpr * GE constExpr - logicExpr ::= nonConstExpr * GE nonConstExpr - logicExpr ::= nonConstExpr * LT constExpr - logicExpr ::= nonConstExpr * LT nonConstExpr - logicExpr ::= nonConstExpr * GT constExpr - logicExpr ::= nonConstExpr * GT nonConstExpr - (183) logicExpr ::= nonConstExpr * - - QMARK shift 76 - QMARK reduce 183 -- dropped by precedence - COMMA reduce 183 - LOR reduce 183 - LAND reduce 183 - EQ shift 94 - EQ reduce 183 -- dropped by precedence - LE shift 92 - LE reduce 183 -- dropped by precedence - LT shift 90 - LT reduce 183 -- dropped by precedence - GE shift 91 - GE reduce 183 -- dropped by precedence - GT shift 89 - GT reduce 183 -- dropped by precedence - NE shift 93 - NE reduce 183 -- dropped by precedence - BITOR shift 66 - BITOR reduce 183 -- dropped by precedence - BITXOR shift 65 - BITXOR reduce 183 -- dropped by precedence - BITAND shift 67 - BITAND reduce 183 -- dropped by precedence - LSHIFT shift 69 - LSHIFT reduce 183 -- dropped by precedence - RSHIFT shift 68 - RSHIFT reduce 183 -- dropped by precedence - PLUS shift 74 - PLUS reduce 183 -- dropped by precedence - MINUS shift 73 - MINUS reduce 183 -- dropped by precedence - DIVIDE shift 71 - DIVIDE reduce 183 -- dropped by precedence - MULTIPLY shift 72 - MULTIPLY reduce 183 -- dropped by precedence - MOD shift 70 - MOD reduce 183 -- dropped by precedence - BITNOT reduce 183 - LPAREN shift 23 - LPAREN reduce 183 -- dropped by precedence - LSQBRACKET shift 79 - LSQBRACKET reduce 183 -- dropped by precedence - PERIOD shift 442 - PERIOD reduce 183 -- dropped by precedence - SEMICOLON reduce 183 - NAME reduce 183 - COLON reduce 183 - FUNCTION reduce 183 - RPAREN reduce 183 - LBRACKET reduce 183 - VAR reduce 183 - NUMBER reduce 183 - RSQBRACKET reduce 183 - KILLS reduce 183 - TRGCONST reduce 183 - L2V reduce 183 - MAPSTRING reduce 183 - UNIT reduce 183 - SWITCH reduce 183 - LOCATION reduce 183 - STATTXTTBL reduce 183 - VARRAY reduce 183 - STATIC reduce 183 - CONST reduce 183 - INC reduce 183 - DEC reduce 183 - ONCE reduce 183 - IF reduce 183 - SWITCHCASE reduce 183 - WHILE reduce 183 - FOR reduce 183 - FOREACH reduce 183 - CONTINUE reduce 183 - BREAK reduce 183 - RETURN reduce 183 - ACTIONNAME reduce 183 + QMARK reduce 213 + COMMA reduce 213 + LOR reduce 213 + LAND reduce 213 + LNOT reduce 213 + PLUS reduce 213 + MINUS reduce 213 + BITNOT reduce 213 + LPAREN reduce 213 + SEMICOLON reduce 213 + NAME reduce 213 + COLON reduce 213 + RPAREN reduce 213 + LBRACKET reduce 213 + VAR reduce 213 + RSQBRACKET reduce 213 + L2V reduce 213 + STATIC reduce 213 + CONST reduce 213 + INC reduce 213 + DEC reduce 213 + ONCE reduce 213 + IF reduce 213 + SWITCHCASE reduce 213 + WHILE reduce 213 + FOR reduce 213 + FOREACH reduce 213 + CONTINUE reduce 213 + BREAK reduce 213 + RETURN reduce 213 + ACTIONNAME reduce 213 -State 304: - (81) nonConstExpr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN +State 323: + (212) compExpr ::= eqExpr LT constEqExpr * - QMARK reduce 81 - COMMA reduce 81 - LOR reduce 81 - LAND reduce 81 - EQ reduce 81 - LE reduce 81 - LT reduce 81 - GE reduce 81 - GT reduce 81 - NE reduce 81 - BITOR reduce 81 - BITXOR reduce 81 - BITAND reduce 81 - LSHIFT reduce 81 - RSHIFT reduce 81 - PLUS reduce 81 - MINUS reduce 81 - DIVIDE reduce 81 - MULTIPLY reduce 81 - MOD reduce 81 - BITNOT reduce 81 - LPAREN shift 24 - LPAREN reduce 81 -- dropped by precedence - LSQBRACKET reduce 81 - PERIOD reduce 81 - SEMICOLON reduce 81 - NAME reduce 81 - COLON reduce 81 - FUNCTION reduce 81 - RPAREN reduce 81 - LBRACKET reduce 81 - VAR reduce 81 - NUMBER reduce 81 - RSQBRACKET reduce 81 - KILLS reduce 81 - TRGCONST reduce 81 - L2V reduce 81 - MAPSTRING reduce 81 - UNIT reduce 81 - SWITCH reduce 81 - LOCATION reduce 81 - STATTXTTBL reduce 81 - VARRAY reduce 81 - STATIC reduce 81 - CONST reduce 81 - INC reduce 81 - DEC reduce 81 - ONCE reduce 81 - IF reduce 81 - SWITCHCASE reduce 81 - WHILE reduce 81 - FOR reduce 81 - FOREACH reduce 81 - CONTINUE reduce 81 - BREAK reduce 81 - RETURN reduce 81 - ACTIONNAME reduce 81 + QMARK reduce 212 + COMMA reduce 212 + LOR reduce 212 + LAND reduce 212 + LNOT reduce 212 + PLUS reduce 212 + MINUS reduce 212 + BITNOT reduce 212 + LPAREN reduce 212 + SEMICOLON reduce 212 + NAME reduce 212 + COLON reduce 212 + RPAREN reduce 212 + LBRACKET reduce 212 + VAR reduce 212 + RSQBRACKET reduce 212 + L2V reduce 212 + STATIC reduce 212 + CONST reduce 212 + INC reduce 212 + DEC reduce 212 + ONCE reduce 212 + IF reduce 212 + SWITCHCASE reduce 212 + WHILE reduce 212 + FOR reduce 212 + FOREACH reduce 212 + CONTINUE reduce 212 + BREAK reduce 212 + RETURN reduce 212 + ACTIONNAME reduce 212 -State 305: - (80) constExpr ::= TRGCONST * +State 324: + (210) compExpr ::= eqExpr GE eqExpr * - QMARK reduce 80 - COMMA reduce 80 - LOR reduce 80 - LAND reduce 80 - EQ reduce 80 - LE reduce 80 - LT reduce 80 - GE reduce 80 - GT reduce 80 - NE reduce 80 - BITOR reduce 80 - BITXOR reduce 80 - BITAND reduce 80 - LSHIFT reduce 80 - RSHIFT reduce 80 - PLUS reduce 80 - MINUS reduce 80 - DIVIDE reduce 80 - MULTIPLY reduce 80 - MOD reduce 80 - BITNOT reduce 80 - LPAREN reduce 80 - LSQBRACKET reduce 80 - PERIOD reduce 80 - SEMICOLON reduce 80 - NAME reduce 80 - COLON reduce 80 - FUNCTION reduce 80 - RPAREN reduce 80 - LBRACKET reduce 80 - VAR reduce 80 - NUMBER reduce 80 - RSQBRACKET reduce 80 - KILLS reduce 80 - TRGCONST reduce 80 - L2V reduce 80 - MAPSTRING reduce 80 - UNIT reduce 80 - SWITCH reduce 80 - LOCATION reduce 80 - STATTXTTBL reduce 80 - VARRAY reduce 80 - STATIC reduce 80 - CONST reduce 80 - INC reduce 80 - DEC reduce 80 - ONCE reduce 80 - IF reduce 80 - SWITCHCASE reduce 80 - WHILE reduce 80 - FOR reduce 80 - FOREACH reduce 80 - CONTINUE reduce 80 - BREAK reduce 80 - RETURN reduce 80 - ACTIONNAME reduce 80 + QMARK reduce 210 + COMMA reduce 210 + LOR reduce 210 + LAND reduce 210 + LNOT reduce 210 + PLUS reduce 210 + MINUS reduce 210 + BITNOT reduce 210 + LPAREN reduce 210 + SEMICOLON reduce 210 + NAME reduce 210 + COLON reduce 210 + RPAREN reduce 210 + LBRACKET reduce 210 + VAR reduce 210 + RSQBRACKET reduce 210 + L2V reduce 210 + STATIC reduce 210 + CONST reduce 210 + INC reduce 210 + DEC reduce 210 + ONCE reduce 210 + IF reduce 210 + SWITCHCASE reduce 210 + WHILE reduce 210 + FOR reduce 210 + FOREACH reduce 210 + CONTINUE reduce 210 + BREAK reduce 210 + RETURN reduce 210 + ACTIONNAME reduce 210 -State 306: - (79) constExpr ::= KILLS * - logicExpr ::= KILLS * LPAREN fArgs RPAREN +State 325: + (209) compExpr ::= eqExpr GE constEqExpr * - QMARK reduce 79 - COMMA reduce 79 - LOR reduce 79 - LAND reduce 79 - EQ reduce 79 - LE reduce 79 - LT reduce 79 - GE reduce 79 - GT reduce 79 - NE reduce 79 - BITOR reduce 79 - BITXOR reduce 79 - BITAND reduce 79 - LSHIFT reduce 79 - RSHIFT reduce 79 - PLUS reduce 79 - MINUS reduce 79 - DIVIDE reduce 79 - MULTIPLY reduce 79 - MOD reduce 79 - BITNOT reduce 79 - LPAREN shift 25 - LPAREN reduce 79 -- dropped by precedence - LSQBRACKET reduce 79 - PERIOD reduce 79 - SEMICOLON reduce 79 - NAME reduce 79 - COLON reduce 79 - FUNCTION reduce 79 - RPAREN reduce 79 - LBRACKET reduce 79 - VAR reduce 79 - NUMBER reduce 79 - RSQBRACKET reduce 79 - KILLS reduce 79 - TRGCONST reduce 79 - L2V reduce 79 - MAPSTRING reduce 79 - UNIT reduce 79 - SWITCH reduce 79 - LOCATION reduce 79 - STATTXTTBL reduce 79 - VARRAY reduce 79 - STATIC reduce 79 - CONST reduce 79 - INC reduce 79 - DEC reduce 79 - ONCE reduce 79 - IF reduce 79 - SWITCHCASE reduce 79 - WHILE reduce 79 - FOR reduce 79 - FOREACH reduce 79 - CONTINUE reduce 79 - BREAK reduce 79 - RETURN reduce 79 - ACTIONNAME reduce 79 + QMARK reduce 209 + COMMA reduce 209 + LOR reduce 209 + LAND reduce 209 + LNOT reduce 209 + PLUS reduce 209 + MINUS reduce 209 + BITNOT reduce 209 + LPAREN reduce 209 + SEMICOLON reduce 209 + NAME reduce 209 + COLON reduce 209 + RPAREN reduce 209 + LBRACKET reduce 209 + VAR reduce 209 + RSQBRACKET reduce 209 + L2V reduce 209 + STATIC reduce 209 + CONST reduce 209 + INC reduce 209 + DEC reduce 209 + ONCE reduce 209 + IF reduce 209 + SWITCHCASE reduce 209 + WHILE reduce 209 + FOR reduce 209 + FOREACH reduce 209 + CONTINUE reduce 209 + BREAK reduce 209 + RETURN reduce 209 + ACTIONNAME reduce 209 + +State 326: + (207) compExpr ::= eqExpr LE eqExpr * + + QMARK reduce 207 + COMMA reduce 207 + LOR reduce 207 + LAND reduce 207 + LNOT reduce 207 + PLUS reduce 207 + MINUS reduce 207 + BITNOT reduce 207 + LPAREN reduce 207 + SEMICOLON reduce 207 + NAME reduce 207 + COLON reduce 207 + RPAREN reduce 207 + LBRACKET reduce 207 + VAR reduce 207 + RSQBRACKET reduce 207 + L2V reduce 207 + STATIC reduce 207 + CONST reduce 207 + INC reduce 207 + DEC reduce 207 + ONCE reduce 207 + IF reduce 207 + SWITCHCASE reduce 207 + WHILE reduce 207 + FOR reduce 207 + FOREACH reduce 207 + CONTINUE reduce 207 + BREAK reduce 207 + RETURN reduce 207 + ACTIONNAME reduce 207 -State 307: - (78) constExpr ::= NUMBER * +State 327: + (206) compExpr ::= eqExpr LE constEqExpr * - QMARK reduce 78 - COMMA reduce 78 - LOR reduce 78 - LAND reduce 78 - EQ reduce 78 - LE reduce 78 - LT reduce 78 - GE reduce 78 - GT reduce 78 - NE reduce 78 - BITOR reduce 78 - BITXOR reduce 78 - BITAND reduce 78 - LSHIFT reduce 78 - RSHIFT reduce 78 - PLUS reduce 78 - MINUS reduce 78 - DIVIDE reduce 78 - MULTIPLY reduce 78 - MOD reduce 78 - BITNOT reduce 78 - LPAREN reduce 78 - LSQBRACKET reduce 78 - PERIOD reduce 78 - SEMICOLON reduce 78 - NAME reduce 78 - COLON reduce 78 - FUNCTION reduce 78 - RPAREN reduce 78 - LBRACKET reduce 78 - VAR reduce 78 - NUMBER reduce 78 - RSQBRACKET reduce 78 - KILLS reduce 78 - TRGCONST reduce 78 - L2V reduce 78 - MAPSTRING reduce 78 - UNIT reduce 78 - SWITCH reduce 78 - LOCATION reduce 78 - STATTXTTBL reduce 78 - VARRAY reduce 78 - STATIC reduce 78 - CONST reduce 78 - INC reduce 78 - DEC reduce 78 - ONCE reduce 78 - IF reduce 78 - SWITCHCASE reduce 78 - WHILE reduce 78 - FOR reduce 78 - FOREACH reduce 78 - CONTINUE reduce 78 - BREAK reduce 78 - RETURN reduce 78 - ACTIONNAME reduce 78 + QMARK reduce 206 + COMMA reduce 206 + LOR reduce 206 + LAND reduce 206 + LNOT reduce 206 + PLUS reduce 206 + MINUS reduce 206 + BITNOT reduce 206 + LPAREN reduce 206 + SEMICOLON reduce 206 + NAME reduce 206 + COLON reduce 206 + RPAREN reduce 206 + LBRACKET reduce 206 + VAR reduce 206 + RSQBRACKET reduce 206 + L2V reduce 206 + STATIC reduce 206 + CONST reduce 206 + INC reduce 206 + DEC reduce 206 + ONCE reduce 206 + IF reduce 206 + SWITCHCASE reduce 206 + WHILE reduce 206 + FOR reduce 206 + FOREACH reduce 206 + CONTINUE reduce 206 + BREAK reduce 206 + RETURN reduce 206 + ACTIONNAME reduce 206 -State 308: - (73) nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET * - - QMARK reduce 73 - COMMA reduce 73 - LOR reduce 73 - LAND reduce 73 - EQ reduce 73 - LE reduce 73 - LT reduce 73 - GE reduce 73 - GT reduce 73 - NE reduce 73 - BITOR reduce 73 - BITXOR reduce 73 - BITAND reduce 73 - LSHIFT reduce 73 - RSHIFT reduce 73 - PLUS reduce 73 - MINUS reduce 73 - DIVIDE reduce 73 - MULTIPLY reduce 73 - MOD reduce 73 - BITNOT reduce 73 - LPAREN reduce 73 - LSQBRACKET reduce 73 - PERIOD reduce 73 - SEMICOLON reduce 73 - NAME reduce 73 - COLON reduce 73 - FUNCTION reduce 73 - RPAREN reduce 73 - LBRACKET reduce 73 - VAR reduce 73 - NUMBER reduce 73 - RSQBRACKET reduce 73 - KILLS reduce 73 - TRGCONST reduce 73 - L2V reduce 73 - MAPSTRING reduce 73 - UNIT reduce 73 - SWITCH reduce 73 - LOCATION reduce 73 - STATTXTTBL reduce 73 - VARRAY reduce 73 - STATIC reduce 73 - CONST reduce 73 - INC reduce 73 - DEC reduce 73 - ONCE reduce 73 - IF reduce 73 - SWITCHCASE reduce 73 - WHILE reduce 73 - FOR reduce 73 - FOREACH reduce 73 - CONTINUE reduce 73 - BREAK reduce 73 - RETURN reduce 73 - ACTIONNAME reduce 73 +State 328: + (214) compExpr ::= constEqExpr GT eqExpr * -State 309: - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (108) nonConstExpr ::= funcexpr * - - QMARK reduce 108 - COMMA reduce 108 - LOR reduce 108 - LAND reduce 108 - EQ reduce 108 - LE reduce 108 - LT reduce 108 - GE reduce 108 - GT reduce 108 - NE reduce 108 - BITOR reduce 108 - BITXOR reduce 108 - BITAND reduce 108 - LSHIFT reduce 108 - RSHIFT reduce 108 - PLUS reduce 108 - MINUS reduce 108 - DIVIDE reduce 108 - MULTIPLY reduce 108 - MOD reduce 108 - BITNOT reduce 108 - LPAREN reduce 108 - LSQBRACKET shift 547 - LSQBRACKET reduce 108 -- dropped by precedence - PERIOD reduce 108 - SEMICOLON reduce 108 - NAME reduce 108 - COLON reduce 108 - FUNCTION reduce 108 - RPAREN reduce 108 - LBRACKET reduce 108 - VAR reduce 108 - NUMBER reduce 108 - RSQBRACKET reduce 108 - KILLS reduce 108 - TRGCONST reduce 108 - L2V reduce 108 - MAPSTRING reduce 108 - UNIT reduce 108 - SWITCH reduce 108 - LOCATION reduce 108 - STATTXTTBL reduce 108 - VARRAY reduce 108 - STATIC reduce 108 - CONST reduce 108 - INC reduce 108 - DEC reduce 108 - ONCE reduce 108 - IF reduce 108 - SWITCHCASE reduce 108 - WHILE reduce 108 - FOR reduce 108 - FOREACH reduce 108 - CONTINUE reduce 108 - BREAK reduce 108 - RETURN reduce 108 - ACTIONNAME reduce 108 + QMARK reduce 214 + COMMA reduce 214 + LOR reduce 214 + LAND reduce 214 + LNOT reduce 214 + PLUS reduce 214 + MINUS reduce 214 + BITNOT reduce 214 + LPAREN reduce 214 + SEMICOLON reduce 214 + NAME reduce 214 + COLON reduce 214 + RPAREN reduce 214 + LBRACKET reduce 214 + VAR reduce 214 + RSQBRACKET reduce 214 + L2V reduce 214 + STATIC reduce 214 + CONST reduce 214 + INC reduce 214 + DEC reduce 214 + ONCE reduce 214 + IF reduce 214 + SWITCHCASE reduce 214 + WHILE reduce 214 + FOR reduce 214 + FOREACH reduce 214 + CONTINUE reduce 214 + BREAK reduce 214 + RETURN reduce 214 + ACTIONNAME reduce 214 -State 310: - (74) exprList_nonEmpty ::= expr * - - COMMA reduce 74 - PLUS reduce 74 - MINUS reduce 74 - BITNOT reduce 74 - LPAREN reduce 74 - LSQBRACKET reduce 74 - SEMICOLON reduce 74 - NAME reduce 74 - COLON reduce 74 - FUNCTION reduce 74 - RPAREN reduce 74 - LBRACKET reduce 74 - VAR reduce 74 - NUMBER reduce 74 - RSQBRACKET reduce 74 - KILLS reduce 74 - TRGCONST reduce 74 - L2V reduce 74 - MAPSTRING reduce 74 - UNIT reduce 74 - SWITCH reduce 74 - LOCATION reduce 74 - STATTXTTBL reduce 74 - VARRAY reduce 74 - STATIC reduce 74 - CONST reduce 74 - INC reduce 74 - DEC reduce 74 - ONCE reduce 74 - IF reduce 74 - SWITCHCASE reduce 74 - WHILE reduce 74 - FOR reduce 74 - FOREACH reduce 74 - CONTINUE reduce 74 - BREAK reduce 74 - RETURN reduce 74 - ACTIONNAME reduce 74 +State 329: + (203) constCompExpr ::= constEqExpr GT constEqExpr * -State 311: - (72) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * - - COMMA reduce 72 - PLUS reduce 72 - MINUS reduce 72 - BITNOT reduce 72 - LPAREN reduce 72 - LSQBRACKET reduce 72 - SEMICOLON reduce 72 - NAME reduce 72 - COLON reduce 72 - FUNCTION reduce 72 - RPAREN reduce 72 - LBRACKET reduce 72 - VAR reduce 72 - NUMBER reduce 72 - RSQBRACKET reduce 72 - KILLS reduce 72 - TRGCONST reduce 72 - L2V reduce 72 - MAPSTRING reduce 72 - UNIT reduce 72 - SWITCH reduce 72 - LOCATION reduce 72 - STATTXTTBL reduce 72 - VARRAY reduce 72 - STATIC reduce 72 - CONST reduce 72 - INC reduce 72 - DEC reduce 72 - ONCE reduce 72 - IF reduce 72 - SWITCHCASE reduce 72 - WHILE reduce 72 - FOR reduce 72 - FOREACH reduce 72 - CONTINUE reduce 72 - BREAK reduce 72 - RETURN reduce 72 - ACTIONNAME reduce 72 + QMARK reduce 203 + COMMA reduce 203 + LOR reduce 203 + LAND reduce 203 + LNOT reduce 203 + PLUS reduce 203 + MINUS reduce 203 + BITNOT reduce 203 + LPAREN reduce 203 + SEMICOLON reduce 203 + NAME reduce 203 + COLON reduce 203 + RPAREN reduce 203 + LBRACKET reduce 203 + VAR reduce 203 + RSQBRACKET reduce 203 + L2V reduce 203 + STATIC reduce 203 + CONST reduce 203 + INC reduce 203 + DEC reduce 203 + ONCE reduce 203 + IF reduce 203 + SWITCHCASE reduce 203 + WHILE reduce 203 + FOR reduce 203 + FOREACH reduce 203 + CONTINUE reduce 203 + BREAK reduce 203 + RETURN reduce 203 + ACTIONNAME reduce 203 -State 312: - (75) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * - - COMMA reduce 75 - PLUS reduce 75 - MINUS reduce 75 - BITNOT reduce 75 - LPAREN reduce 75 - LSQBRACKET reduce 75 - SEMICOLON reduce 75 - NAME reduce 75 - COLON reduce 75 - FUNCTION reduce 75 - RPAREN reduce 75 - LBRACKET reduce 75 - VAR reduce 75 - NUMBER reduce 75 - RSQBRACKET reduce 75 - KILLS reduce 75 - TRGCONST reduce 75 - L2V reduce 75 - MAPSTRING reduce 75 - UNIT reduce 75 - SWITCH reduce 75 - LOCATION reduce 75 - STATTXTTBL reduce 75 - VARRAY reduce 75 - STATIC reduce 75 - CONST reduce 75 - INC reduce 75 - DEC reduce 75 - ONCE reduce 75 - IF reduce 75 - SWITCHCASE reduce 75 - WHILE reduce 75 - FOR reduce 75 - FOREACH reduce 75 - CONTINUE reduce 75 - BREAK reduce 75 - RETURN reduce 75 - ACTIONNAME reduce 75 +State 330: + (211) compExpr ::= constEqExpr LT eqExpr * -State 313: - (59) bodyStmtList ::= bodyStmt * + QMARK reduce 211 + COMMA reduce 211 + LOR reduce 211 + LAND reduce 211 + LNOT reduce 211 + PLUS reduce 211 + MINUS reduce 211 + BITNOT reduce 211 + LPAREN reduce 211 + SEMICOLON reduce 211 + NAME reduce 211 + COLON reduce 211 + RPAREN reduce 211 + LBRACKET reduce 211 + VAR reduce 211 + RSQBRACKET reduce 211 + L2V reduce 211 + STATIC reduce 211 + CONST reduce 211 + INC reduce 211 + DEC reduce 211 + ONCE reduce 211 + IF reduce 211 + SWITCHCASE reduce 211 + WHILE reduce 211 + FOR reduce 211 + FOREACH reduce 211 + CONTINUE reduce 211 + BREAK reduce 211 + RETURN reduce 211 + ACTIONNAME reduce 211 - PLUS reduce 59 - MINUS reduce 59 - BITNOT reduce 59 - LPAREN reduce 59 - LSQBRACKET reduce 59 - SEMICOLON reduce 59 - NAME reduce 59 - FUNCTION reduce 59 - LBRACKET reduce 59 - VAR reduce 59 - RBRACKET reduce 59 - NUMBER reduce 59 - KILLS reduce 59 - TRGCONST reduce 59 - L2V reduce 59 - MAPSTRING reduce 59 - UNIT reduce 59 - SWITCH reduce 59 - LOCATION reduce 59 - STATTXTTBL reduce 59 - VARRAY reduce 59 - STATIC reduce 59 - CONST reduce 59 - INC reduce 59 - DEC reduce 59 - ONCE reduce 59 - IF reduce 59 - SWITCHCASE reduce 59 - CASE reduce 59 - DEFAULT reduce 59 - WHILE reduce 59 - FOR reduce 59 - FOREACH reduce 59 - CONTINUE reduce 59 - BREAK reduce 59 - RETURN reduce 59 - ACTIONNAME reduce 59 +State 331: + (202) constCompExpr ::= constEqExpr LT constEqExpr * -State 314: - (232) case_clause ::= case_start exprList_nonEmpty COLON * + QMARK reduce 202 + COMMA reduce 202 + LOR reduce 202 + LAND reduce 202 + LNOT reduce 202 + PLUS reduce 202 + MINUS reduce 202 + BITNOT reduce 202 + LPAREN reduce 202 + SEMICOLON reduce 202 + NAME reduce 202 + COLON reduce 202 + RPAREN reduce 202 + LBRACKET reduce 202 + VAR reduce 202 + RSQBRACKET reduce 202 + L2V reduce 202 + STATIC reduce 202 + CONST reduce 202 + INC reduce 202 + DEC reduce 202 + ONCE reduce 202 + IF reduce 202 + SWITCHCASE reduce 202 + WHILE reduce 202 + FOR reduce 202 + FOREACH reduce 202 + CONTINUE reduce 202 + BREAK reduce 202 + RETURN reduce 202 + ACTIONNAME reduce 202 - PLUS reduce 232 - MINUS reduce 232 - BITNOT reduce 232 - LPAREN reduce 232 - LSQBRACKET reduce 232 - SEMICOLON reduce 232 - NAME reduce 232 - FUNCTION reduce 232 - LBRACKET reduce 232 - VAR reduce 232 - RBRACKET reduce 232 - NUMBER reduce 232 - KILLS reduce 232 - TRGCONST reduce 232 - L2V reduce 232 - MAPSTRING reduce 232 - UNIT reduce 232 - SWITCH reduce 232 - LOCATION reduce 232 - STATTXTTBL reduce 232 - VARRAY reduce 232 - STATIC reduce 232 - CONST reduce 232 - INC reduce 232 - DEC reduce 232 - ONCE reduce 232 - IF reduce 232 - SWITCHCASE reduce 232 - CASE reduce 232 - DEFAULT reduce 232 - WHILE reduce 232 - FOR reduce 232 - FOREACH reduce 232 - CONTINUE reduce 232 - BREAK reduce 232 - RETURN reduce 232 - ACTIONNAME reduce 232 +State 332: + (208) compExpr ::= constEqExpr GE eqExpr * -State 315: - (61) bodyStmtList ::= bodyStmtList error * + QMARK reduce 208 + COMMA reduce 208 + LOR reduce 208 + LAND reduce 208 + LNOT reduce 208 + PLUS reduce 208 + MINUS reduce 208 + BITNOT reduce 208 + LPAREN reduce 208 + SEMICOLON reduce 208 + NAME reduce 208 + COLON reduce 208 + RPAREN reduce 208 + LBRACKET reduce 208 + VAR reduce 208 + RSQBRACKET reduce 208 + L2V reduce 208 + STATIC reduce 208 + CONST reduce 208 + INC reduce 208 + DEC reduce 208 + ONCE reduce 208 + IF reduce 208 + SWITCHCASE reduce 208 + WHILE reduce 208 + FOR reduce 208 + FOREACH reduce 208 + CONTINUE reduce 208 + BREAK reduce 208 + RETURN reduce 208 + ACTIONNAME reduce 208 - PLUS reduce 61 - MINUS reduce 61 - BITNOT reduce 61 - LPAREN reduce 61 - LSQBRACKET reduce 61 - SEMICOLON reduce 61 - NAME reduce 61 - FUNCTION reduce 61 - LBRACKET reduce 61 - VAR reduce 61 - RBRACKET reduce 61 - NUMBER reduce 61 - KILLS reduce 61 - TRGCONST reduce 61 - L2V reduce 61 - MAPSTRING reduce 61 - UNIT reduce 61 - SWITCH reduce 61 - LOCATION reduce 61 - STATTXTTBL reduce 61 - VARRAY reduce 61 - STATIC reduce 61 - CONST reduce 61 - INC reduce 61 - DEC reduce 61 - ONCE reduce 61 - IF reduce 61 - SWITCHCASE reduce 61 - CASE reduce 61 - DEFAULT reduce 61 - WHILE reduce 61 - FOR reduce 61 - FOREACH reduce 61 - CONTINUE reduce 61 - BREAK reduce 61 - RETURN reduce 61 - ACTIONNAME reduce 61 +State 333: + (201) constCompExpr ::= constEqExpr GE constEqExpr * -State 316: - (60) bodyStmtList ::= bodyStmtList bodyStmt * + QMARK reduce 201 + COMMA reduce 201 + LOR reduce 201 + LAND reduce 201 + LNOT reduce 201 + PLUS reduce 201 + MINUS reduce 201 + BITNOT reduce 201 + LPAREN reduce 201 + SEMICOLON reduce 201 + NAME reduce 201 + COLON reduce 201 + RPAREN reduce 201 + LBRACKET reduce 201 + VAR reduce 201 + RSQBRACKET reduce 201 + L2V reduce 201 + STATIC reduce 201 + CONST reduce 201 + INC reduce 201 + DEC reduce 201 + ONCE reduce 201 + IF reduce 201 + SWITCHCASE reduce 201 + WHILE reduce 201 + FOR reduce 201 + FOREACH reduce 201 + CONTINUE reduce 201 + BREAK reduce 201 + RETURN reduce 201 + ACTIONNAME reduce 201 - PLUS reduce 60 - MINUS reduce 60 - BITNOT reduce 60 - LPAREN reduce 60 - LSQBRACKET reduce 60 - SEMICOLON reduce 60 - NAME reduce 60 - FUNCTION reduce 60 - LBRACKET reduce 60 - VAR reduce 60 - RBRACKET reduce 60 - NUMBER reduce 60 - KILLS reduce 60 - TRGCONST reduce 60 - L2V reduce 60 - MAPSTRING reduce 60 - UNIT reduce 60 - SWITCH reduce 60 - LOCATION reduce 60 - STATTXTTBL reduce 60 - VARRAY reduce 60 - STATIC reduce 60 - CONST reduce 60 - INC reduce 60 - DEC reduce 60 - ONCE reduce 60 - IF reduce 60 - SWITCHCASE reduce 60 - CASE reduce 60 - DEFAULT reduce 60 - WHILE reduce 60 - FOR reduce 60 - FOREACH reduce 60 - CONTINUE reduce 60 - BREAK reduce 60 - RETURN reduce 60 - ACTIONNAME reduce 60 +State 334: + (205) compExpr ::= constEqExpr LE eqExpr * -State 317: - (237) default_clause ::= DEFAULT COLON * - - PLUS reduce 237 - MINUS reduce 237 - BITNOT reduce 237 - LPAREN reduce 237 - LSQBRACKET reduce 237 - SEMICOLON reduce 237 - NAME reduce 237 - FUNCTION reduce 237 - LBRACKET reduce 237 - VAR reduce 237 - RBRACKET reduce 237 - NUMBER reduce 237 - KILLS reduce 237 - TRGCONST reduce 237 - L2V reduce 237 - MAPSTRING reduce 237 - UNIT reduce 237 - SWITCH reduce 237 - LOCATION reduce 237 - STATTXTTBL reduce 237 - VARRAY reduce 237 - STATIC reduce 237 - CONST reduce 237 - INC reduce 237 - DEC reduce 237 - ONCE reduce 237 - IF reduce 237 - SWITCHCASE reduce 237 - WHILE reduce 237 - FOR reduce 237 - FOREACH reduce 237 - CONTINUE reduce 237 - BREAK reduce 237 - RETURN reduce 237 - ACTIONNAME reduce 237 + QMARK reduce 205 + COMMA reduce 205 + LOR reduce 205 + LAND reduce 205 + LNOT reduce 205 + PLUS reduce 205 + MINUS reduce 205 + BITNOT reduce 205 + LPAREN reduce 205 + SEMICOLON reduce 205 + NAME reduce 205 + COLON reduce 205 + RPAREN reduce 205 + LBRACKET reduce 205 + VAR reduce 205 + RSQBRACKET reduce 205 + L2V reduce 205 + STATIC reduce 205 + CONST reduce 205 + INC reduce 205 + DEC reduce 205 + ONCE reduce 205 + IF reduce 205 + SWITCHCASE reduce 205 + WHILE reduce 205 + FOR reduce 205 + FOREACH reduce 205 + CONTINUE reduce 205 + BREAK reduce 205 + RETURN reduce 205 + ACTIONNAME reduce 205 -State 318: - (35) lbracket ::= LBRACKET * +State 335: + (200) constCompExpr ::= constEqExpr LE constEqExpr * + + QMARK reduce 200 + COMMA reduce 200 + LOR reduce 200 + LAND reduce 200 + LNOT reduce 200 + PLUS reduce 200 + MINUS reduce 200 + BITNOT reduce 200 + LPAREN reduce 200 + SEMICOLON reduce 200 + NAME reduce 200 + COLON reduce 200 + RPAREN reduce 200 + LBRACKET reduce 200 + VAR reduce 200 + RSQBRACKET reduce 200 + L2V reduce 200 + STATIC reduce 200 + CONST reduce 200 + INC reduce 200 + DEC reduce 200 + ONCE reduce 200 + IF reduce 200 + SWITCHCASE reduce 200 + WHILE reduce 200 + FOR reduce 200 + FOREACH reduce 200 + CONTINUE reduce 200 + BREAK reduce 200 + RETURN reduce 200 + ACTIONNAME reduce 200 - PLUS reduce 35 - MINUS reduce 35 - BITNOT reduce 35 - LPAREN reduce 35 - LSQBRACKET reduce 35 - SEMICOLON reduce 35 - NAME reduce 35 - FUNCTION reduce 35 - LBRACKET reduce 35 - VAR reduce 35 - RBRACKET reduce 35 - NUMBER reduce 35 - KILLS reduce 35 - TRGCONST reduce 35 - L2V reduce 35 - MAPSTRING reduce 35 - UNIT reduce 35 - SWITCH reduce 35 - LOCATION reduce 35 - STATTXTTBL reduce 35 - VARRAY reduce 35 - STATIC reduce 35 - CONST reduce 35 - INC reduce 35 - DEC reduce 35 - ONCE reduce 35 - IF reduce 35 - SWITCHCASE reduce 35 - WHILE reduce 35 - FOR reduce 35 - FOREACH reduce 35 - CONTINUE reduce 35 - BREAK reduce 35 - RETURN reduce 35 - ACTIONNAME reduce 35 +State 336: + (311) logicExpr ::= KILLS LPAREN fArgs RPAREN * + + QMARK reduce 311 + COMMA reduce 311 + LOR reduce 311 + LNOT reduce 311 + PLUS reduce 311 + MINUS reduce 311 + BITNOT reduce 311 + LPAREN reduce 311 + SEMICOLON reduce 311 + NAME reduce 311 + COLON reduce 311 + RPAREN reduce 311 + LBRACKET reduce 311 + VAR reduce 311 + RSQBRACKET reduce 311 + L2V reduce 311 + STATIC reduce 311 + CONST reduce 311 + INC reduce 311 + DEC reduce 311 + ONCE reduce 311 + IF reduce 311 + SWITCHCASE reduce 311 + WHILE reduce 311 + FOR reduce 311 + FOREACH reduce 311 + CONTINUE reduce 311 + BREAK reduce 311 + RETURN reduce 311 + ACTIONNAME reduce 311 -State 319: - (23) fdef_rettypes ::= COLON exprList_nonEmpty * - exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr +State 337: + (128) logicExpr ::= logicExpr QMARK expr COLON expr * + + QMARK reduce 128 + COMMA reduce 128 + LOR reduce 128 + LNOT reduce 128 + PLUS reduce 128 + MINUS reduce 128 + BITNOT reduce 128 + LPAREN reduce 128 + SEMICOLON reduce 128 + NAME reduce 128 + COLON reduce 128 + RPAREN reduce 128 + LBRACKET reduce 128 + VAR reduce 128 + RSQBRACKET reduce 128 + L2V reduce 128 + STATIC reduce 128 + CONST reduce 128 + INC reduce 128 + DEC reduce 128 + ONCE reduce 128 + IF reduce 128 + SWITCHCASE reduce 128 + WHILE reduce 128 + FOR reduce 128 + FOREACH reduce 128 + CONTINUE reduce 128 + BREAK reduce 128 + RETURN reduce 128 + ACTIONNAME reduce 128 + +State 338: + (225) logicExpr ::= logicExpr LOR constLogicExpr * + + QMARK reduce 225 + COMMA reduce 225 + LOR reduce 225 + LNOT reduce 225 + PLUS reduce 225 + MINUS reduce 225 + BITNOT reduce 225 + LPAREN reduce 225 + SEMICOLON reduce 225 + NAME reduce 225 + COLON reduce 225 + RPAREN reduce 225 + LBRACKET reduce 225 + VAR reduce 225 + RSQBRACKET reduce 225 + L2V reduce 225 + STATIC reduce 225 + CONST reduce 225 + INC reduce 225 + DEC reduce 225 + ONCE reduce 225 + IF reduce 225 + SWITCHCASE reduce 225 + WHILE reduce 225 + FOR reduce 225 + FOREACH reduce 225 + CONTINUE reduce 225 + BREAK reduce 225 + RETURN reduce 225 + ACTIONNAME reduce 225 + +State 339: + (222) constLogicExpr ::= constLogicAndExpr * + + QMARK reduce 222 + COMMA reduce 222 + LOR reduce 222 + LNOT reduce 222 + PLUS reduce 222 + MINUS reduce 222 + BITNOT reduce 222 + LPAREN reduce 222 + SEMICOLON reduce 222 + NAME reduce 222 + COLON reduce 222 + RPAREN reduce 222 + LBRACKET reduce 222 + VAR reduce 222 + RSQBRACKET reduce 222 + L2V reduce 222 + STATIC reduce 222 + CONST reduce 222 + INC reduce 222 + DEC reduce 222 + ONCE reduce 222 + IF reduce 222 + SWITCHCASE reduce 222 + WHILE reduce 222 + FOR reduce 222 + FOREACH reduce 222 + CONTINUE reduce 222 + BREAK reduce 222 + RETURN reduce 222 + ACTIONNAME reduce 222 + +State 340: + (310) logicExpr ::= CONDITIONNAME LPAREN fArgs RPAREN * + + QMARK reduce 310 + COMMA reduce 310 + LOR reduce 310 + LNOT reduce 310 + PLUS reduce 310 + MINUS reduce 310 + BITNOT reduce 310 + LPAREN reduce 310 + SEMICOLON reduce 310 + NAME reduce 310 + COLON reduce 310 + RPAREN reduce 310 + LBRACKET reduce 310 + VAR reduce 310 + RSQBRACKET reduce 310 + L2V reduce 310 + STATIC reduce 310 + CONST reduce 310 + INC reduce 310 + DEC reduce 310 + ONCE reduce 310 + IF reduce 310 + SWITCHCASE reduce 310 + WHILE reduce 310 + FOR reduce 310 + FOREACH reduce 310 + CONTINUE reduce 310 + BREAK reduce 310 + RETURN reduce 310 + ACTIONNAME reduce 310 + +State 341: + (222) constLogicExpr ::= constLogicAndExpr * + logicExpr ::= constLogicAndExpr * LOR logicAndExpr + + QMARK reduce 222 + COMMA reduce 222 + LOR shift 69 + LOR reduce 222 -- dropped by precedence + LNOT reduce 222 + PLUS reduce 222 + MINUS reduce 222 + BITNOT reduce 222 + LPAREN reduce 222 + SEMICOLON reduce 222 + NAME reduce 222 + COLON reduce 222 + RPAREN reduce 222 + LBRACKET reduce 222 + VAR reduce 222 + RSQBRACKET reduce 222 + L2V reduce 222 + STATIC reduce 222 + CONST reduce 222 + INC reduce 222 + DEC reduce 222 + ONCE reduce 222 + IF reduce 222 + SWITCHCASE reduce 222 + WHILE reduce 222 + FOR reduce 222 + FOREACH reduce 222 + CONTINUE reduce 222 + BREAK reduce 222 + RETURN reduce 222 + ACTIONNAME reduce 222 + +State 342: + (127) logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable RPAREN * + + QMARK reduce 127 + COMMA reduce 127 + LOR reduce 127 + LNOT reduce 127 + PLUS reduce 127 + MINUS reduce 127 + BITNOT reduce 127 + LPAREN reduce 127 + SEMICOLON reduce 127 + NAME reduce 127 + COLON reduce 127 + RPAREN reduce 127 + LBRACKET reduce 127 + VAR reduce 127 + RSQBRACKET reduce 127 + L2V reduce 127 + STATIC reduce 127 + CONST reduce 127 + INC reduce 127 + DEC reduce 127 + ONCE reduce 127 + IF reduce 127 + SWITCHCASE reduce 127 + WHILE reduce 127 + FOR reduce 127 + FOREACH reduce 127 + CONTINUE reduce 127 + BREAK reduce 127 + RETURN reduce 127 + ACTIONNAME reduce 127 - COMMA shift 80 - PLUS reduce 23 - MINUS reduce 23 - BITNOT reduce 23 - LPAREN reduce 23 - LSQBRACKET reduce 23 - SEMICOLON reduce 23 - NAME reduce 23 - FUNCTION reduce 23 - LBRACKET reduce 23 - VAR reduce 23 - NUMBER reduce 23 - KILLS reduce 23 - TRGCONST reduce 23 - L2V reduce 23 - MAPSTRING reduce 23 - UNIT reduce 23 - SWITCH reduce 23 - LOCATION reduce 23 - STATTXTTBL reduce 23 - VARRAY reduce 23 - STATIC reduce 23 - CONST reduce 23 - INC reduce 23 - DEC reduce 23 - ONCE reduce 23 - IF reduce 23 - SWITCHCASE reduce 23 - WHILE reduce 23 - FOR reduce 23 - FOREACH reduce 23 - CONTINUE reduce 23 - BREAK reduce 23 - RETURN reduce 23 - ACTIONNAME reduce 23 +State 343: + (94) expr ::= logicExpr * + logicExpr ::= logicExpr * QMARK expr COLON expr + logicExpr ::= logicExpr * LOR logicAndExpr + logicExpr ::= logicExpr * LOR constLogicExpr -State 320: - (29) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + QMARK shift 61 + QMARK reduce 94 -- dropped by precedence + COMMA reduce 94 + LOR shift 68 + LOR reduce 94 -- dropped by precedence + LNOT reduce 94 + PLUS reduce 94 + MINUS reduce 94 + BITNOT reduce 94 + LPAREN reduce 94 + SEMICOLON reduce 94 + NAME reduce 94 + COLON reduce 94 + RPAREN reduce 94 + LBRACKET reduce 94 + VAR reduce 94 + RSQBRACKET reduce 94 + L2V reduce 94 + STATIC reduce 94 + CONST reduce 94 + INC reduce 94 + DEC reduce 94 + ONCE reduce 94 + IF reduce 94 + SWITCHCASE reduce 94 + WHILE reduce 94 + FOR reduce 94 + FOREACH reduce 94 + CONTINUE reduce 94 + BREAK reduce 94 + RETURN reduce 94 + ACTIONNAME reduce 94 - PLUS reduce 29 - MINUS reduce 29 - BITNOT reduce 29 - LPAREN reduce 29 - LSQBRACKET reduce 29 - SEMICOLON reduce 29 - NAME reduce 29 - FUNCTION reduce 29 - LBRACKET reduce 29 - VAR reduce 29 - NUMBER reduce 29 - KILLS reduce 29 - TRGCONST reduce 29 - L2V reduce 29 - MAPSTRING reduce 29 - UNIT reduce 29 - SWITCH reduce 29 - LOCATION reduce 29 - STATTXTTBL reduce 29 - VARRAY reduce 29 - STATIC reduce 29 - CONST reduce 29 - INC reduce 29 - DEC reduce 29 - ONCE reduce 29 - IF reduce 29 - SWITCHCASE reduce 29 - WHILE reduce 29 - FOR reduce 29 - FOREACH reduce 29 - CONTINUE reduce 29 - BREAK reduce 29 - RETURN reduce 29 - ACTIONNAME reduce 29 +State 344: + (93) expr ::= constLogicExpr * -State 321: - (24) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + QMARK reduce 93 + COMMA reduce 93 + LOR reduce 93 + LNOT reduce 93 + PLUS reduce 93 + MINUS reduce 93 + BITNOT reduce 93 + LPAREN reduce 93 + SEMICOLON reduce 93 + NAME reduce 93 + COLON reduce 93 + RPAREN reduce 93 + LBRACKET reduce 93 + VAR reduce 93 + RSQBRACKET reduce 93 + L2V reduce 93 + STATIC reduce 93 + CONST reduce 93 + INC reduce 93 + DEC reduce 93 + ONCE reduce 93 + IF reduce 93 + SWITCHCASE reduce 93 + WHILE reduce 93 + FOR reduce 93 + FOREACH reduce 93 + CONTINUE reduce 93 + BREAK reduce 93 + RETURN reduce 93 + ACTIONNAME reduce 93 - PLUS reduce 24 - MINUS reduce 24 - BITNOT reduce 24 - LPAREN reduce 24 - LSQBRACKET reduce 24 - SEMICOLON reduce 24 - NAME reduce 24 - FUNCTION reduce 24 - LBRACKET reduce 24 - VAR reduce 24 - NUMBER reduce 24 - KILLS reduce 24 - TRGCONST reduce 24 - L2V reduce 24 - MAPSTRING reduce 24 - UNIT reduce 24 - SWITCH reduce 24 - LOCATION reduce 24 - STATTXTTBL reduce 24 - VARRAY reduce 24 - STATIC reduce 24 - CONST reduce 24 - INC reduce 24 - DEC reduce 24 - ONCE reduce 24 - IF reduce 24 - SWITCHCASE reduce 24 - WHILE reduce 24 - FOR reduce 24 - FOREACH reduce 24 - CONTINUE reduce 24 - BREAK reduce 24 - RETURN reduce 24 - ACTIONNAME reduce 24 +State 345: + (80) exprList_nonEmpty ::= expr * -State 322: - (85) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * + COMMA reduce 80 + LNOT reduce 80 + PLUS reduce 80 + MINUS reduce 80 + BITNOT reduce 80 + LPAREN reduce 80 + SEMICOLON reduce 80 + NAME reduce 80 + COLON reduce 80 + RPAREN reduce 80 + LBRACKET reduce 80 + VAR reduce 80 + RSQBRACKET reduce 80 + L2V reduce 80 + STATIC reduce 80 + CONST reduce 80 + INC reduce 80 + DEC reduce 80 + ONCE reduce 80 + IF reduce 80 + SWITCHCASE reduce 80 + WHILE reduce 80 + FOR reduce 80 + FOREACH reduce 80 + CONTINUE reduce 80 + BREAK reduce 80 + RETURN reduce 80 + ACTIONNAME reduce 80 - PLUS reduce 85 - MINUS reduce 85 - BITNOT reduce 85 - LPAREN reduce 85 - LSQBRACKET reduce 85 - SEMICOLON reduce 85 - NAME reduce 85 - FUNCTION reduce 85 - LBRACKET reduce 85 - VAR reduce 85 - NUMBER reduce 85 - KILLS reduce 85 - TRGCONST reduce 85 - L2V reduce 85 - MAPSTRING reduce 85 - UNIT reduce 85 - SWITCH reduce 85 - LOCATION reduce 85 - STATTXTTBL reduce 85 - VARRAY reduce 85 - STATIC reduce 85 - CONST reduce 85 - INC reduce 85 - DEC reduce 85 - ONCE reduce 85 - IF reduce 85 - SWITCHCASE reduce 85 - WHILE reduce 85 - FOR reduce 85 - FOREACH reduce 85 - CONTINUE reduce 85 - BREAK reduce 85 - RETURN reduce 85 - ACTIONNAME reduce 85 +State 346: + (78) exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET * -State 323: - elif_start ::= ELSE * IF - (227) else_header ::= ELSE * + COMMA reduce 78 + LNOT reduce 78 + PLUS reduce 78 + MINUS reduce 78 + BITNOT reduce 78 + LPAREN reduce 78 + SEMICOLON reduce 78 + NAME reduce 78 + COLON reduce 78 + RPAREN reduce 78 + LBRACKET reduce 78 + VAR reduce 78 + RSQBRACKET reduce 78 + L2V reduce 78 + STATIC reduce 78 + CONST reduce 78 + INC reduce 78 + DEC reduce 78 + ONCE reduce 78 + IF reduce 78 + SWITCHCASE reduce 78 + WHILE reduce 78 + FOR reduce 78 + FOREACH reduce 78 + CONTINUE reduce 78 + BREAK reduce 78 + RETURN reduce 78 + ACTIONNAME reduce 78 - PLUS reduce 227 - MINUS reduce 227 - BITNOT reduce 227 - LPAREN reduce 227 - LSQBRACKET reduce 227 - SEMICOLON reduce 227 - NAME reduce 227 - FUNCTION reduce 227 - LBRACKET reduce 227 - VAR reduce 227 - NUMBER reduce 227 - KILLS reduce 227 - TRGCONST reduce 227 - L2V reduce 227 - MAPSTRING reduce 227 - UNIT reduce 227 - SWITCH reduce 227 - LOCATION reduce 227 - STATTXTTBL reduce 227 - VARRAY reduce 227 - STATIC reduce 227 - CONST reduce 227 - INC reduce 227 - DEC reduce 227 - ONCE reduce 227 - IF shift 489 - IF reduce 227 -- dropped by precedence - SWITCHCASE reduce 227 - WHILE reduce 227 - FOR reduce 227 - FOREACH reduce 227 - CONTINUE reduce 227 - BREAK reduce 227 - RETURN reduce 227 - ACTIONNAME reduce 227 +State 347: + (81) exprList_nonEmpty ::= exprList_nonEmpty COMMA expr * -State 324: - once_header ::= once_start * LPAREN expr - (218) once_nocond ::= once_start * + COMMA reduce 81 + LNOT reduce 81 + PLUS reduce 81 + MINUS reduce 81 + BITNOT reduce 81 + LPAREN reduce 81 + SEMICOLON reduce 81 + NAME reduce 81 + COLON reduce 81 + RPAREN reduce 81 + LBRACKET reduce 81 + VAR reduce 81 + RSQBRACKET reduce 81 + L2V reduce 81 + STATIC reduce 81 + CONST reduce 81 + INC reduce 81 + DEC reduce 81 + ONCE reduce 81 + IF reduce 81 + SWITCHCASE reduce 81 + WHILE reduce 81 + FOR reduce 81 + FOREACH reduce 81 + CONTINUE reduce 81 + BREAK reduce 81 + RETURN reduce 81 + ACTIONNAME reduce 81 - PLUS reduce 218 - MINUS reduce 218 - BITNOT reduce 218 - LPAREN shift 52 - LPAREN reduce 218 -- dropped by precedence - LSQBRACKET reduce 218 - SEMICOLON reduce 218 - NAME reduce 218 - FUNCTION reduce 218 - LBRACKET reduce 218 - VAR reduce 218 - NUMBER reduce 218 - KILLS reduce 218 - TRGCONST reduce 218 - L2V reduce 218 - MAPSTRING reduce 218 - UNIT reduce 218 - SWITCH reduce 218 - LOCATION reduce 218 - STATTXTTBL reduce 218 - VARRAY reduce 218 - STATIC reduce 218 - CONST reduce 218 - INC reduce 218 - DEC reduce 218 - ONCE reduce 218 - IF reduce 218 - SWITCHCASE reduce 218 - WHILE reduce 218 - FOR reduce 218 - FOREACH reduce 218 - CONTINUE reduce 218 - BREAK reduce 218 - RETURN reduce 218 - ACTIONNAME reduce 218 +State 348: + (65) bodyStmtList ::= bodyStmt * -State 325: - (215) once_start ::= ONCE * + LNOT reduce 65 + PLUS reduce 65 + MINUS reduce 65 + BITNOT reduce 65 + LPAREN reduce 65 + SEMICOLON reduce 65 + NAME reduce 65 + LBRACKET reduce 65 + VAR reduce 65 + RBRACKET reduce 65 + L2V reduce 65 + STATIC reduce 65 + CONST reduce 65 + INC reduce 65 + DEC reduce 65 + ONCE reduce 65 + IF reduce 65 + SWITCHCASE reduce 65 + CASE reduce 65 + DEFAULT reduce 65 + WHILE reduce 65 + FOR reduce 65 + FOREACH reduce 65 + CONTINUE reduce 65 + BREAK reduce 65 + RETURN reduce 65 + ACTIONNAME reduce 65 - PLUS reduce 215 - MINUS reduce 215 - BITNOT reduce 215 - LPAREN reduce 215 - LSQBRACKET reduce 215 - SEMICOLON reduce 215 - NAME reduce 215 - FUNCTION reduce 215 - LBRACKET reduce 215 - VAR reduce 215 - NUMBER reduce 215 - KILLS reduce 215 - TRGCONST reduce 215 - L2V reduce 215 - MAPSTRING reduce 215 - UNIT reduce 215 - SWITCH reduce 215 - LOCATION reduce 215 - STATTXTTBL reduce 215 - VARRAY reduce 215 - STATIC reduce 215 - CONST reduce 215 - INC reduce 215 - DEC reduce 215 - ONCE reduce 215 - IF reduce 215 - SWITCHCASE reduce 215 - WHILE reduce 215 - FOR reduce 215 - FOREACH reduce 215 - CONTINUE reduce 215 - BREAK reduce 215 - RETURN reduce 215 - ACTIONNAME reduce 215 +State 349: + (272) case_clause ::= case_start exprList_nonEmpty COLON * -State 326: - (84) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * - (194) lvalue ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + LNOT reduce 272 + PLUS reduce 272 + MINUS reduce 272 + BITNOT reduce 272 + LPAREN reduce 272 + SEMICOLON reduce 272 + NAME reduce 272 + LBRACKET reduce 272 + VAR reduce 272 + RBRACKET reduce 272 + L2V reduce 272 + STATIC reduce 272 + CONST reduce 272 + INC reduce 272 + DEC reduce 272 + ONCE reduce 272 + IF reduce 272 + SWITCHCASE reduce 272 + CASE reduce 272 + DEFAULT reduce 272 + WHILE reduce 272 + FOR reduce 272 + FOREACH reduce 272 + CONTINUE reduce 272 + BREAK reduce 272 + RETURN reduce 272 + ACTIONNAME reduce 272 - ASSIGN reduce 194 - QMARK reduce 84 - COMMA reduce 194 - BITOR reduce 84 - BITXOR reduce 84 - BITAND reduce 84 - LSHIFT reduce 84 - RSHIFT reduce 84 - PLUS reduce 84 - MINUS reduce 84 - DIVIDE reduce 84 - MULTIPLY reduce 84 - MOD reduce 84 - LPAREN reduce 84 - LSQBRACKET reduce 84 - PERIOD reduce 84 - SEMICOLON reduce 194 - RPAREN reduce 194 - INC reduce 194 - DEC reduce 194 - IADD reduce 194 - ISUB reduce 194 - IMUL reduce 194 - IDIV reduce 194 - IMOD reduce 194 - ILSH reduce 194 - IRSH reduce 194 - IBND reduce 194 - IBOR reduce 194 - IBXR reduce 194 +State 350: + (67) bodyStmtList ::= bodyStmtList error * -State 327: - (83) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * - (196) lvalue ::= nonConstExpr PERIOD TRGCONST * + LNOT reduce 67 + PLUS reduce 67 + MINUS reduce 67 + BITNOT reduce 67 + LPAREN reduce 67 + SEMICOLON reduce 67 + NAME reduce 67 + LBRACKET reduce 67 + VAR reduce 67 + RBRACKET reduce 67 + L2V reduce 67 + STATIC reduce 67 + CONST reduce 67 + INC reduce 67 + DEC reduce 67 + ONCE reduce 67 + IF reduce 67 + SWITCHCASE reduce 67 + CASE reduce 67 + DEFAULT reduce 67 + WHILE reduce 67 + FOR reduce 67 + FOREACH reduce 67 + CONTINUE reduce 67 + BREAK reduce 67 + RETURN reduce 67 + ACTIONNAME reduce 67 - ASSIGN reduce 196 - QMARK reduce 83 - COMMA reduce 196 - BITOR reduce 83 - BITXOR reduce 83 - BITAND reduce 83 - LSHIFT reduce 83 - RSHIFT reduce 83 - PLUS reduce 83 - MINUS reduce 83 - DIVIDE reduce 83 - MULTIPLY reduce 83 - MOD reduce 83 - LPAREN reduce 83 - LSQBRACKET reduce 83 - PERIOD reduce 83 - SEMICOLON reduce 196 - RPAREN reduce 196 - INC reduce 196 - DEC reduce 196 - IADD reduce 196 - ISUB reduce 196 - IMUL reduce 196 - IDIV reduce 196 - IMOD reduce 196 - ILSH reduce 196 - IRSH reduce 196 - IBND reduce 196 - IBOR reduce 196 - IBXR reduce 196 +State 351: + (66) bodyStmtList ::= bodyStmtList bodyStmt * -State 328: - (82) nonConstExpr ::= nonConstExpr PERIOD NAME * - (195) lvalue ::= nonConstExpr PERIOD NAME * + LNOT reduce 66 + PLUS reduce 66 + MINUS reduce 66 + BITNOT reduce 66 + LPAREN reduce 66 + SEMICOLON reduce 66 + NAME reduce 66 + LBRACKET reduce 66 + VAR reduce 66 + RBRACKET reduce 66 + L2V reduce 66 + STATIC reduce 66 + CONST reduce 66 + INC reduce 66 + DEC reduce 66 + ONCE reduce 66 + IF reduce 66 + SWITCHCASE reduce 66 + CASE reduce 66 + DEFAULT reduce 66 + WHILE reduce 66 + FOR reduce 66 + FOREACH reduce 66 + CONTINUE reduce 66 + BREAK reduce 66 + RETURN reduce 66 + ACTIONNAME reduce 66 - ASSIGN reduce 195 - QMARK reduce 82 - COMMA reduce 195 - BITOR reduce 82 - BITXOR reduce 82 - BITAND reduce 82 - LSHIFT reduce 82 - RSHIFT reduce 82 - PLUS reduce 82 - MINUS reduce 82 - DIVIDE reduce 82 - MULTIPLY reduce 82 - MOD reduce 82 - LPAREN reduce 82 - LSQBRACKET reduce 82 - PERIOD reduce 82 - SEMICOLON reduce 195 - RPAREN reduce 195 - INC reduce 195 - DEC reduce 195 - IADD reduce 195 - ISUB reduce 195 - IMUL reduce 195 - IDIV reduce 195 - IMOD reduce 195 - ILSH reduce 195 - IRSH reduce 195 - IBND reduce 195 - IBOR reduce 195 - IBXR reduce 195 +State 352: + (277) default_clause ::= DEFAULT COLON * -State 329: - (81) nonConstExpr ::= NAME * - funcexpr ::= NAME * LPAREN fArgs RPAREN - (193) lvalue ::= NAME * + LNOT reduce 277 + PLUS reduce 277 + MINUS reduce 277 + BITNOT reduce 277 + LPAREN reduce 277 + SEMICOLON reduce 277 + NAME reduce 277 + LBRACKET reduce 277 + VAR reduce 277 + RBRACKET reduce 277 + L2V reduce 277 + STATIC reduce 277 + CONST reduce 277 + INC reduce 277 + DEC reduce 277 + ONCE reduce 277 + IF reduce 277 + SWITCHCASE reduce 277 + WHILE reduce 277 + FOR reduce 277 + FOREACH reduce 277 + CONTINUE reduce 277 + BREAK reduce 277 + RETURN reduce 277 + ACTIONNAME reduce 277 - ASSIGN reduce 193 - QMARK reduce 81 - COMMA reduce 193 - BITOR reduce 81 - BITXOR reduce 81 - BITAND reduce 81 - LSHIFT reduce 81 - RSHIFT reduce 81 - PLUS reduce 81 - MINUS reduce 81 - DIVIDE reduce 81 - MULTIPLY reduce 81 - MOD reduce 81 - LPAREN shift 24 - LPAREN reduce 81 -- dropped by precedence - LSQBRACKET reduce 81 - PERIOD reduce 81 - SEMICOLON reduce 193 - RPAREN reduce 193 - INC reduce 193 - DEC reduce 193 - IADD reduce 193 - ISUB reduce 193 - IMUL reduce 193 - IDIV reduce 193 - IMOD reduce 193 - ILSH reduce 193 - IRSH reduce 193 - IBND reduce 193 - IBOR reduce 193 - IBXR reduce 193 +State 353: + (41) lbracket ::= LBRACKET * -State 330: - (81) nonConstExpr ::= NAME * + LNOT reduce 41 + PLUS reduce 41 + MINUS reduce 41 + BITNOT reduce 41 + LPAREN reduce 41 + SEMICOLON reduce 41 + NAME reduce 41 + LBRACKET reduce 41 + VAR reduce 41 + RBRACKET reduce 41 + L2V reduce 41 + STATIC reduce 41 + CONST reduce 41 + INC reduce 41 + DEC reduce 41 + ONCE reduce 41 + IF reduce 41 + SWITCHCASE reduce 41 + WHILE reduce 41 + FOR reduce 41 + FOREACH reduce 41 + CONTINUE reduce 41 + BREAK reduce 41 + RETURN reduce 41 + ACTIONNAME reduce 41 + +State 354: + (87) nonConstExpr ::= NAME * fConstArg ::= NAME * ASSIGN expr fConstArg ::= NAME * ASSIGN STRING funcexpr ::= NAME * LPAREN fArgs RPAREN - ASSIGN shift 46 - QMARK reduce 81 - COMMA reduce 81 - LOR reduce 81 - LAND reduce 81 - EQ reduce 81 - LE reduce 81 - LT reduce 81 - GE reduce 81 - GT reduce 81 - NE reduce 81 - BITOR reduce 81 - BITXOR reduce 81 - BITAND reduce 81 - LSHIFT reduce 81 - RSHIFT reduce 81 - PLUS reduce 81 - MINUS reduce 81 - DIVIDE reduce 81 - MULTIPLY reduce 81 - MOD reduce 81 - LPAREN shift 24 - LPAREN reduce 81 -- dropped by precedence - LSQBRACKET reduce 81 - PERIOD reduce 81 - RPAREN reduce 81 + ASSIGN shift 41 + QMARK reduce 87 + COMMA reduce 87 + LOR reduce 87 + LAND reduce 87 + EQ reduce 87 + LE reduce 87 + LT reduce 87 + GE reduce 87 + GT reduce 87 + NE reduce 87 + BITOR reduce 87 + BITXOR reduce 87 + BITAND reduce 87 + LSHIFT reduce 87 + RSHIFT reduce 87 + PLUS reduce 87 + MINUS reduce 87 + DIVIDE reduce 87 + MULTIPLY reduce 87 + MOD reduce 87 + LPAREN shift 21 + LPAREN reduce 87 -- dropped by precedence + LSQBRACKET reduce 87 + PERIOD reduce 87 + RPAREN reduce 87 -State 331: - (247) for_opener ::= FOR LPAREN * +State 355: + (29) fdef_rettypes ::= COLON exprList_nonEmpty * + exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - PLUS reduce 247 - MINUS reduce 247 - BITNOT reduce 247 - LPAREN reduce 247 - LSQBRACKET reduce 247 - SEMICOLON reduce 247 - NAME reduce 247 - FUNCTION reduce 247 - VAR reduce 247 - NUMBER reduce 247 - KILLS reduce 247 - TRGCONST reduce 247 - L2V reduce 247 - MAPSTRING reduce 247 - UNIT reduce 247 - SWITCH reduce 247 - LOCATION reduce 247 - STATTXTTBL reduce 247 - VARRAY reduce 247 - CONST reduce 247 - INC reduce 247 - DEC reduce 247 - ACTIONNAME reduce 247 + COMMA shift 65 + LNOT reduce 29 + PLUS reduce 29 + MINUS reduce 29 + BITNOT reduce 29 + LPAREN reduce 29 + SEMICOLON reduce 29 + NAME reduce 29 + LBRACKET reduce 29 + VAR reduce 29 + L2V reduce 29 + STATIC reduce 29 + CONST reduce 29 + INC reduce 29 + DEC reduce 29 + ONCE reduce 29 + IF reduce 29 + SWITCHCASE reduce 29 + WHILE reduce 29 + FOR reduce 29 + FOREACH reduce 29 + CONTINUE reduce 29 + BREAK reduce 29 + RETURN reduce 29 + ACTIONNAME reduce 29 -State 332: - (261) for_header2 ::= for_header1 expr SEMICOLON * +State 356: + (35) method_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * - PLUS reduce 261 - MINUS reduce 261 - BITNOT reduce 261 - LPAREN reduce 261 - LSQBRACKET reduce 261 - NAME reduce 261 - FUNCTION reduce 261 - RPAREN reduce 261 - NUMBER reduce 261 - KILLS reduce 261 - TRGCONST reduce 261 - L2V reduce 261 - MAPSTRING reduce 261 - UNIT reduce 261 - SWITCH reduce 261 - LOCATION reduce 261 - STATTXTTBL reduce 261 - VARRAY reduce 261 - INC reduce 261 - DEC reduce 261 - ACTIONNAME reduce 261 + LNOT reduce 35 + PLUS reduce 35 + MINUS reduce 35 + BITNOT reduce 35 + LPAREN reduce 35 + SEMICOLON reduce 35 + NAME reduce 35 + LBRACKET reduce 35 + VAR reduce 35 + L2V reduce 35 + STATIC reduce 35 + CONST reduce 35 + INC reduce 35 + DEC reduce 35 + ONCE reduce 35 + IF reduce 35 + SWITCHCASE reduce 35 + WHILE reduce 35 + FOR reduce 35 + FOREACH reduce 35 + CONTINUE reduce 35 + BREAK reduce 35 + RETURN reduce 35 + ACTIONNAME reduce 35 -State 333: - (260) for_header1 ::= for_opener for_init_stmt SEMICOLON * +State 357: + (30) fdef_header ::= FUNCTION NAME LPAREN typedNameList RPAREN fdef_rettypes * + + LNOT reduce 30 + PLUS reduce 30 + MINUS reduce 30 + BITNOT reduce 30 + LPAREN reduce 30 + SEMICOLON reduce 30 + NAME reduce 30 + LBRACKET reduce 30 + VAR reduce 30 + L2V reduce 30 + STATIC reduce 30 + CONST reduce 30 + INC reduce 30 + DEC reduce 30 + ONCE reduce 30 + IF reduce 30 + SWITCHCASE reduce 30 + WHILE reduce 30 + FOR reduce 30 + FOREACH reduce 30 + CONTINUE reduce 30 + BREAK reduce 30 + RETURN reduce 30 + ACTIONNAME reduce 30 - LNOT reduce 260 - PLUS reduce 260 - MINUS reduce 260 - BITNOT reduce 260 - LPAREN reduce 260 - LSQBRACKET reduce 260 - NAME reduce 260 - FUNCTION reduce 260 - NUMBER reduce 260 - KILLS reduce 260 - TRGCONST reduce 260 - L2V reduce 260 - MAPSTRING reduce 260 - UNIT reduce 260 - SWITCH reduce 260 - LOCATION reduce 260 - STATTXTTBL reduce 260 - VARRAY reduce 260 - LIST reduce 260 - CONDITIONNAME reduce 260 - ACTIONNAME reduce 260 +State 358: + (91) lambdaExprStart ::= FUNCTION LPAREN typedNameList RPAREN fdef_rettypes * + + LNOT reduce 91 + PLUS reduce 91 + MINUS reduce 91 + BITNOT reduce 91 + LPAREN reduce 91 + SEMICOLON reduce 91 + NAME reduce 91 + LBRACKET reduce 91 + VAR reduce 91 + L2V reduce 91 + STATIC reduce 91 + CONST reduce 91 + INC reduce 91 + DEC reduce 91 + ONCE reduce 91 + IF reduce 91 + SWITCHCASE reduce 91 + WHILE reduce 91 + FOR reduce 91 + FOREACH reduce 91 + CONTINUE reduce 91 + BREAK reduce 91 + RETURN reduce 91 + ACTIONNAME reduce 91 -State 334: - (231) case_start ::= CASE * - - LNOT reduce 231 - PLUS reduce 231 - MINUS reduce 231 - BITNOT reduce 231 - LPAREN reduce 231 - LSQBRACKET reduce 231 - NAME reduce 231 - FUNCTION reduce 231 - NUMBER reduce 231 - KILLS reduce 231 - TRGCONST reduce 231 - L2V reduce 231 - MAPSTRING reduce 231 - UNIT reduce 231 - SWITCH reduce 231 - LOCATION reduce 231 - STATTXTTBL reduce 231 - VARRAY reduce 231 - LIST reduce 231 - CONDITIONNAME reduce 231 - ACTIONNAME reduce 231 +State 359: + elif_start ::= ELSE * IF + (267) else_header ::= ELSE * -State 335: - (90) fConstArg ::= constExpr * - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr + LNOT reduce 267 + PLUS reduce 267 + MINUS reduce 267 + BITNOT reduce 267 + LPAREN reduce 267 + SEMICOLON reduce 267 + NAME reduce 267 + LBRACKET reduce 267 + VAR reduce 267 + L2V reduce 267 + STATIC reduce 267 + CONST reduce 267 + INC reduce 267 + DEC reduce 267 + ONCE reduce 267 + IF shift 540 + IF reduce 267 -- dropped by precedence + SWITCHCASE reduce 267 + WHILE reduce 267 + FOR reduce 267 + FOREACH reduce 267 + CONTINUE reduce 267 + BREAK reduce 267 + RETURN reduce 267 + ACTIONNAME reduce 267 - COMMA reduce 90 - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - RPAREN reduce 90 +State 360: + once_header ::= once_start * LPAREN expr + (258) once_nocond ::= once_start * + + LNOT reduce 258 + PLUS reduce 258 + MINUS reduce 258 + BITNOT reduce 258 + LPAREN shift 47 + LPAREN reduce 258 -- dropped by precedence + SEMICOLON reduce 258 + NAME reduce 258 + LBRACKET reduce 258 + VAR reduce 258 + L2V reduce 258 + STATIC reduce 258 + CONST reduce 258 + INC reduce 258 + DEC reduce 258 + ONCE reduce 258 + IF reduce 258 + SWITCHCASE reduce 258 + WHILE reduce 258 + FOR reduce 258 + FOREACH reduce 258 + CONTINUE reduce 258 + BREAK reduce 258 + RETURN reduce 258 + ACTIONNAME reduce 258 -State 336: - constExpr ::= LPAREN constExpr * RPAREN - constExpr ::= constExpr * PLUS constExpr - constExpr ::= constExpr * MINUS constExpr - constExpr ::= constExpr * MULTIPLY constExpr - constExpr ::= constExpr * DIVIDE constExpr - constExpr ::= constExpr * MOD constExpr - constExpr ::= constExpr * LSHIFT constExpr - constExpr ::= constExpr * RSHIFT constExpr - constExpr ::= constExpr * BITAND constExpr - constExpr ::= constExpr * BITOR constExpr - constExpr ::= constExpr * BITXOR constExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - - EQ shift 138 - LE shift 125 - LT shift 123 - GE shift 124 - GT shift 122 - NE shift 126 - BITOR shift 128 - BITXOR shift 127 - BITAND shift 129 - LSHIFT shift 131 - RSHIFT shift 130 - PLUS shift 136 - MINUS shift 135 - DIVIDE shift 133 - MULTIPLY shift 134 - MOD shift 132 - RPAREN shift 296 +State 361: + (255) once_start ::= ONCE * + + LNOT reduce 255 + PLUS reduce 255 + MINUS reduce 255 + BITNOT reduce 255 + LPAREN reduce 255 + SEMICOLON reduce 255 + NAME reduce 255 + LBRACKET reduce 255 + VAR reduce 255 + L2V reduce 255 + STATIC reduce 255 + CONST reduce 255 + INC reduce 255 + DEC reduce 255 + ONCE reduce 255 + IF reduce 255 + SWITCHCASE reduce 255 + WHILE reduce 255 + FOR reduce 255 + FOREACH reduce 255 + CONTINUE reduce 255 + BREAK reduce 255 + RETURN reduce 255 + ACTIONNAME reduce 255 -State 337: - constExpr ::= LPAREN constExpr * RPAREN - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr - - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 - RPAREN shift 296 +State 362: + (300) for_header1 ::= for_opener for_init_stmt SEMICOLON * + + LNOT reduce 300 + PLUS reduce 300 + MINUS reduce 300 + BITNOT reduce 300 + LPAREN reduce 300 + LSQBRACKET reduce 300 + NAME reduce 300 + TRGCONST reduce 300 + FUNCTION reduce 300 + NUMBER reduce 300 + KILLS reduce 300 + L2V reduce 300 + MAPSTRING reduce 300 + UNIT reduce 300 + SWITCH reduce 300 + LOCATION reduce 300 + STATTXTTBL reduce 300 + VARRAY reduce 300 + LIST reduce 300 + CONDITIONNAME reduce 300 + ACTIONNAME reduce 300 -State 338: - nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - (105) funcexprStmt ::= funcexpr * - (108) nonConstExpr ::= funcexpr * +State 363: + (271) case_start ::= CASE * - QMARK reduce 108 - COMMA reduce 105 - BITOR reduce 108 - BITXOR reduce 108 - BITAND reduce 108 - LSHIFT reduce 108 - RSHIFT reduce 108 - PLUS reduce 108 - MINUS reduce 108 - DIVIDE reduce 108 - MULTIPLY reduce 108 - MOD reduce 108 - LPAREN reduce 108 - LSQBRACKET shift 547 - LSQBRACKET reduce 108 -- dropped by precedence - PERIOD reduce 108 - SEMICOLON reduce 105 - RPAREN reduce 105 + LNOT reduce 271 + PLUS reduce 271 + MINUS reduce 271 + BITNOT reduce 271 + LPAREN reduce 271 + LSQBRACKET reduce 271 + NAME reduce 271 + TRGCONST reduce 271 + FUNCTION reduce 271 + NUMBER reduce 271 + KILLS reduce 271 + L2V reduce 271 + MAPSTRING reduce 271 + UNIT reduce 271 + SWITCH reduce 271 + LOCATION reduce 271 + STATTXTTBL reduce 271 + VARRAY reduce 271 + LIST reduce 271 + CONDITIONNAME reduce 271 + ACTIONNAME reduce 271 -State 339: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - constExpr ::= constExpr * NE constExpr - constExpr ::= constExpr * LE constExpr - constExpr ::= constExpr * GE constExpr - constExpr ::= constExpr * LT constExpr - constExpr ::= constExpr * GT constExpr - - EQ shift 138 - LE shift 125 - LT shift 123 - GE shift 124 - GT shift 122 - NE shift 126 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 +State 364: + (90) nonConstExpr ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + (234) lvalue ::= nonConstExpr LSQBRACKET expr RSQBRACKET * + + ASSIGN reduce 234 + COMMA reduce 234 + LPAREN reduce 90 + LSQBRACKET reduce 90 + PERIOD reduce 90 + SEMICOLON reduce 234 + RPAREN reduce 234 + INC reduce 234 + DEC reduce 234 + IADD reduce 234 + ISUB reduce 234 + IMUL reduce 234 + IDIV reduce 234 + IMOD reduce 234 + ILSH reduce 234 + IRSH reduce 234 + IBND reduce 234 + IBOR reduce 234 + IBXR reduce 234 -State 340: - constExpr ::= constExpr * PLUS constExpr - nonConstExpr ::= constExpr * PLUS nonConstExpr - constExpr ::= constExpr * MINUS constExpr - nonConstExpr ::= constExpr * MINUS nonConstExpr - constExpr ::= constExpr * MULTIPLY constExpr - nonConstExpr ::= constExpr * MULTIPLY nonConstExpr - constExpr ::= constExpr * DIVIDE constExpr - nonConstExpr ::= constExpr * DIVIDE nonConstExpr - constExpr ::= constExpr * MOD constExpr - nonConstExpr ::= constExpr * MOD nonConstExpr - constExpr ::= constExpr * LSHIFT constExpr - nonConstExpr ::= constExpr * LSHIFT nonConstExpr - constExpr ::= constExpr * RSHIFT constExpr - nonConstExpr ::= constExpr * RSHIFT nonConstExpr - constExpr ::= constExpr * BITAND constExpr - nonConstExpr ::= constExpr * BITAND nonConstExpr - constExpr ::= constExpr * BITOR constExpr - nonConstExpr ::= constExpr * BITOR nonConstExpr - constExpr ::= constExpr * BITXOR constExpr - nonConstExpr ::= constExpr * BITXOR nonConstExpr - constExpr ::= constExpr * EQ constExpr - logicExpr ::= constExpr * EQ nonConstExpr - constExpr ::= constExpr * NE constExpr - logicExpr ::= constExpr * NE nonConstExpr - constExpr ::= constExpr * LE constExpr - logicExpr ::= constExpr * LE nonConstExpr - constExpr ::= constExpr * GE constExpr - logicExpr ::= constExpr * GE nonConstExpr - constExpr ::= constExpr * LT constExpr - logicExpr ::= constExpr * LT nonConstExpr - constExpr ::= constExpr * GT constExpr - logicExpr ::= constExpr * GT nonConstExpr - - EQ shift 100 - LE shift 98 - LT shift 96 - GE shift 97 - GT shift 95 - NE shift 99 - BITOR shift 102 - BITXOR shift 101 - BITAND shift 103 - LSHIFT shift 105 - RSHIFT shift 104 - PLUS shift 113 - MINUS shift 112 - DIVIDE shift 107 - MULTIPLY shift 108 - MOD shift 106 +State 365: + (89) nonConstExpr ::= nonConstExpr PERIOD TRGCONST * + (236) lvalue ::= nonConstExpr PERIOD TRGCONST * + + ASSIGN reduce 236 + COMMA reduce 236 + LPAREN reduce 89 + LSQBRACKET reduce 89 + PERIOD reduce 89 + SEMICOLON reduce 236 + RPAREN reduce 236 + INC reduce 236 + DEC reduce 236 + IADD reduce 236 + ISUB reduce 236 + IMUL reduce 236 + IDIV reduce 236 + IMOD reduce 236 + ILSH reduce 236 + IRSH reduce 236 + IBND reduce 236 + IBOR reduce 236 + IBXR reduce 236 -State 341: - (197) lvalueList_nonEmpty ::= lvalue * +State 366: + (88) nonConstExpr ::= nonConstExpr PERIOD NAME * + (235) lvalue ::= nonConstExpr PERIOD NAME * + + ASSIGN reduce 235 + COMMA reduce 235 + LPAREN reduce 88 + LSQBRACKET reduce 88 + PERIOD reduce 88 + SEMICOLON reduce 235 + RPAREN reduce 235 + INC reduce 235 + DEC reduce 235 + IADD reduce 235 + ISUB reduce 235 + IMUL reduce 235 + IDIV reduce 235 + IMOD reduce 235 + ILSH reduce 235 + IRSH reduce 235 + IBND reduce 235 + IBOR reduce 235 + IBXR reduce 235 + +State 367: + (87) nonConstExpr ::= NAME * + funcexpr ::= NAME * LPAREN fArgs RPAREN + (233) lvalue ::= NAME * + + ASSIGN reduce 233 + COMMA reduce 233 + LPAREN shift 21 + LPAREN reduce 87 -- dropped by precedence + LSQBRACKET reduce 87 + PERIOD reduce 87 + SEMICOLON reduce 233 + RPAREN reduce 233 + INC reduce 233 + DEC reduce 233 + IADD reduce 233 + ISUB reduce 233 + IMUL reduce 233 + IDIV reduce 233 + IMOD reduce 233 + ILSH reduce 233 + IRSH reduce 233 + IBND reduce 233 + IBOR reduce 233 + IBXR reduce 233 + +State 368: + (237) lvalueList_nonEmpty ::= lvalue * assign_stmt ::= lvalue * ASSIGN expr assign_stmt ::= lvalue * INC assign_stmt ::= lvalue * DEC @@ -30069,59 +28121,105 @@ State 341: assign_stmt ::= lvalue * IBOR expr assign_stmt ::= lvalue * IBXR expr - ASSIGN shift 63 - ASSIGN reduce 197 -- dropped by precedence - COMMA reduce 197 - INC shift 386 - DEC shift 385 - IADD shift 62 - ISUB shift 61 - IMUL shift 60 - IDIV shift 59 - IMOD shift 58 - ILSH shift 57 - IRSH shift 56 - IBND shift 55 - IBOR shift 54 - IBXR shift 53 + ASSIGN shift 58 + ASSIGN reduce 237 -- dropped by precedence + COMMA reduce 237 + INC shift 423 + DEC shift 422 + IADD shift 57 + ISUB shift 56 + IMUL shift 55 + IDIV shift 54 + IMOD shift 53 + ILSH shift 52 + IRSH shift 51 + IBND shift 50 + IBOR shift 49 + IBXR shift 48 -State 342: - nonConstExpr ::= nonConstExpr * PERIOD NAME - nonConstExpr ::= nonConstExpr * PERIOD TRGCONST - nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN - nonConstExpr ::= nonConstExpr * QMARK expr COLON expr - nonConstExpr ::= nonConstExpr * PLUS expr - nonConstExpr ::= nonConstExpr * MINUS expr - nonConstExpr ::= nonConstExpr * MULTIPLY expr - nonConstExpr ::= nonConstExpr * DIVIDE expr - nonConstExpr ::= nonConstExpr * MOD expr - nonConstExpr ::= nonConstExpr * LSHIFT expr - nonConstExpr ::= nonConstExpr * RSHIFT expr - nonConstExpr ::= nonConstExpr * BITAND expr - nonConstExpr ::= nonConstExpr * BITOR expr - nonConstExpr ::= nonConstExpr * BITXOR expr - lvalue ::= nonConstExpr * LSQBRACKET expr RSQBRACKET - lvalue ::= nonConstExpr * PERIOD NAME - lvalue ::= nonConstExpr * PERIOD TRGCONST +State 369: + (287) for_opener ::= FOR LPAREN * + + LNOT reduce 287 + PLUS reduce 287 + MINUS reduce 287 + BITNOT reduce 287 + LPAREN reduce 287 + SEMICOLON reduce 287 + NAME reduce 287 + VAR reduce 287 + L2V reduce 287 + CONST reduce 287 + INC reduce 287 + DEC reduce 287 - QMARK shift 76 - BITOR shift 66 - BITXOR shift 65 - BITAND shift 67 - LSHIFT shift 69 - RSHIFT shift 68 - PLUS shift 74 - MINUS shift 73 - DIVIDE shift 71 - MULTIPLY shift 72 - MOD shift 70 - LPAREN shift 23 - LSQBRACKET shift 77 - PERIOD shift 441 +State 370: + (301) for_header2 ::= for_header1 expr SEMICOLON * + + LNOT reduce 301 + PLUS reduce 301 + MINUS reduce 301 + BITNOT reduce 301 + LPAREN reduce 301 + NAME reduce 301 + RPAREN reduce 301 + L2V reduce 301 + INC reduce 301 + DEC reduce 301 -State 343: - (32) object_chunk ::= object_body RBRACKET SEMICOLON * +State 371: + constBitXorTerm ::= constBitXorTerm * BITXOR constBitAndTerm + (175) constBitOrTerm ::= constBitXorTerm * + + EQ reduce 175 + LE reduce 175 + LT reduce 175 + GE reduce 175 + GT reduce 175 + NE reduce 175 + BITOR reduce 175 + BITXOR shift 115 + RPAREN reduce 175 + +State 372: + constBitOrTerm ::= constBitOrTerm * BITOR constBitXorTerm + (189) constEqExpr ::= constBitOrTerm * + constEqExpr ::= constBitOrTerm * EQ constBitOrTerm + constEqExpr ::= constBitOrTerm * NE constBitOrTerm + + EQ shift 107 + LE reduce 189 + LT reduce 189 + GE reduce 189 + GT reduce 189 + NE shift 106 + BITOR shift 111 + RPAREN reduce 189 + +State 373: + (38) object_chunk ::= object_body RBRACKET SEMICOLON * + + $ reduce 38 + IMPORT reduce 38 + FUNCTION reduce 38 + OBJECT reduce 38 + LBRACKET reduce 38 + VAR reduce 38 + CONST reduce 38 + +State 374: + (31) fdef_chunk ::= fdef_header stmt * + + $ reduce 31 + IMPORT reduce 31 + FUNCTION reduce 31 + OBJECT reduce 31 + LBRACKET reduce 31 + VAR reduce 31 + CONST reduce 31 + +State 375: + (32) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * $ reduce 32 IMPORT reduce 32 @@ -30131,19 +28229,19 @@ State 343: VAR reduce 32 CONST reduce 32 -State 344: - (25) fdef_chunk ::= fdef_header stmt * - - $ reduce 25 - IMPORT reduce 25 - FUNCTION reduce 25 - OBJECT reduce 25 - LBRACKET reduce 25 - VAR reduce 25 - CONST reduce 25 - -State 345: - (26) fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList RPAREN SEMICOLON * +State 376: + (27) import_chunk ::= absimp_start SEMICOLON * + + $ reduce 27 + IMPORT reduce 27 + FUNCTION reduce 27 + OBJECT reduce 27 + LBRACKET reduce 27 + VAR reduce 27 + CONST reduce 27 + +State 377: + (26) import_chunk ::= absimp_start AS TRGCONST SEMICOLON * $ reduce 26 IMPORT reduce 26 @@ -30153,19 +28251,19 @@ State 345: VAR reduce 26 CONST reduce 26 -State 346: - (21) import_chunk ::= absimp_start SEMICOLON * +State 378: + (25) import_chunk ::= absimp_start AS NAME SEMICOLON * - $ reduce 21 - IMPORT reduce 21 - FUNCTION reduce 21 - OBJECT reduce 21 - LBRACKET reduce 21 - VAR reduce 21 - CONST reduce 21 + $ reduce 25 + IMPORT reduce 25 + FUNCTION reduce 25 + OBJECT reduce 25 + LBRACKET reduce 25 + VAR reduce 25 + CONST reduce 25 -State 347: - (20) import_chunk ::= absimp_start AS NAME SEMICOLON * +State 379: + (20) import_chunk ::= relimp_path AS TRGCONST SEMICOLON * $ reduce 20 IMPORT reduce 20 @@ -30175,29 +28273,29 @@ State 347: VAR reduce 20 CONST reduce 20 -State 348: - (17) import_chunk ::= relimp_path AS NAME SEMICOLON * +State 380: + (19) import_chunk ::= relimp_path AS NAME SEMICOLON * - $ reduce 17 - IMPORT reduce 17 - FUNCTION reduce 17 - OBJECT reduce 17 - LBRACKET reduce 17 - VAR reduce 17 - CONST reduce 17 + $ reduce 19 + IMPORT reduce 19 + FUNCTION reduce 19 + OBJECT reduce 19 + LBRACKET reduce 19 + VAR reduce 19 + CONST reduce 19 -State 349: - (16) import_chunk ::= relimp_path SEMICOLON * +State 381: + (18) import_chunk ::= relimp_path SEMICOLON * - $ reduce 16 - IMPORT reduce 16 - FUNCTION reduce 16 - OBJECT reduce 16 - LBRACKET reduce 16 - VAR reduce 16 - CONST reduce 16 + $ reduce 18 + IMPORT reduce 18 + FUNCTION reduce 18 + OBJECT reduce 18 + LBRACKET reduce 18 + VAR reduce 18 + CONST reduce 18 -State 350: +State 382: (11) chunk ::= blockStmt * $ reduce 11 @@ -30208,7 +28306,7 @@ State 350: VAR reduce 11 CONST reduce 11 -State 351: +State 383: (10) chunk ::= cdef_global_stmt SEMICOLON * $ reduce 10 @@ -30219,7 +28317,7 @@ State 351: VAR reduce 10 CONST reduce 10 -State 352: +State 384: (9) chunk ::= vdefAssign_global_stmt SEMICOLON * $ reduce 9 @@ -30230,7 +28328,7 @@ State 352: VAR reduce 9 CONST reduce 9 -State 353: +State 385: (8) chunk ::= vdef_stmt SEMICOLON * $ reduce 8 @@ -30241,7 +28339,7 @@ State 353: VAR reduce 8 CONST reduce 8 -State 354: +State 386: (7) chunk ::= object_chunk * $ reduce 7 @@ -30252,7 +28350,7 @@ State 354: VAR reduce 7 CONST reduce 7 -State 355: +State 387: (6) chunk ::= fdecl_chunk * $ reduce 6 @@ -30263,7 +28361,7 @@ State 355: VAR reduce 6 CONST reduce 6 -State 356: +State 388: (5) chunk ::= fdef_chunk * $ reduce 5 @@ -30274,7 +28372,7 @@ State 356: VAR reduce 5 CONST reduce 5 -State 357: +State 389: (4) chunk ::= import_chunk * $ reduce 4 @@ -30285,7 +28383,7 @@ State 357: VAR reduce 4 CONST reduce 4 -State 358: +State 390: (3) chunks ::= chunks error * $ reduce 3 @@ -30296,7 +28394,7 @@ State 358: VAR reduce 3 CONST reduce 3 -State 359: +State 391: (2) chunks ::= chunks chunk * $ reduce 2 @@ -30307,1207 +28405,1393 @@ State 359: VAR reduce 2 CONST reduce 2 -State 360: - (71) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * +State 392: + nonConstExpr ::= funcexpr * LSQBRACKET LSQBRACKET NUMBER RSQBRACKET RSQBRACKET + (111) funcexprStmt ::= funcexpr * + (114) nonConstExpr ::= funcexpr * - ASSIGN reduce 71 - COMMA reduce 71 - SEMICOLON reduce 71 - COLON reduce 71 + COMMA reduce 111 + LPAREN reduce 114 + LSQBRACKET shift 602 + LSQBRACKET reduce 114 -- dropped by precedence + PERIOD reduce 114 + SEMICOLON reduce 111 + RPAREN reduce 111 -State 361: - (70) nameList_nonEmpty ::= NAME * +State 393: + (199) constCompExpr ::= constEqExpr * + constCompExpr ::= constEqExpr * LE constEqExpr + constCompExpr ::= constEqExpr * GE constEqExpr + constCompExpr ::= constEqExpr * LT constEqExpr + constCompExpr ::= constEqExpr * GT constEqExpr + + LE shift 102 + LT shift 100 + GE shift 101 + GT shift 99 + RPAREN reduce 199 - ASSIGN reduce 70 - COMMA reduce 70 - SEMICOLON reduce 70 - COLON reduce 70 +State 394: + term ::= constFactor * PLUS factor + term ::= constFactor * MINUS factor + constFactor ::= constFactor * MULTIPLY constExpr + constFactor ::= constFactor * MOD constExpr + constFactor ::= constFactor * DIVIDE constExpr + + PLUS shift 117 + MINUS shift 116 + DIVIDE shift 139 + MULTIPLY shift 145 + MOD shift 140 -State 362: - (89) fNonConstArg ::= logicExpr * - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr +State 395: + (77) nameList_nonEmpty ::= nameList_nonEmpty COMMA NAME * - COMMA reduce 89 - LOR shift 82 - LAND shift 84 - RPAREN reduce 89 + ASSIGN reduce 77 + COMMA reduce 77 + SEMICOLON reduce 77 + COLON reduce 77 -State 363: - (64) typedName ::= NAME * +State 396: + (76) nameList_nonEmpty ::= NAME * + + ASSIGN reduce 76 + COMMA reduce 76 + SEMICOLON reduce 76 + COLON reduce 76 + +State 397: + compExpr ::= constEqExpr * LE eqExpr + compExpr ::= constEqExpr * GE eqExpr + compExpr ::= constEqExpr * LT eqExpr + compExpr ::= constEqExpr * GT eqExpr + + LE shift 83 + LT shift 81 + GE shift 82 + GT shift 80 + +State 398: + constTerm ::= constTerm * PLUS constFactor + constTerm ::= constTerm * MINUS constFactor + shTerm ::= constTerm * RSHIFT term + shTerm ::= constTerm * LSHIFT term + + LSHIFT shift 109 + RSHIFT shift 110 + PLUS shift 132 + MINUS shift 131 + +State 399: + (95) fNonConstArg ::= logicExpr * + logicExpr ::= logicExpr * QMARK expr COLON expr + logicExpr ::= logicExpr * LOR logicAndExpr + logicExpr ::= logicExpr * LOR constLogicExpr + + QMARK shift 61 + COMMA reduce 95 + LOR shift 68 + RPAREN reduce 95 + +State 400: + (70) typedName ::= NAME * typedName ::= NAME * COLON expr - COMMA reduce 64 - SEMICOLON reduce 64 - COLON shift 78 - RPAREN reduce 64 + COMMA reduce 70 + SEMICOLON reduce 70 + COLON shift 63 + RPAREN reduce 70 -State 364: +State 401: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (187) vdef_stmt ::= VAR nameList_nonEmpty * + (227) vdef_stmt ::= VAR nameList_nonEmpty * vdefAssign_global_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - ASSIGN shift 34 - COMMA shift 497 - SEMICOLON reduce 187 + ASSIGN shift 29 + COMMA shift 548 + SEMICOLON reduce 227 -State 365: - (31) object_body ::= object_body method_chunk * +State 402: + (37) object_body ::= object_body method_chunk * - FUNCTION reduce 31 - VAR reduce 31 - RBRACKET reduce 31 + FUNCTION reduce 37 + VAR reduce 37 + RBRACKET reduce 37 -State 366: - (30) method_chunk ::= method_header stmt * +State 403: + (36) method_chunk ::= method_header stmt * - FUNCTION reduce 30 - VAR reduce 30 - RBRACKET reduce 30 + FUNCTION reduce 36 + VAR reduce 36 + RBRACKET reduce 36 -State 367: - (28) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * +State 404: + (34) object_body ::= object_body VAR typedNameList_nonEmpty SEMICOLON * - FUNCTION reduce 28 - VAR reduce 28 - RBRACKET reduce 28 + FUNCTION reduce 34 + VAR reduce 34 + RBRACKET reduce 34 -State 368: - (27) object_body ::= OBJECT NAME LBRACKET * +State 405: + (33) object_body ::= OBJECT NAME LBRACKET * - FUNCTION reduce 27 - VAR reduce 27 - RBRACKET reduce 27 + FUNCTION reduce 33 + VAR reduce 33 + RBRACKET reduce 33 -State 369: - (66) typedNameList_nonEmpty ::= typedName * +State 406: + (72) typedNameList_nonEmpty ::= typedName * typedNameList_nonEmpty ::= typedName * COMMA typedNameList_nonEmpty - COMMA shift 141 - SEMICOLON reduce 66 - RPAREN reduce 66 + COMMA shift 155 + SEMICOLON reduce 72 + RPAREN reduce 72 -State 370: - (236) case_chunks ::= case_chunk * +State 407: + (276) case_chunks ::= case_chunk * - RBRACKET reduce 236 - CASE reduce 236 - DEFAULT reduce 236 + RBRACKET reduce 276 + CASE reduce 276 + DEFAULT reduce 276 -State 371: - (235) case_chunks ::= case_chunks case_chunk * +State 408: + (275) case_chunks ::= case_chunks case_chunk * - RBRACKET reduce 235 - CASE reduce 235 - DEFAULT reduce 235 + RBRACKET reduce 275 + CASE reduce 275 + DEFAULT reduce 275 -State 372: - (203) assign_stmt ::= DEC lvalue * +State 409: + (243) assign_stmt ::= DEC lvalue * - COMMA reduce 203 - SEMICOLON reduce 203 - RPAREN reduce 203 + COMMA reduce 243 + SEMICOLON reduce 243 + RPAREN reduce 243 -State 373: - (201) assign_stmt ::= INC lvalue * +State 410: + (241) assign_stmt ::= INC lvalue * - COMMA reduce 201 - SEMICOLON reduce 201 - RPAREN reduce 201 + COMMA reduce 241 + SEMICOLON reduce 241 + RPAREN reduce 241 -State 374: +State 411: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (200) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * + (240) assign_stmt ::= lvalueList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 80 - COMMA reduce 200 -- dropped by precedence - SEMICOLON reduce 200 - RPAREN reduce 200 + COMMA shift 65 + COMMA reduce 240 -- dropped by precedence + SEMICOLON reduce 240 + RPAREN reduce 240 -State 375: - (214) assign_stmt ::= lvalue IBXR expr * +State 412: + (254) assign_stmt ::= lvalue IBXR expr * - COMMA reduce 214 - SEMICOLON reduce 214 - RPAREN reduce 214 + COMMA reduce 254 + SEMICOLON reduce 254 + RPAREN reduce 254 -State 376: - (213) assign_stmt ::= lvalue IBOR expr * +State 413: + (253) assign_stmt ::= lvalue IBOR expr * - COMMA reduce 213 - SEMICOLON reduce 213 - RPAREN reduce 213 + COMMA reduce 253 + SEMICOLON reduce 253 + RPAREN reduce 253 -State 377: - (212) assign_stmt ::= lvalue IBND expr * +State 414: + (252) assign_stmt ::= lvalue IBND expr * - COMMA reduce 212 - SEMICOLON reduce 212 - RPAREN reduce 212 + COMMA reduce 252 + SEMICOLON reduce 252 + RPAREN reduce 252 -State 378: - (211) assign_stmt ::= lvalue IRSH expr * +State 415: + (251) assign_stmt ::= lvalue IRSH expr * - COMMA reduce 211 - SEMICOLON reduce 211 - RPAREN reduce 211 + COMMA reduce 251 + SEMICOLON reduce 251 + RPAREN reduce 251 -State 379: - (210) assign_stmt ::= lvalue ILSH expr * +State 416: + (250) assign_stmt ::= lvalue ILSH expr * - COMMA reduce 210 - SEMICOLON reduce 210 - RPAREN reduce 210 + COMMA reduce 250 + SEMICOLON reduce 250 + RPAREN reduce 250 -State 380: - (209) assign_stmt ::= lvalue IMOD expr * +State 417: + (249) assign_stmt ::= lvalue IMOD expr * - COMMA reduce 209 - SEMICOLON reduce 209 - RPAREN reduce 209 + COMMA reduce 249 + SEMICOLON reduce 249 + RPAREN reduce 249 -State 381: - (208) assign_stmt ::= lvalue IDIV expr * +State 418: + (248) assign_stmt ::= lvalue IDIV expr * - COMMA reduce 208 - SEMICOLON reduce 208 - RPAREN reduce 208 + COMMA reduce 248 + SEMICOLON reduce 248 + RPAREN reduce 248 -State 382: - (207) assign_stmt ::= lvalue IMUL expr * +State 419: + (247) assign_stmt ::= lvalue IMUL expr * - COMMA reduce 207 - SEMICOLON reduce 207 - RPAREN reduce 207 + COMMA reduce 247 + SEMICOLON reduce 247 + RPAREN reduce 247 -State 383: - (206) assign_stmt ::= lvalue ISUB expr * +State 420: + (246) assign_stmt ::= lvalue ISUB expr * - COMMA reduce 206 - SEMICOLON reduce 206 - RPAREN reduce 206 + COMMA reduce 246 + SEMICOLON reduce 246 + RPAREN reduce 246 -State 384: - (205) assign_stmt ::= lvalue IADD expr * +State 421: + (245) assign_stmt ::= lvalue IADD expr * - COMMA reduce 205 - SEMICOLON reduce 205 - RPAREN reduce 205 + COMMA reduce 245 + SEMICOLON reduce 245 + RPAREN reduce 245 -State 385: - (204) assign_stmt ::= lvalue DEC * +State 422: + (244) assign_stmt ::= lvalue DEC * - COMMA reduce 204 - SEMICOLON reduce 204 - RPAREN reduce 204 + COMMA reduce 244 + SEMICOLON reduce 244 + RPAREN reduce 244 -State 386: - (202) assign_stmt ::= lvalue INC * +State 423: + (242) assign_stmt ::= lvalue INC * - COMMA reduce 202 - SEMICOLON reduce 202 - RPAREN reduce 202 + COMMA reduce 242 + SEMICOLON reduce 242 + RPAREN reduce 242 -State 387: - (199) assign_stmt ::= lvalue ASSIGN expr * +State 424: + (239) assign_stmt ::= lvalue ASSIGN expr * - COMMA reduce 199 - SEMICOLON reduce 199 - RPAREN reduce 199 + COMMA reduce 239 + SEMICOLON reduce 239 + RPAREN reduce 239 -State 388: +State 425: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME - (187) vdef_stmt ::= VAR nameList_nonEmpty * + (227) vdef_stmt ::= VAR nameList_nonEmpty * vdefAssign_stmt ::= VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - ASSIGN shift 40 - COMMA shift 497 - COMMA reduce 187 -- dropped by precedence - SEMICOLON reduce 187 + ASSIGN shift 35 + COMMA shift 548 + COMMA reduce 227 -- dropped by precedence + SEMICOLON reduce 227 + +State 426: + constBitOrTerm ::= constBitOrTerm * BITOR constBitXorTerm + eqExpr ::= constBitOrTerm * EQ bitOrTerm + eqExpr ::= constBitOrTerm * NE bitOrTerm + + EQ shift 90 + NE shift 89 + BITOR shift 111 + +State 427: + constShTerm ::= constShTerm * RSHIFT constTerm + constShTerm ::= constShTerm * LSHIFT constTerm + bitAndTerm ::= constShTerm * BITAND shTerm + + BITAND shift 98 + LSHIFT shift 127 + RSHIFT shift 128 + +State 428: + factor ::= constExpr * MULTIPLY nonConstExpr + factor ::= constExpr * DIVIDE nonConstExpr + factor ::= constExpr * MOD nonConstExpr + + DIVIDE shift 151 + MULTIPLY shift 152 + MOD shift 146 + +State 429: + nonConstExpr ::= LPAREN logicExpr * RPAREN + logicExpr ::= logicExpr * QMARK expr COLON expr + logicExpr ::= logicExpr * LOR logicAndExpr + logicExpr ::= logicExpr * LOR constLogicExpr + + QMARK shift 61 + LOR shift 68 + RPAREN shift 224 + +State 430: + nonConstExpr ::= nonConstExpr * PERIOD NAME + nonConstExpr ::= nonConstExpr * PERIOD TRGCONST + nonConstExpr ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + funcexpr ::= nonConstExpr * LPAREN fArgs RPAREN + lvalue ::= nonConstExpr * LSQBRACKET expr RSQBRACKET + lvalue ::= nonConstExpr * PERIOD NAME + lvalue ::= nonConstExpr * PERIOD TRGCONST + + LPAREN shift 20 + LSQBRACKET shift 62 + PERIOD shift 492 -State 389: - nonConstExpr ::= LPAREN logicExpr * RPAREN - logicExpr ::= logicExpr * LAND logicExpr - logicExpr ::= logicExpr * LOR logicExpr +State 431: + (71) typedName ::= NAME COLON expr * - LOR shift 82 - LAND shift 84 - RPAREN shift 226 + COMMA reduce 71 + SEMICOLON reduce 71 + RPAREN reduce 71 -State 390: - (65) typedName ::= NAME COLON expr * +State 432: + (24) absimp_start ::= absimp_start PERIOD TRGCONST * - COMMA reduce 65 - SEMICOLON reduce 65 - RPAREN reduce 65 + PERIOD reduce 24 + SEMICOLON reduce 24 + AS reduce 24 -State 391: - (19) absimp_start ::= absimp_start PERIOD NAME * +State 433: + (23) absimp_start ::= absimp_start PERIOD NAME * - PERIOD reduce 19 - SEMICOLON reduce 19 - AS reduce 19 + PERIOD reduce 23 + SEMICOLON reduce 23 + AS reduce 23 -State 392: +State 434: absimp_start ::= absimp_start * PERIOD NAME + absimp_start ::= absimp_start * PERIOD TRGCONST import_chunk ::= absimp_start * AS NAME SEMICOLON + import_chunk ::= absimp_start * AS TRGCONST SEMICOLON import_chunk ::= absimp_start * SEMICOLON - PERIOD shift 553 - SEMICOLON shift 346 - AS shift 552 + PERIOD shift 495 + SEMICOLON shift 376 + AS shift 494 -State 393: - (15) relimp_path ::= relimp_path PERIOD NAME * +State 435: + (17) relimp_path ::= relimp_path PERIOD TRGCONST * - PERIOD reduce 15 - SEMICOLON reduce 15 - AS reduce 15 + PERIOD reduce 17 + SEMICOLON reduce 17 + AS reduce 17 -State 394: +State 436: + (16) relimp_path ::= relimp_path PERIOD NAME * + + PERIOD reduce 16 + SEMICOLON reduce 16 + AS reduce 16 + +State 437: relimp_path ::= relimp_path * PERIOD NAME + relimp_path ::= relimp_path * PERIOD TRGCONST import_chunk ::= relimp_path * SEMICOLON import_chunk ::= relimp_path * AS NAME SEMICOLON + import_chunk ::= relimp_path * AS TRGCONST SEMICOLON - PERIOD shift 556 - SEMICOLON shift 349 - AS shift 555 + PERIOD shift 497 + SEMICOLON shift 381 + AS shift 496 -State 395: +State 438: + (15) relimp_path ::= relimp_start TRGCONST * + + PERIOD reduce 15 + SEMICOLON reduce 15 + AS reduce 15 + +State 439: (14) relimp_path ::= relimp_start NAME * PERIOD reduce 14 SEMICOLON reduce 14 AS reduce 14 -State 396: - (18) absimp_start ::= IMPORT NAME * +State 440: + (13) relimp_start ::= relimp_start PERIOD * - PERIOD reduce 18 - SEMICOLON reduce 18 - AS reduce 18 + PERIOD reduce 13 + NAME reduce 13 + TRGCONST reduce 13 -State 397: +State 441: + relimp_start ::= relimp_start * PERIOD + relimp_path ::= relimp_start * NAME + relimp_path ::= relimp_start * TRGCONST + + PERIOD shift 440 + NAME shift 439 + TRGCONST shift 438 + +State 442: + (22) absimp_start ::= IMPORT TRGCONST * + + PERIOD reduce 22 + SEMICOLON reduce 22 + AS reduce 22 + +State 443: + (21) absimp_start ::= IMPORT NAME * + + PERIOD reduce 21 + SEMICOLON reduce 21 + AS reduce 21 + +State 444: + (12) relimp_start ::= IMPORT PERIOD * + + PERIOD reduce 12 + NAME reduce 12 + TRGCONST reduce 12 + +State 445: + relimp_start ::= IMPORT * PERIOD + absimp_start ::= IMPORT * NAME + absimp_start ::= IMPORT * TRGCONST + + PERIOD shift 444 + NAME shift 443 + TRGCONST shift 442 + +State 446: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (192) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + (232) cdef_global_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 80 - SEMICOLON reduce 192 + COMMA shift 65 + SEMICOLON reduce 232 -State 398: +State 447: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME cdef_global_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - ASSIGN shift 33 - COMMA shift 497 + ASSIGN shift 28 + COMMA shift 548 -State 399: +State 448: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (190) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (230) vdefAssign_global_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 80 - SEMICOLON reduce 190 + COMMA shift 65 + SEMICOLON reduce 230 -State 400: - (93) fConstArg ::= NAME ASSIGN STRING * +State 449: + (99) fConstArg ::= NAME ASSIGN STRING * - COMMA reduce 93 - RPAREN reduce 93 + COMMA reduce 99 + RPAREN reduce 99 -State 401: - (92) fConstArg ::= NAME ASSIGN expr * +State 450: + (98) fConstArg ::= NAME ASSIGN expr * - COMMA reduce 92 - RPAREN reduce 92 + COMMA reduce 98 + RPAREN reduce 98 -State 402: - (67) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * +State 451: + (73) typedNameList_nonEmpty ::= typedName COMMA typedNameList_nonEmpty * - SEMICOLON reduce 67 - RPAREN reduce 67 + SEMICOLON reduce 73 + RPAREN reduce 73 -State 403: +State 452: fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON - COMMA shift 31 - RPAREN shift 460 - -State 404: - fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg - fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - - COMMA shift 32 - RPAREN shift 464 + COMMA shift 26 + RPAREN shift 511 -State 405: +State 453: fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - (102) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty * RPAREN SEMICOLON - COMMA shift 31 - RPAREN shift 463 - RPAREN reduce 102 -- dropped by precedence + COMMA shift 26 + RPAREN shift 514 -State 406: +State 454: fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - (101) fArgs_nonEmpty ::= fConstArgs_nonEmpty * constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty * RPAREN SEMICOLON - COMMA shift 32 - RPAREN shift 464 - RPAREN reduce 101 -- dropped by precedence + COMMA shift 27 + RPAREN shift 515 -State 407: +State 455: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (77) exprList ::= exprList_nonEmpty * + (83) exprList ::= exprList_nonEmpty * - COMMA shift 80 - SEMICOLON reduce 77 + COMMA shift 65 + SEMICOLON reduce 83 -State 408: +State 456: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (265) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * + (305) foreach_header ::= foreach_opener nameList_nonEmpty COLON exprList_nonEmpty * - COMMA shift 80 - RPAREN reduce 265 + COMMA shift 65 + RPAREN reduce 305 -State 409: +State 457: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME foreach_header ::= foreach_opener nameList_nonEmpty * COLON exprList_nonEmpty - COMMA shift 497 - COLON shift 35 + COMMA shift 548 + COLON shift 30 -State 410: +State 458: for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (257) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * + (297) for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty COMMA for_action_stmt_nonEmpty * - COMMA shift 29 -- dropped by precedence - COMMA reduce 257 - RPAREN reduce 257 + COMMA shift 112 -- dropped by precedence + COMMA reduce 297 + RPAREN reduce 297 -State 411: +State 459: for_action_stmt_nonEmpty ::= for_action_stmt_nonEmpty * COMMA for_action_stmt_nonEmpty - (259) for_action_stmt ::= for_action_stmt_nonEmpty * + (299) for_action_stmt ::= for_action_stmt_nonEmpty * - COMMA shift 29 - RPAREN reduce 259 + COMMA shift 112 + RPAREN reduce 299 -State 412: - (256) for_action_stmt_nonEmpty ::= assign_stmt * +State 460: + (296) for_action_stmt_nonEmpty ::= assign_stmt * - COMMA reduce 256 - RPAREN reduce 256 + COMMA reduce 296 + RPAREN reduce 296 -State 413: - (255) for_action_stmt_nonEmpty ::= funcexprStmt * +State 461: + (295) for_action_stmt_nonEmpty ::= funcexprStmt * - COMMA reduce 255 - RPAREN reduce 255 + COMMA reduce 295 + RPAREN reduce 295 -State 414: +State 462: for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (252) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * + (292) for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty COMMA for_init_stmt_nonEmpty * - COMMA shift 26 -- dropped by precedence - COMMA reduce 252 - SEMICOLON reduce 252 + COMMA shift 103 -- dropped by precedence + COMMA reduce 292 + SEMICOLON reduce 292 -State 415: +State 463: for_init_stmt_nonEmpty ::= for_init_stmt_nonEmpty * COMMA for_init_stmt_nonEmpty - (253) for_init_stmt ::= for_init_stmt_nonEmpty * + (293) for_init_stmt ::= for_init_stmt_nonEmpty * - COMMA shift 26 - SEMICOLON reduce 253 + COMMA shift 103 + SEMICOLON reduce 293 -State 416: - (251) for_init_stmt_nonEmpty ::= assign_stmt * +State 464: + (291) for_init_stmt_nonEmpty ::= assign_stmt * - COMMA reduce 251 - SEMICOLON reduce 251 + COMMA reduce 291 + SEMICOLON reduce 291 -State 417: - (250) for_init_stmt_nonEmpty ::= cdef_stmt * +State 465: + (290) for_init_stmt_nonEmpty ::= cdef_stmt * - COMMA reduce 250 - SEMICOLON reduce 250 + COMMA reduce 290 + SEMICOLON reduce 290 -State 418: - (249) for_init_stmt_nonEmpty ::= vdefAssign_stmt * +State 466: + (289) for_init_stmt_nonEmpty ::= vdefAssign_stmt * - COMMA reduce 249 - SEMICOLON reduce 249 + COMMA reduce 289 + SEMICOLON reduce 289 -State 419: - (248) for_init_stmt_nonEmpty ::= vdef_stmt * +State 467: + (288) for_init_stmt_nonEmpty ::= vdef_stmt * - COMMA reduce 248 - SEMICOLON reduce 248 + COMMA reduce 288 + SEMICOLON reduce 288 -State 420: +State 468: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr case_clause ::= case_start exprList_nonEmpty * COLON - COMMA shift 80 - COLON shift 314 + COMMA shift 65 + COLON shift 349 -State 421: - (198) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * +State 469: + (238) lvalueList_nonEmpty ::= lvalueList_nonEmpty COMMA lvalue * - ASSIGN reduce 198 - COMMA reduce 198 + ASSIGN reduce 238 + COMMA reduce 238 -State 422: +State 470: lvalueList_nonEmpty ::= lvalueList_nonEmpty * COMMA lvalue assign_stmt ::= lvalueList_nonEmpty * ASSIGN exprList_nonEmpty - ASSIGN shift 37 - COMMA shift 87 + ASSIGN shift 32 + COMMA shift 135 -State 423: +State 471: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (191) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * + (231) cdef_stmt ::= CONST nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 80 - COMMA reduce 191 -- dropped by precedence - SEMICOLON reduce 191 + COMMA shift 65 + COMMA reduce 231 -- dropped by precedence + SEMICOLON reduce 231 -State 424: +State 472: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME cdef_stmt ::= CONST nameList_nonEmpty * ASSIGN exprList_nonEmpty - ASSIGN shift 38 - COMMA shift 497 + ASSIGN shift 33 + COMMA shift 548 -State 425: +State 473: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (189) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (229) vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 80 - SEMICOLON reduce 189 + COMMA shift 65 + SEMICOLON reduce 229 -State 426: +State 474: nameList_nonEmpty ::= nameList_nonEmpty * COMMA NAME vdefAssignStatic_stmt ::= STATIC VAR nameList_nonEmpty * ASSIGN exprList_nonEmpty - ASSIGN shift 39 - COMMA shift 497 + ASSIGN shift 34 + COMMA shift 548 -State 427: +State 475: exprList_nonEmpty ::= exprList_nonEmpty * COMMA expr - (188) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * + (228) vdefAssign_stmt ::= VAR nameList_nonEmpty ASSIGN exprList_nonEmpty * - COMMA shift 80 - COMMA reduce 188 -- dropped by precedence - SEMICOLON reduce 188 + COMMA shift 65 + COMMA reduce 228 -- dropped by precedence + SEMICOLON reduce 228 -State 428: - (100) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * +State 476: + constBitXorTerm ::= constBitXorTerm * BITXOR constBitAndTerm + bitOrTerm ::= constBitXorTerm * BITOR bitXorTerm - COMMA reduce 100 - RPAREN reduce 100 + BITOR shift 92 + BITXOR shift 115 -State 429: - (95) fArg ::= fNonConstArg * +State 477: + constBitAndTerm ::= constBitAndTerm * BITAND constShTerm + bitXorTerm ::= constBitAndTerm * BITXOR bitAndTerm - COMMA reduce 95 - RPAREN reduce 95 + BITXOR shift 95 + BITAND shift 118 -State 430: - (94) fArg ::= fConstArg * +State 478: + (106) fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty COMMA fArg * - COMMA reduce 94 - RPAREN reduce 94 + COMMA reduce 106 + RPAREN reduce 106 -State 431: +State 479: + (101) fArg ::= fNonConstArg * + + COMMA reduce 101 + RPAREN reduce 101 + +State 480: + (100) fArg ::= fConstArg * + + COMMA reduce 100 + RPAREN reduce 100 + +State 481: fNonConstArgs_nonEmpty ::= fNonConstArgs_nonEmpty * COMMA fArg - (102) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * + (108) fArgs_nonEmpty ::= fNonConstArgs_nonEmpty * - COMMA shift 31 - RPAREN reduce 102 + COMMA shift 26 + RPAREN reduce 108 -State 432: - (98) fNonConstArgs_nonEmpty ::= fNonConstArg * +State 482: + (104) fNonConstArgs_nonEmpty ::= fNonConstArg * - COMMA reduce 98 - RPAREN reduce 98 + COMMA reduce 104 + RPAREN reduce 104 -State 433: - (99) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * +State 483: + (105) fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fNonConstArg * - COMMA reduce 99 - RPAREN reduce 99 + COMMA reduce 105 + RPAREN reduce 105 -State 434: - (97) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * +State 484: + (103) fConstArgs_nonEmpty ::= fConstArgs_nonEmpty COMMA fConstArg * - COMMA reduce 97 - RPAREN reduce 97 + COMMA reduce 103 + RPAREN reduce 103 -State 435: +State 485: fConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fConstArg fNonConstArgs_nonEmpty ::= fConstArgs_nonEmpty * COMMA fNonConstArg - (101) fArgs_nonEmpty ::= fConstArgs_nonEmpty * + (107) fArgs_nonEmpty ::= fConstArgs_nonEmpty * - COMMA shift 32 - RPAREN reduce 101 + COMMA shift 27 + RPAREN reduce 107 -State 436: - (96) fConstArgs_nonEmpty ::= fConstArg * +State 486: + (102) fConstArgs_nonEmpty ::= fConstArg * - COMMA reduce 96 - RPAREN reduce 96 + COMMA reduce 102 + RPAREN reduce 102 -State 437: - (91) fConstArg ::= STRING * +State 487: + (97) fConstArg ::= STRING * - COMMA reduce 91 - RPAREN reduce 91 + COMMA reduce 97 + RPAREN reduce 97 -State 438: - (63) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * +State 488: + (96) fConstArg ::= constLogicExpr * - COMMA reduce 63 - RSQBRACKET reduce 63 + COMMA reduce 96 + RPAREN reduce 96 -State 439: +State 489: + (69) numList_nonEmpty ::= numList_nonEmpty COMMA NUMBER * + + COMMA reduce 69 + RSQBRACKET reduce 69 + +State 490: numList_nonEmpty ::= numList_nonEmpty * COMMA NUMBER exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty * RSQBRACKET RSQBRACKET - COMMA shift 528 - RSQBRACKET shift 527 + COMMA shift 582 + RSQBRACKET shift 581 -State 440: - (62) numList_nonEmpty ::= NUMBER * +State 491: + (68) numList_nonEmpty ::= NUMBER * nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET - COMMA reduce 62 - RSQBRACKET shift 544 - RSQBRACKET reduce 62 -- dropped by precedence + COMMA reduce 68 + RSQBRACKET shift 599 + RSQBRACKET reduce 68 -- dropped by precedence -State 441: +State 492: nonConstExpr ::= nonConstExpr PERIOD * NAME nonConstExpr ::= nonConstExpr PERIOD * TRGCONST lvalue ::= nonConstExpr PERIOD * NAME lvalue ::= nonConstExpr PERIOD * TRGCONST - NAME shift 328 - TRGCONST shift 327 + NAME shift 366 + TRGCONST shift 365 -State 442: +State 493: nonConstExpr ::= nonConstExpr PERIOD * NAME nonConstExpr ::= nonConstExpr PERIOD * TRGCONST - NAME shift 302 - TRGCONST shift 301 + NAME shift 227 + TRGCONST shift 226 -State 443: - (13) relimp_start ::= relimp_start PERIOD * +State 494: + import_chunk ::= absimp_start AS * NAME SEMICOLON + import_chunk ::= absimp_start AS * TRGCONST SEMICOLON - PERIOD reduce 13 - NAME reduce 13 + NAME shift 607 + TRGCONST shift 606 -State 444: - relimp_start ::= relimp_start * PERIOD - relimp_path ::= relimp_start * NAME +State 495: + absimp_start ::= absimp_start PERIOD * NAME + absimp_start ::= absimp_start PERIOD * TRGCONST - PERIOD shift 443 - NAME shift 395 + NAME shift 433 + TRGCONST shift 432 -State 445: - (12) relimp_start ::= IMPORT PERIOD * +State 496: + import_chunk ::= relimp_path AS * NAME SEMICOLON + import_chunk ::= relimp_path AS * TRGCONST SEMICOLON - PERIOD reduce 12 - NAME reduce 12 + NAME shift 609 + TRGCONST shift 608 -State 446: - relimp_start ::= IMPORT * PERIOD - absimp_start ::= IMPORT * NAME +State 497: + relimp_path ::= relimp_path PERIOD * NAME + relimp_path ::= relimp_path PERIOD * TRGCONST - PERIOD shift 445 - NAME shift 396 + NAME shift 436 + TRGCONST shift 435 -State 447: +State 498: object_chunk ::= object_body RBRACKET * SEMICOLON - SEMICOLON shift 343 + SEMICOLON shift 373 -State 448: +State 499: method_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes - RPAREN shift 143 + RPAREN shift 157 -State 449: +State 500: method_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes - LPAREN shift 116 + LPAREN shift 136 -State 450: +State 501: method_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes - NAME shift 449 + NAME shift 500 -State 451: +State 502: object_body ::= object_body VAR typedNameList_nonEmpty * SEMICOLON - SEMICOLON shift 367 + SEMICOLON shift 404 -State 452: +State 503: object_body ::= OBJECT NAME * LBRACKET - LBRACKET shift 368 + LBRACKET shift 405 -State 453: +State 504: object_body ::= OBJECT * NAME LBRACKET - NAME shift 452 + NAME shift 503 -State 454: +State 505: logicExpr ::= KILLS LPAREN fArgs * RPAREN - RPAREN shift 214 + RPAREN shift 336 -State 455: +State 506: funcexpr ::= NAME LPAREN fArgs * RPAREN - RPAREN shift 215 + RPAREN shift 210 -State 456: +State 507: lambdaExprStart ::= FUNCTION LPAREN typedNameList * RPAREN fdef_rettypes - RPAREN shift 144 + RPAREN shift 158 -State 457: - (69) typedNameList ::= typedNameList_nonEmpty * +State 508: + (75) typedNameList ::= typedNameList_nonEmpty * - RPAREN reduce 69 + RPAREN reduce 75 -State 458: - (240) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * +State 509: + (280) switchcase_block ::= switchcase_header RPAREN LBRACKET case_chunks default_chunk * - RBRACKET reduce 240 + RBRACKET reduce 280 -State 459: +State 510: default_clause ::= DEFAULT * COLON - COLON shift 317 + COLON shift 352 -State 460: +State 511: actionStmt ::= constActionList ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON - SEMICOLON shift 159 + SEMICOLON shift 173 -State 461: +State 512: constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON actionStmt ::= constActionList ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON - LPAREN shift 28 + LPAREN shift 23 -State 462: +State 513: constAction ::= ACTIONNAME LPAREN RPAREN * SEMICOLON - SEMICOLON shift 161 + SEMICOLON shift 175 -State 463: +State 514: actionStmt ::= ACTIONNAME LPAREN fNonConstArgs_nonEmpty RPAREN * SEMICOLON - SEMICOLON shift 162 + SEMICOLON shift 176 -State 464: +State 515: constAction ::= ACTIONNAME LPAREN fConstArgs_nonEmpty RPAREN * SEMICOLON - SEMICOLON shift 163 + SEMICOLON shift 177 -State 465: +State 516: actionStmt ::= ACTIONNAME * LPAREN fNonConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= ACTIONNAME * LPAREN fConstArgs_nonEmpty RPAREN SEMICOLON constAction ::= ACTIONNAME * LPAREN RPAREN SEMICOLON - constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN - LPAREN shift 20 + LPAREN shift 24 -State 466: - (269) return_stmt ::= RETURN exprList * +State 517: + (309) return_stmt ::= RETURN exprList * - SEMICOLON reduce 269 + SEMICOLON reduce 309 -State 467: - (268) break_stmt ::= BREAK * +State 518: + (308) break_stmt ::= BREAK * - SEMICOLON reduce 268 + SEMICOLON reduce 308 -State 468: - (267) continue_stmt ::= CONTINUE * +State 519: + (307) continue_stmt ::= CONTINUE * - SEMICOLON reduce 267 + SEMICOLON reduce 307 -State 469: +State 520: foreach_stmt ::= foreach_header * RPAREN stmt RPAREN shift 5 -State 470: - (264) foreach_opener ::= FOREACH LPAREN * +State 521: + (304) foreach_opener ::= FOREACH LPAREN * - NAME reduce 264 + NAME reduce 304 -State 471: +State 522: foreach_opener ::= FOREACH * LPAREN - LPAREN shift 470 + LPAREN shift 521 -State 472: +State 523: for_stmt ::= for_header * RPAREN stmt RPAREN shift 6 -State 473: - (262) for_header ::= for_header2 for_action_stmt * +State 524: + (302) for_header ::= for_header2 for_action_stmt * - RPAREN reduce 262 + RPAREN reduce 302 -State 474: +State 525: for_header2 ::= for_header1 expr * SEMICOLON - SEMICOLON shift 332 + SEMICOLON shift 370 -State 475: +State 526: for_header1 ::= for_opener for_init_stmt * SEMICOLON - SEMICOLON shift 333 + SEMICOLON shift 362 -State 476: +State 527: for_opener ::= FOR * LPAREN - LPAREN shift 331 + LPAREN shift 369 -State 477: +State 528: while_stmt ::= while_header * RPAREN stmt RPAREN shift 7 -State 478: - (245) while_header ::= while_start LPAREN expr * +State 529: + (285) while_header ::= while_start LPAREN expr * - RPAREN reduce 245 + RPAREN reduce 285 -State 479: +State 530: while_header ::= while_start * LPAREN expr - LPAREN shift 48 + LPAREN shift 43 -State 480: - (244) while_start ::= WHILE * +State 531: + (284) while_start ::= WHILE * - LPAREN reduce 244 + LPAREN reduce 284 -State 481: +State 532: switchcase_stmt ::= switchcase_block * RBRACKET - RBRACKET shift 167 + RBRACKET shift 181 -State 482: +State 533: switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks default_chunk switchcase_block ::= switchcase_header RPAREN * LBRACKET case_chunks switchcase_block ::= switchcase_header RPAREN * LBRACKET - LBRACKET shift 114 + LBRACKET shift 129 -State 483: +State 534: switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks default_chunk switchcase_block ::= switchcase_header * RPAREN LBRACKET case_chunks switchcase_block ::= switchcase_header * RPAREN LBRACKET - RPAREN shift 482 + RPAREN shift 533 -State 484: - (230) switchcase_header ::= SWITCHCASE LPAREN expr * +State 535: + (270) switchcase_header ::= SWITCHCASE LPAREN expr * - RPAREN reduce 230 + RPAREN reduce 270 -State 485: +State 536: switchcase_header ::= SWITCHCASE * LPAREN expr - LPAREN shift 49 + LPAREN shift 44 -State 486: +State 537: if_block ::= if_block elif_header * RPAREN stmt RPAREN shift 8 -State 487: - (225) elif_header ::= elif_start LPAREN expr * +State 538: + (265) elif_header ::= elif_start LPAREN expr * - RPAREN reduce 225 + RPAREN reduce 265 -State 488: +State 539: elif_header ::= elif_start * LPAREN expr - LPAREN shift 50 + LPAREN shift 45 -State 489: - (224) elif_start ::= ELSE IF * +State 540: + (264) elif_start ::= ELSE IF * - LPAREN reduce 224 + LPAREN reduce 264 -State 490: +State 541: if_block ::= if_header * RPAREN stmt RPAREN shift 9 -State 491: - (222) if_header ::= if_start LPAREN expr * +State 542: + (262) if_header ::= if_start LPAREN expr * - RPAREN reduce 222 + RPAREN reduce 262 -State 492: +State 543: if_header ::= if_start * LPAREN expr - LPAREN shift 51 + LPAREN shift 46 -State 493: - (221) if_start ::= IF * +State 544: + (261) if_start ::= IF * - LPAREN reduce 221 + LPAREN reduce 261 -State 494: +State 545: once_block ::= once_header * RPAREN stmt RPAREN shift 11 -State 495: - (216) once_header ::= once_start LPAREN expr * +State 546: + (256) once_header ::= once_start LPAREN expr * - RPAREN reduce 216 + RPAREN reduce 256 -State 496: +State 547: vdefAssignStatic_stmt ::= STATIC * VAR nameList_nonEmpty ASSIGN exprList_nonEmpty - VAR shift 153 + VAR shift 167 -State 497: +State 548: nameList_nonEmpty ::= nameList_nonEmpty COMMA * NAME - NAME shift 360 + NAME shift 395 -State 498: - funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN +State 549: + logicExpr ::= logicExpr QMARK expr * COLON expr - RPAREN shift 224 + COLON shift 59 -State 499: - nonConstExpr ::= nonConstExpr QMARK expr * COLON expr +State 550: + constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET - COLON shift 64 + RSQBRACKET shift 233 -State 500: - constExpr ::= LSQBRACKET exprList_nonEmpty commaSkippable * RSQBRACKET +State 551: + funcexpr ::= nonConstExpr LPAREN fArgs * RPAREN - RSQBRACKET shift 230 + RPAREN shift 211 -State 501: - logicExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN +State 552: + (217) constLogicAndExpr ::= constCompExpr * - RPAREN shift 236 + RPAREN reduce 217 -State 502: +State 553: constExpr ::= ACTIONNAME LPAREN fArgs * RPAREN - RPAREN shift 274 + RPAREN shift 236 -State 503: - (104) fArgs ::= fArgs_nonEmpty * +State 554: + logicExpr ::= CONDITIONNAME LPAREN fArgs * RPAREN - RPAREN reduce 104 + RPAREN shift 340 -State 504: - constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN +State 555: + (110) fArgs ::= fArgs_nonEmpty * - LPAREN shift 21 + RPAREN reduce 110 -State 505: +State 556: logicExpr ::= CONDITIONNAME * LPAREN fArgs RPAREN - LPAREN shift 22 + LPAREN shift 18 -State 506: +State 557: + logicAndExpr ::= constCompExpr * LAND compExpr + + LAND shift 71 + +State 558: + logicExpr ::= constLogicAndExpr * LOR logicAndExpr + + LOR shift 69 + +State 559: + constExpr ::= ACTIONNAME * LPAREN fArgs RPAREN + + LPAREN shift 19 + +State 560: logicExpr ::= LIST LPAREN exprList_nonEmpty commaSkippable * RPAREN - RPAREN shift 285 + RPAREN shift 342 -State 507: +State 561: logicExpr ::= LIST * LPAREN exprList_nonEmpty commaSkippable RPAREN - LPAREN shift 41 + LPAREN shift 36 -State 508: +State 562: constExpr ::= VARRAY LPAREN exprList_nonEmpty commaSkippable * RPAREN - RPAREN shift 286 + RPAREN shift 258 -State 509: +State 563: constExpr ::= VARRAY * LPAREN exprList_nonEmpty commaSkippable RPAREN - LPAREN shift 42 + LPAREN shift 37 -State 510: +State 564: constExpr ::= STATTXTTBL LPAREN STRING * RPAREN - RPAREN shift 287 + RPAREN shift 259 -State 511: +State 565: constExpr ::= STATTXTTBL LPAREN * STRING RPAREN - STRING shift 510 + STRING shift 564 -State 512: +State 566: constExpr ::= STATTXTTBL * LPAREN STRING RPAREN - LPAREN shift 511 + LPAREN shift 565 -State 513: +State 567: constExpr ::= LOCATION LPAREN STRING * RPAREN - RPAREN shift 288 + RPAREN shift 260 -State 514: +State 568: constExpr ::= LOCATION LPAREN * STRING RPAREN - STRING shift 513 + STRING shift 567 -State 515: +State 569: constExpr ::= LOCATION * LPAREN STRING RPAREN - LPAREN shift 514 + LPAREN shift 568 -State 516: +State 570: constExpr ::= SWITCH LPAREN STRING * RPAREN - RPAREN shift 289 + RPAREN shift 261 -State 517: +State 571: constExpr ::= SWITCH LPAREN * STRING RPAREN - STRING shift 516 + STRING shift 570 -State 518: +State 572: constExpr ::= SWITCH * LPAREN STRING RPAREN - LPAREN shift 517 + LPAREN shift 571 -State 519: +State 573: constExpr ::= UNIT LPAREN STRING * RPAREN - RPAREN shift 290 + RPAREN shift 262 -State 520: +State 574: constExpr ::= UNIT LPAREN * STRING RPAREN - STRING shift 519 + STRING shift 573 -State 521: +State 575: constExpr ::= UNIT * LPAREN STRING RPAREN - LPAREN shift 520 + LPAREN shift 574 -State 522: +State 576: constExpr ::= MAPSTRING LPAREN STRING * RPAREN - RPAREN shift 291 + RPAREN shift 263 -State 523: +State 577: constExpr ::= MAPSTRING LPAREN * STRING RPAREN - STRING shift 522 + STRING shift 576 -State 524: +State 578: constExpr ::= MAPSTRING * LPAREN STRING RPAREN - LPAREN shift 523 + LPAREN shift 577 -State 525: +State 579: nonConstExpr ::= L2V LPAREN expr * RPAREN - RPAREN shift 292 + RPAREN shift 222 -State 526: +State 580: nonConstExpr ::= L2V * LPAREN expr RPAREN - LPAREN shift 75 + LPAREN shift 60 -State 527: +State 581: exprList_nonEmpty ::= funcexpr LSQBRACKET LSQBRACKET numList_nonEmpty RSQBRACKET * RSQBRACKET - RSQBRACKET shift 311 + RSQBRACKET shift 346 -State 528: +State 582: numList_nonEmpty ::= numList_nonEmpty COMMA * NUMBER - NUMBER shift 438 + NUMBER shift 489 -State 529: +State 583: exprList_nonEmpty ::= funcexpr LSQBRACKET * LSQBRACKET numList_nonEmpty RSQBRACKET RSQBRACKET nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - LSQBRACKET shift 155 + LSQBRACKET shift 169 -State 530: +State 584: + constExpr ::= LPAREN constLogicExpr * RPAREN + + RPAREN shift 265 + +State 585: nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET lvalue ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - RSQBRACKET shift 326 + RSQBRACKET shift 364 -State 531: +State 586: bodyStmt ::= return_stmt * SEMICOLON - SEMICOLON shift 173 + SEMICOLON shift 187 -State 532: +State 587: bodyStmt ::= break_stmt * SEMICOLON - SEMICOLON shift 174 + SEMICOLON shift 188 -State 533: +State 588: bodyStmt ::= continue_stmt * SEMICOLON - SEMICOLON shift 175 + SEMICOLON shift 189 -State 534: +State 589: bodyStmt ::= funcexprStmt * SEMICOLON - SEMICOLON shift 183 + SEMICOLON shift 197 -State 535: +State 590: bodyStmt ::= assign_stmt * SEMICOLON - SEMICOLON shift 184 + SEMICOLON shift 198 -State 536: +State 591: bodyStmt ::= cdef_stmt * SEMICOLON - SEMICOLON shift 185 + SEMICOLON shift 199 -State 537: +State 592: bodyStmt ::= vdefAssign_stmt * SEMICOLON - SEMICOLON shift 186 + SEMICOLON shift 200 -State 538: +State 593: bodyStmt ::= vdefAssignStatic_stmt * SEMICOLON - SEMICOLON shift 187 + SEMICOLON shift 201 -State 539: +State 594: bodyStmt ::= vdef_stmt * SEMICOLON - SEMICOLON shift 188 + SEMICOLON shift 202 -State 540: +State 595: blockStmt ::= lbracket error * RBRACKET - RBRACKET shift 191 + RBRACKET shift 205 -State 541: +State 596: stmt ::= error * SEMICOLON - SEMICOLON shift 195 + SEMICOLON shift 209 -State 542: +State 597: lambdaExprStart ::= FUNCTION * LPAREN typedNameList RPAREN fdef_rettypes - LPAREN shift 117 + LPAREN shift 137 -State 543: +State 598: nonConstExpr ::= nonConstExpr LSQBRACKET expr * RSQBRACKET - RSQBRACKET shift 300 + RSQBRACKET shift 225 -State 544: +State 599: nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER RSQBRACKET * RSQBRACKET - RSQBRACKET shift 308 + RSQBRACKET shift 230 -State 545: +State 600: nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET NUMBER * RSQBRACKET RSQBRACKET - RSQBRACKET shift 544 + RSQBRACKET shift 599 -State 546: +State 601: nonConstExpr ::= funcexpr LSQBRACKET LSQBRACKET * NUMBER RSQBRACKET RSQBRACKET - NUMBER shift 545 + NUMBER shift 600 -State 547: +State 602: nonConstExpr ::= funcexpr LSQBRACKET * LSQBRACKET NUMBER RSQBRACKET RSQBRACKET - LSQBRACKET shift 546 + LSQBRACKET shift 601 -State 548: +State 603: fdef_header ::= FUNCTION NAME LPAREN typedNameList * RPAREN fdef_rettypes fdecl_chunk ::= FUNCTION NAME LPAREN typedNameList * RPAREN SEMICOLON - RPAREN shift 145 + RPAREN shift 159 -State 549: +State 604: fdef_header ::= FUNCTION NAME * LPAREN typedNameList RPAREN fdef_rettypes fdecl_chunk ::= FUNCTION NAME * LPAREN typedNameList RPAREN SEMICOLON - LPAREN shift 118 + LPAREN shift 138 -State 550: +State 605: fdef_header ::= FUNCTION * NAME LPAREN typedNameList RPAREN fdef_rettypes fdecl_chunk ::= FUNCTION * NAME LPAREN typedNameList RPAREN SEMICOLON - NAME shift 549 + NAME shift 604 -State 551: - import_chunk ::= absimp_start AS NAME * SEMICOLON +State 606: + import_chunk ::= absimp_start AS TRGCONST * SEMICOLON - SEMICOLON shift 347 + SEMICOLON shift 377 -State 552: - import_chunk ::= absimp_start AS * NAME SEMICOLON +State 607: + import_chunk ::= absimp_start AS NAME * SEMICOLON - NAME shift 551 + SEMICOLON shift 378 -State 553: - absimp_start ::= absimp_start PERIOD * NAME +State 608: + import_chunk ::= relimp_path AS TRGCONST * SEMICOLON - NAME shift 391 + SEMICOLON shift 379 -State 554: +State 609: import_chunk ::= relimp_path AS NAME * SEMICOLON - SEMICOLON shift 348 - -State 555: - import_chunk ::= relimp_path AS * NAME SEMICOLON - - NAME shift 554 - -State 556: - relimp_path ::= relimp_path PERIOD * NAME - - NAME shift 393 + SEMICOLON shift 380 -State 557: +State 610: chunk ::= cdef_global_stmt * SEMICOLON - SEMICOLON shift 351 + SEMICOLON shift 383 -State 558: +State 611: chunk ::= vdefAssign_global_stmt * SEMICOLON - SEMICOLON shift 352 + SEMICOLON shift 384 -State 559: +State 612: chunk ::= vdef_stmt * SEMICOLON - SEMICOLON shift 353 + SEMICOLON shift 385 ---------------------------------------------------- Symbols: @@ -31544,19 +29828,19 @@ Symbols: 30: SEMICOLON 31: IMPORT 32: NAME - 33: AS - 34: COLON - 35: FUNCTION - 36: RPAREN - 37: OBJECT - 38: LBRACKET - 39: VAR - 40: RBRACKET - 41: NUMBER - 42: RSQBRACKET - 43: SUBSCRIPT - 44: KILLS - 45: TRGCONST + 33: TRGCONST + 34: AS + 35: COLON + 36: FUNCTION + 37: RPAREN + 38: OBJECT + 39: LBRACKET + 40: VAR + 41: RBRACKET + 42: NUMBER + 43: RSQBRACKET + 44: SUBSCRIPT + 45: KILLS 46: MEMBER 47: STRING 48: FUNCCALL @@ -31611,24 +29895,24 @@ Symbols: 97: relimp_path: IMPORT 98: absimp_start: IMPORT 99: fdef_rettypes: COLON - 100: exprList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 100: exprList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME 101: fdef_header: FUNCTION 102: typedNameList: NAME - 103: stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 103: stmt: LNOT PLUS MINUS BITNOT LPAREN SEMICOLON NAME LBRACKET VAR L2V STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME 104: object_body: OBJECT 105: typedNameList_nonEmpty: NAME 106: method_header: FUNCTION 107: method_chunk: FUNCTION - 108: bodyStmt: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 108: bodyStmt: LNOT PLUS MINUS BITNOT LPAREN SEMICOLON NAME LBRACKET VAR L2V STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME 109: lbracket: LBRACKET 110: rbracket: RBRACKET 111: blockStmtSub: LBRACKET - 112: bodyStmtList: PLUS MINUS BITNOT LPAREN LSQBRACKET SEMICOLON NAME FUNCTION LBRACKET VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME + 112: bodyStmtList: LNOT PLUS MINUS BITNOT LPAREN SEMICOLON NAME LBRACKET VAR L2V STATIC CONST INC DEC ONCE IF SWITCHCASE WHILE FOR FOREACH CONTINUE BREAK RETURN ACTIONNAME 113: vdefAssignStatic_stmt: STATIC 114: vdefAssign_stmt: VAR 115: cdef_stmt: CONST - 116: assign_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME - 117: funcexprStmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 116: assign_stmt: LNOT PLUS MINUS BITNOT LPAREN NAME L2V INC DEC + 117: funcexprStmt: LNOT PLUS MINUS BITNOT LPAREN NAME L2V 118: actionStmt: ACTIONNAME 119: once_stmt: ONCE 120: if_stmt: IF @@ -31641,53 +29925,72 @@ Symbols: 127: return_stmt: RETURN 128: numList_nonEmpty: NUMBER 129: typedName: NAME - 130: expr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 130: expr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME 131: nameList_nonEmpty: NAME - 132: funcexpr: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 133: nonConstExpr: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 134: exprList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 135: constExpr: PLUS MINUS BITNOT LPAREN LSQBRACKET FUNCTION NUMBER KILLS TRGCONST MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 132: funcexpr: LNOT PLUS MINUS BITNOT LPAREN NAME L2V + 133: nonConstExpr: LNOT PLUS MINUS BITNOT LPAREN NAME L2V + 134: exprList: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 135: constExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME 136: lambdaExprStart: FUNCTION - 137: logicExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 138: fNonConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 139: fConstArg: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 140: fArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 141: fConstArgs_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 142: fNonConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 143: fArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 144: fArgs: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME - 145: commaSkippable: COMMA - 146: lvalue: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 147: lvalueList_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME - 148: once_start: ONCE - 149: once_header: ONCE - 150: once_block: ONCE - 151: once_nocond: ONCE - 152: if_start: IF - 153: if_header: IF - 154: if_block: IF - 155: elif_start: ELSE - 156: elif_header: ELSE - 157: else_header: ELSE - 158: switchcase_header: SWITCHCASE - 159: case_start: CASE - 160: case_clause: CASE - 161: case_chunk: CASE - 162: case_chunks: CASE - 163: default_clause: DEFAULT - 164: default_chunk: DEFAULT - 165: switchcase_block: SWITCHCASE - 166: while_start: WHILE - 167: while_header: WHILE - 168: for_opener: FOR - 169: for_init_stmt_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY CONST INC DEC ACTIONNAME - 170: for_init_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION VAR NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY CONST INC DEC ACTIONNAME - 171: for_action_stmt_nonEmpty: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME - 172: for_action_stmt: PLUS MINUS BITNOT LPAREN LSQBRACKET NAME FUNCTION NUMBER KILLS TRGCONST L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY INC DEC ACTIONNAME - 173: for_header1: FOR - 174: for_header2: FOR - 175: for_header: FOR - 176: foreach_opener: FOREACH - 177: foreach_header: FOREACH - 178: constAction: ACTIONNAME - 179: constActionList: ACTIONNAME + 137: constLogicExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 138: logicExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 139: fNonConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 140: fConstArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 141: fArg: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 142: fConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS STRING MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 143: fNonConstArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 144: fArgs_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 145: fArgs: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS STRING L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY LIST CONDITIONNAME ACTIONNAME + 146: commaSkippable: COMMA + 147: constTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 148: constFactor: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 149: term: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 150: factor: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 151: constShTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 152: shTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 153: constBitAndTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 154: bitAndTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 155: constBitXorTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 156: bitXorTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 157: constBitOrTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 158: bitOrTerm: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 159: constEqExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 160: eqExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 161: constCompExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 162: compExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 163: constLogicAndExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET TRGCONST FUNCTION NUMBER KILLS MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 164: logicAndExpr: LNOT PLUS MINUS BITNOT LPAREN LSQBRACKET NAME TRGCONST FUNCTION NUMBER KILLS L2V MAPSTRING UNIT SWITCH LOCATION STATTXTTBL VARRAY ACTIONNAME + 165: lvalue: LNOT PLUS MINUS BITNOT LPAREN NAME L2V + 166: lvalueList_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN NAME L2V + 167: once_start: ONCE + 168: once_header: ONCE + 169: once_block: ONCE + 170: once_nocond: ONCE + 171: if_start: IF + 172: if_header: IF + 173: if_block: IF + 174: elif_start: ELSE + 175: elif_header: ELSE + 176: else_header: ELSE + 177: switchcase_header: SWITCHCASE + 178: case_start: CASE + 179: case_clause: CASE + 180: case_chunk: CASE + 181: case_chunks: CASE + 182: default_clause: DEFAULT + 183: default_chunk: DEFAULT + 184: switchcase_block: SWITCHCASE + 185: while_start: WHILE + 186: while_header: WHILE + 187: for_opener: FOR + 188: for_init_stmt_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN NAME VAR L2V CONST INC DEC + 189: for_init_stmt: LNOT PLUS MINUS BITNOT LPAREN NAME VAR L2V CONST INC DEC + 190: for_action_stmt_nonEmpty: LNOT PLUS MINUS BITNOT LPAREN NAME L2V INC DEC + 191: for_action_stmt: LNOT PLUS MINUS BITNOT LPAREN NAME L2V INC DEC + 192: for_header1: FOR + 193: for_header2: FOR + 194: for_header: FOR + 195: foreach_opener: FOREACH + 196: foreach_header: FOREACH + 197: constAction: ACTIONNAME + 198: constActionList: ACTIONNAME