diff --git a/spec/fixtures/grammars/c.cc b/spec/fixtures/grammars/c.cc index ec3045ca..d8f4fbe4 100644 --- a/spec/fixtures/grammars/c.cc +++ b/spec/fixtures/grammars/c.cc @@ -78,12 +78,15 @@ extern const Grammar c = Grammar({ err(seq({ optional(sym("declaration_specifiers")), sym("_type_specifier"), - comma_sep1(sym("_init_declarator")) })), + comma_sep1(choice({ + sym("_declarator"), + sym("_init_declarator") })) })), str(";") }) }, - { "_init_declarator", choice({ + { "_init_declarator", seq({ sym("_declarator"), - seq({ sym("_declarator"), str("="), sym("initializer") }) }) }, + str("="), + sym("initializer") }) }, { "initializer", choice({ sym("_expression"), @@ -174,6 +177,7 @@ extern const Grammar c = Grammar({ sym("math_expression"), sym("call_expression"), sym("pointer_expression"), + sym("assignment_expression"), sym("string"), sym("identifier"), sym("number"), @@ -201,8 +205,27 @@ extern const Grammar c = Grammar({ str("&") }), sym("_expression") }) }, + { "assignment_expression", prec_right(-1, seq({ + sym("_expression"), + str("="), + sym("_expression") })) }, + { "_statement", choice({ - sym("expression_statement") }) }, + sym("for_statement"), + sym("expression_statement"), + sym("compound_statement") }) }, + + { "for_statement", seq({ + str("for"), + str("("), + choice({ + sym("declaration"), + seq({ optional(sym("_expression")), str(";") }) }), + optional(sym("_expression")), + str(";"), + comma_sep(sym("_expression")), + str(")"), + sym("_statement") }) }, { "expression_statement", seq({ sym("_expression"), diff --git a/spec/fixtures/parsers/c.c b/spec/fixtures/parsers/c.c index af650e35..c1fb6a27 100644 --- a/spec/fixtures/parsers/c.c +++ b/spec/fixtures/parsers/c.c @@ -1,7 +1,7 @@ #include "tree_sitter/parser.h" -#define STATE_COUNT 387 -#define SYMBOL_COUNT 79 +#define STATE_COUNT 446 +#define SYMBOL_COUNT 82 enum { sym_translation_unit = ts_builtin_sym_start, @@ -35,7 +35,9 @@ enum { sym_math_expression, sym_call_expression, sym_pointer_expression, + sym_assignment_expression, sym__statement, + sym_for_statement, sym_expression_statement, sym_macro_type, aux_sym_translation_unit_repeat1, @@ -77,6 +79,7 @@ enum { anon_sym_volatile, anon_sym_PLUS, anon_sym_AMP, + anon_sym_for, sym_string, sym_identifier, sym_number, @@ -115,7 +118,9 @@ static const char *ts_symbol_names[] = { [sym_math_expression] = "math_expression", [sym_call_expression] = "call_expression", [sym_pointer_expression] = "pointer_expression", + [sym_assignment_expression] = "assignment_expression", [sym__statement] = "_statement", + [sym_for_statement] = "for_statement", [sym_expression_statement] = "expression_statement", [sym_macro_type] = "macro_type", [aux_sym_translation_unit_repeat1] = "translation_unit_repeat1", @@ -159,6 +164,7 @@ static const char *ts_symbol_names[] = { [anon_sym_volatile] = "volatile", [anon_sym_PLUS] = "+", [anon_sym_AMP] = "&", + [anon_sym_for] = "for", [sym_string] = "string", [sym_identifier] = "identifier", [sym_number] = "number", @@ -197,7 +203,9 @@ static const TSSymbolMetadata ts_symbol_metadata[SYMBOL_COUNT] = { [sym_math_expression] = {.visible = true, .named = true, .extra = false}, [sym_call_expression] = {.visible = true, .named = true, .extra = false}, [sym_pointer_expression] = {.visible = true, .named = true, .extra = false}, + [sym_assignment_expression] = {.visible = true, .named = true, .extra = false}, [sym__statement] = {.visible = false, .named = false, .extra = false}, + [sym_for_statement] = {.visible = true, .named = true, .extra = false}, [sym_expression_statement] = {.visible = true, .named = true, .extra = false}, [sym_macro_type] = {.visible = true, .named = true, .extra = false}, [aux_sym_translation_unit_repeat1] = {.visible = false, .named = false, .extra = false}, @@ -241,6 +249,7 @@ static const TSSymbolMetadata ts_symbol_metadata[SYMBOL_COUNT] = { [anon_sym_volatile] = {.visible = true, .named = false, .extra = false}, [anon_sym_PLUS] = {.visible = true, .named = false, .extra = false}, [anon_sym_AMP] = {.visible = true, .named = false, .extra = false}, + [anon_sym_for] = {.visible = true, .named = false, .extra = false}, [sym_string] = {.visible = true, .named = true, .extra = false}, [sym_identifier] = {.visible = true, .named = true, .extra = false}, [sym_number] = {.visible = true, .named = true, .extra = false}, @@ -1537,18 +1546,22 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(130); if (lookahead == '/') ADVANCE(10); + if (lookahead == '=') + ADVANCE(131); if (lookahead == ']') ADVANCE(124); LEX_ERROR(); case 130: ACCEPT_TOKEN(anon_sym_PLUS); case 131: + ACCEPT_TOKEN(anon_sym_EQ); + case 132: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(131); + ADVANCE(132); if (lookahead == '\"') ADVANCE(116); if (lookahead == '&') @@ -1574,7 +1587,7 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == 'l') ADVANCE(31); if (lookahead == 'r') - ADVANCE(132); + ADVANCE(133); if (lookahead == 's') ADVANCE(93); if (lookahead == 'u') @@ -1582,7 +1595,7 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == 'v') ADVANCE(83); LEX_ERROR(); - case 132: + case 133: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -1590,9 +1603,9 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ('f' <= lookahead && lookahead <= 'z')) ADVANCE(15); if (lookahead == 'e') - ADVANCE(133); + ADVANCE(134); ACCEPT_TOKEN(sym_identifier); - case 133: + case 134: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || (lookahead == '_') || @@ -1602,29 +1615,6 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == 's') ADVANCE(43); ACCEPT_TOKEN(sym_identifier); - case 134: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(134); - if (lookahead == '\"') - ADVANCE(116); - if (lookahead == '&') - ADVANCE(120); - if (lookahead == '(') - ADVANCE(97); - if (lookahead == '*') - ADVANCE(98); - if (lookahead == '/') - ADVANCE(10); - if ('0' <= lookahead && lookahead <= '9') - ADVANCE(121); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(15); - LEX_ERROR(); case 135: START_TOKEN(); if ((lookahead == '\t') || @@ -1638,8 +1628,6 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(120); if (lookahead == '(') ADVANCE(97); - if (lookahead == ')') - ADVANCE(107); if (lookahead == '*') ADVANCE(98); if (lookahead == '/') @@ -1657,18 +1645,23 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(136); + if (lookahead == '\"') + ADVANCE(116); + if (lookahead == '&') + ADVANCE(120); if (lookahead == '(') ADVANCE(97); if (lookahead == ')') ADVANCE(107); if (lookahead == '*') ADVANCE(98); - if (lookahead == '+') - ADVANCE(130); - if (lookahead == ',') - ADVANCE(127); if (lookahead == '/') ADVANCE(10); + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(121); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(15); LEX_ERROR(); case 137: START_TOKEN(); @@ -1683,8 +1676,14 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(107); if (lookahead == '*') ADVANCE(98); + if (lookahead == '+') + ADVANCE(130); + if (lookahead == ',') + ADVANCE(127); if (lookahead == '/') ADVANCE(10); + if (lookahead == '=') + ADVANCE(131); LEX_ERROR(); case 138: START_TOKEN(); @@ -1693,6 +1692,22 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(138); + if (lookahead == '(') + ADVANCE(97); + if (lookahead == ')') + ADVANCE(107); + if (lookahead == '*') + ADVANCE(98); + if (lookahead == '/') + ADVANCE(10); + LEX_ERROR(); + case 139: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(139); if (lookahead == '/') ADVANCE(10); if (('A' <= lookahead && lookahead <= 'Z') || @@ -1708,7 +1723,7 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == 'l') ADVANCE(31); if (lookahead == 'r') - ADVANCE(132); + ADVANCE(133); if (lookahead == 's') ADVANCE(93); if (lookahead == 'u') @@ -1716,24 +1731,6 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == 'v') ADVANCE(83); LEX_ERROR(); - case 139: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(139); - if (lookahead == '(') - ADVANCE(97); - if (lookahead == ')') - ADVANCE(107); - if (lookahead == '*') - ADVANCE(98); - if (lookahead == '+') - ADVANCE(130); - if (lookahead == '/') - ADVANCE(10); - LEX_ERROR(); case 140: START_TOKEN(); if ((lookahead == '\t') || @@ -1745,10 +1742,14 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(97); if (lookahead == ')') ADVANCE(107); + if (lookahead == '*') + ADVANCE(98); + if (lookahead == '+') + ADVANCE(130); if (lookahead == '/') ADVANCE(10); - if (lookahead == '[') - ADVANCE(114); + if (lookahead == '=') + ADVANCE(131); LEX_ERROR(); case 141: START_TOKEN(); @@ -1759,10 +1760,12 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(141); if (lookahead == '(') ADVANCE(97); - if (lookahead == '*') - ADVANCE(98); + if (lookahead == ')') + ADVANCE(107); if (lookahead == '/') ADVANCE(10); + if (lookahead == '[') + ADVANCE(114); LEX_ERROR(); case 142: START_TOKEN(); @@ -1773,6 +1776,20 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(142); if (lookahead == '(') ADVANCE(97); + if (lookahead == '*') + ADVANCE(98); + if (lookahead == '/') + ADVANCE(10); + LEX_ERROR(); + case 143: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(143); + if (lookahead == '(') + ADVANCE(97); if (lookahead == ')') ADVANCE(107); if (lookahead == '*') @@ -1782,37 +1799,18 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == '[') ADVANCE(114); LEX_ERROR(); - case 143: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(144); - if (lookahead == '\n') - ADVANCE(156); - if (lookahead == '/') - ADVANCE(145); - if (lookahead == '\\') - ADVANCE(153); - if (!((lookahead == 0) || - (lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ') || - (lookahead == '/') || - (lookahead == '\\'))) - ADVANCE(155); - LEX_ERROR(); case 144: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(144); - if (lookahead == '/') ADVANCE(145); + if (lookahead == '\n') + ADVANCE(157); + if (lookahead == '/') + ADVANCE(146); if (lookahead == '\\') - ADVANCE(153); + ADVANCE(154); if (!((lookahead == 0) || (lookahead == '\t') || (lookahead == '\n') || @@ -1820,149 +1818,154 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { (lookahead == ' ') || (lookahead == '/') || (lookahead == '\\'))) - ADVANCE(155); - ACCEPT_TOKEN(sym_preproc_arg); + ADVANCE(156); + LEX_ERROR(); case 145: - if (lookahead == '*') - ADVANCE(146); + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(145); if (lookahead == '/') - ADVANCE(151); + ADVANCE(146); if (lookahead == '\\') - ADVANCE(153); + ADVANCE(154); + if (!((lookahead == 0) || + (lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ') || + (lookahead == '/') || + (lookahead == '\\'))) + ADVANCE(156); + ACCEPT_TOKEN(sym_preproc_arg); + case 146: + if (lookahead == '*') + ADVANCE(147); + if (lookahead == '/') + ADVANCE(152); + if (lookahead == '\\') + ADVANCE(154); if (!((lookahead == 0) || (lookahead == '\n') || (lookahead == '*') || (lookahead == '/') || (lookahead == '\\'))) - ADVANCE(155); - ACCEPT_TOKEN(sym_preproc_arg); - case 146: - if (lookahead == '\n') - ADVANCE(11); - if (lookahead == '*') - ADVANCE(147); - if (lookahead == '\\') - ADVANCE(149); - if (!((lookahead == 0) || - (lookahead == '\n') || - (lookahead == '*') || - (lookahead == '\\'))) - ADVANCE(146); + ADVANCE(156); ACCEPT_TOKEN(sym_preproc_arg); case 147: if (lookahead == '\n') ADVANCE(11); - if (lookahead == '/') + if (lookahead == '*') ADVANCE(148); if (lookahead == '\\') + ADVANCE(150); + if (!((lookahead == 0) || + (lookahead == '\n') || + (lookahead == '*') || + (lookahead == '\\'))) + ADVANCE(147); + ACCEPT_TOKEN(sym_preproc_arg); + case 148: + if (lookahead == '\n') + ADVANCE(11); + if (lookahead == '/') ADVANCE(149); + if (lookahead == '\\') + ADVANCE(150); if (!((lookahead == 0) || (lookahead == '\n') || (lookahead == '/') || (lookahead == '\\'))) - ADVANCE(146); - ACCEPT_TOKEN(sym_preproc_arg); - case 148: - ACCEPT_TOKEN(sym_comment); - case 149: - if (lookahead == '\n') - ADVANCE(150); - if (lookahead == '*') ADVANCE(147); + ACCEPT_TOKEN(sym_preproc_arg); + case 149: + ACCEPT_TOKEN(sym_comment); + case 150: + if (lookahead == '\n') + ADVANCE(151); + if (lookahead == '*') + ADVANCE(148); if (lookahead == '\\') - ADVANCE(149); + ADVANCE(150); if (!((lookahead == 0) || (lookahead == '\n') || (lookahead == '*') || (lookahead == '\\'))) - ADVANCE(146); + ADVANCE(147); ACCEPT_TOKEN(sym_preproc_arg); - case 150: + case 151: if (lookahead == '\n') ADVANCE(11); if (lookahead == '*') - ADVANCE(147); + ADVANCE(148); if (lookahead == '\\') - ADVANCE(149); + ADVANCE(150); if (!((lookahead == 0) || (lookahead == '\n') || (lookahead == '*') || (lookahead == '\\'))) - ADVANCE(146); + ADVANCE(147); ACCEPT_TOKEN(sym_preproc_arg); - case 151: - if (lookahead == '\\') - ADVANCE(152); - if (!((lookahead == 0) || - (lookahead == '\n') || - (lookahead == '\\'))) - ADVANCE(151); - ACCEPT_TOKEN(sym_comment); case 152: if (lookahead == '\\') - ADVANCE(152); + ADVANCE(153); if (!((lookahead == 0) || (lookahead == '\n') || (lookahead == '\\'))) - ADVANCE(151); + ADVANCE(152); ACCEPT_TOKEN(sym_comment); case 153: - if (lookahead == '\n') - ADVANCE(154); if (lookahead == '\\') ADVANCE(153); if (!((lookahead == 0) || (lookahead == '\n') || (lookahead == '\\'))) - ADVANCE(155); - ACCEPT_TOKEN(sym_preproc_arg); + ADVANCE(152); + ACCEPT_TOKEN(sym_comment); case 154: + if (lookahead == '\n') + ADVANCE(155); if (lookahead == '\\') - ADVANCE(153); + ADVANCE(154); if (!((lookahead == 0) || (lookahead == '\n') || (lookahead == '\\'))) - ADVANCE(155); + ADVANCE(156); ACCEPT_TOKEN(sym_preproc_arg); case 155: if (lookahead == '\\') - ADVANCE(153); + ADVANCE(154); if (!((lookahead == 0) || (lookahead == '\n') || (lookahead == '\\'))) - ADVANCE(155); + ADVANCE(156); ACCEPT_TOKEN(sym_preproc_arg); case 156: - START_TOKEN(); - ACCEPT_TOKEN(anon_sym_LF); + if (lookahead == '\\') + ADVANCE(154); + if (!((lookahead == 0) || + (lookahead == '\n') || + (lookahead == '\\'))) + ADVANCE(156); + ACCEPT_TOKEN(sym_preproc_arg); case 157: START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(157); - if (lookahead == '\n') - ADVANCE(158); - if (lookahead == '/') - ADVANCE(10); - LEX_ERROR(); + ACCEPT_TOKEN(anon_sym_LF); case 158: - START_TOKEN(); - ACCEPT_TOKEN(anon_sym_LF); - case 159: START_TOKEN(); if ((lookahead == '\t') || - (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) + ADVANCE(158); + if (lookahead == '\n') ADVANCE(159); - if (lookahead == ',') - ADVANCE(127); if (lookahead == '/') ADVANCE(10); - if (lookahead == ';') - ADVANCE(101); LEX_ERROR(); + case 159: + START_TOKEN(); + ACCEPT_TOKEN(anon_sym_LF); case 160: START_TOKEN(); if ((lookahead == '\t') || @@ -1970,6 +1973,20 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(160); + if (lookahead == ',') + ADVANCE(127); + if (lookahead == '/') + ADVANCE(10); + if (lookahead == ';') + ADVANCE(101); + LEX_ERROR(); + case 161: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(161); if (lookahead == '(') ADVANCE(97); if (lookahead == ',') @@ -1979,14 +1996,12 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == ';') ADVANCE(101); if (lookahead == '=') - ADVANCE(161); + ADVANCE(131); if (lookahead == '[') ADVANCE(114); if (lookahead == '{') ADVANCE(105); LEX_ERROR(); - case 161: - ACCEPT_TOKEN(anon_sym_EQ); case 162: START_TOKEN(); if ((lookahead == '\t') || @@ -2009,7 +2024,7 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (('A' <= lookahead && lookahead <= 'Z') || (lookahead == 'b') || (lookahead == 'd') || - ('f' <= lookahead && lookahead <= 'k') || + ('g' <= lookahead && lookahead <= 'k') || ('m' <= lookahead && lookahead <= 'q') || ('w' <= lookahead && lookahead <= 'z')) ADVANCE(15); @@ -2019,6 +2034,8 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(20); if (lookahead == 'e') ADVANCE(25); + if (lookahead == 'f') + ADVANCE(163); if (lookahead == 'l') ADVANCE(31); if (lookahead == 'r') @@ -2031,16 +2048,45 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(75); if (lookahead == 'v') ADVANCE(83); + if (lookahead == '{') + ADVANCE(105); if (lookahead == '}') ADVANCE(110); LEX_ERROR(); case 163: + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'n') || + ('p' <= lookahead && lookahead <= 'z')) + ADVANCE(15); + if (lookahead == 'o') + ADVANCE(164); + ACCEPT_TOKEN(sym_identifier); + case 164: + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'q') || + ('s' <= lookahead && lookahead <= 'z')) + ADVANCE(15); + if (lookahead == 'r') + ADVANCE(165); + ACCEPT_TOKEN(sym_identifier); + case 165: + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + (lookahead == '_') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(15); + ACCEPT_TOKEN(anon_sym_for); + case 166: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(163); + ADVANCE(166); if (lookahead == '\"') ADVANCE(116); if (lookahead == '&') @@ -2059,13 +2105,13 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == '{') ADVANCE(105); LEX_ERROR(); - case 164: + case 167: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(164); + ADVANCE(167); if (lookahead == '(') ADVANCE(97); if (lookahead == '*') @@ -2078,14 +2124,16 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(10); if (lookahead == ';') ADVANCE(101); + if (lookahead == '=') + ADVANCE(131); LEX_ERROR(); - case 165: + case 168: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(165); + ADVANCE(168); if (lookahead == '\"') ADVANCE(116); if (lookahead == '&') @@ -2095,7 +2143,7 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == '*') ADVANCE(98); if (lookahead == '.') - ADVANCE(166); + ADVANCE(169); if (lookahead == '/') ADVANCE(10); if ('0' <= lookahead && lookahead <= '9') @@ -2108,15 +2156,15 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == '{') ADVANCE(105); LEX_ERROR(); - case 166: + case 169: ACCEPT_TOKEN(anon_sym_DOT); - case 167: + case 170: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(167); + ADVANCE(170); if (lookahead == ',') ADVANCE(127); if (lookahead == '/') @@ -2124,13 +2172,13 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == '}') ADVANCE(110); LEX_ERROR(); - case 168: + case 171: START_TOKEN(); if ((lookahead == '\t') || (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(168); + ADVANCE(171); if (lookahead == '(') ADVANCE(97); if (lookahead == '*') @@ -2141,65 +2189,8 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(127); if (lookahead == '/') ADVANCE(10); - if (lookahead == '}') - ADVANCE(110); - LEX_ERROR(); - case 169: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(169); - if (lookahead == '/') - ADVANCE(10); if (lookahead == '=') - ADVANCE(161); - LEX_ERROR(); - case 170: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(170); - if (lookahead == '.') - ADVANCE(166); - if (lookahead == '/') - ADVANCE(10); - if (lookahead == '=') - ADVANCE(161); - if (lookahead == '[') - ADVANCE(114); - LEX_ERROR(); - case 171: - START_TOKEN(); - if ((lookahead == '\t') || - (lookahead == '\n') || - (lookahead == '\r') || - (lookahead == ' ')) - ADVANCE(171); - if (lookahead == '\"') - ADVANCE(116); - if (lookahead == '&') - ADVANCE(120); - if (lookahead == '(') - ADVANCE(97); - if (lookahead == '*') - ADVANCE(98); - if (lookahead == '.') - ADVANCE(166); - if (lookahead == '/') - ADVANCE(10); - if ('0' <= lookahead && lookahead <= '9') - ADVANCE(121); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) - ADVANCE(15); - if (lookahead == '[') - ADVANCE(114); - if (lookahead == '{') - ADVANCE(105); + ADVANCE(131); if (lookahead == '}') ADVANCE(110); LEX_ERROR(); @@ -2210,16 +2201,10 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(172); - if (lookahead == '(') - ADVANCE(97); - if (lookahead == '*') - ADVANCE(98); - if (lookahead == '+') - ADVANCE(130); if (lookahead == '/') ADVANCE(10); - if (lookahead == ';') - ADVANCE(101); + if (lookahead == '=') + ADVANCE(131); LEX_ERROR(); case 173: START_TOKEN(); @@ -2228,12 +2213,14 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(173); + if (lookahead == '.') + ADVANCE(169); if (lookahead == '/') ADVANCE(10); - if (lookahead == ';') - ADVANCE(101); - if (lookahead == '}') - ADVANCE(110); + if (lookahead == '=') + ADVANCE(131); + if (lookahead == '[') + ADVANCE(114); LEX_ERROR(); case 174: START_TOKEN(); @@ -2242,19 +2229,29 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { (lookahead == '\r') || (lookahead == ' ')) ADVANCE(174); + if (lookahead == '\"') + ADVANCE(116); + if (lookahead == '&') + ADVANCE(120); if (lookahead == '(') ADVANCE(97); if (lookahead == '*') ADVANCE(98); - if (lookahead == '+') - ADVANCE(130); + if (lookahead == '.') + ADVANCE(169); if (lookahead == '/') ADVANCE(10); - if (lookahead == ';') - ADVANCE(101); + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(121); if (('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(15); + if (lookahead == '[') + ADVANCE(114); + if (lookahead == '{') + ADVANCE(105); + if (lookahead == '}') + ADVANCE(110); LEX_ERROR(); case 175: START_TOKEN(); @@ -2272,46 +2269,100 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == ';') ADVANCE(101); if (lookahead == '=') - ADVANCE(161); + ADVANCE(131); if (lookahead == '[') ADVANCE(114); LEX_ERROR(); case 176: START_TOKEN(); - if (lookahead == 0) - ADVANCE(2); if ((lookahead == '\t') || + (lookahead == '\n') || (lookahead == '\r') || (lookahead == ' ')) ADVANCE(176); - if (lookahead == '\n') - ADVANCE(177); - if (lookahead == '\"') - ADVANCE(116); - if (lookahead == '#') - ADVANCE(3); - if (lookahead == '&') - ADVANCE(120); if (lookahead == '(') ADVANCE(97); - if (lookahead == ')') - ADVANCE(107); if (lookahead == '*') ADVANCE(98); if (lookahead == '+') ADVANCE(130); - if (lookahead == ',') - ADVANCE(127); - if (lookahead == '.') - ADVANCE(166); + if (lookahead == '/') + ADVANCE(10); + if (lookahead == ';') + ADVANCE(101); + if (lookahead == '=') + ADVANCE(131); + LEX_ERROR(); + case 177: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(177); + if (lookahead == '/') + ADVANCE(10); + if (lookahead == ';') + ADVANCE(101); + if (lookahead == '}') + ADVANCE(110); + LEX_ERROR(); + case 178: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(178); + if (lookahead == '(') + ADVANCE(97); + if (lookahead == '/') + ADVANCE(10); + LEX_ERROR(); + case 179: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(179); + if (lookahead == '(') + ADVANCE(97); + if (lookahead == '*') + ADVANCE(98); + if (lookahead == '+') + ADVANCE(130); + if (lookahead == '/') + ADVANCE(10); + if (lookahead == ';') + ADVANCE(101); + if (lookahead == '=') + ADVANCE(131); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(15); + LEX_ERROR(); + case 180: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(180); + if (lookahead == '\"') + ADVANCE(116); + if (lookahead == '&') + ADVANCE(120); + if (lookahead == '(') + ADVANCE(97); + if (lookahead == '*') + ADVANCE(98); if (lookahead == '/') ADVANCE(10); if ('0' <= lookahead && lookahead <= '9') ADVANCE(121); if (lookahead == ';') ADVANCE(101); - if (lookahead == '=') - ADVANCE(161); if (('A' <= lookahead && lookahead <= 'Z') || (lookahead == 'b') || (lookahead == 'd') || @@ -2319,10 +2370,6 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ('m' <= lookahead && lookahead <= 'q') || ('w' <= lookahead && lookahead <= 'z')) ADVANCE(15); - if (lookahead == '[') - ADVANCE(114); - if (lookahead == ']') - ADVANCE(124); if (lookahead == 'a') ADVANCE(16); if (lookahead == 'c') @@ -2341,24 +2388,70 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(75); if (lookahead == 'v') ADVANCE(83); + LEX_ERROR(); + case 181: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(181); + if (lookahead == '\"') + ADVANCE(116); + if (lookahead == '&') + ADVANCE(120); + if (lookahead == '(') + ADVANCE(97); + if (lookahead == '*') + ADVANCE(98); + if (lookahead == '/') + ADVANCE(10); + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(121); + if (lookahead == ';') + ADVANCE(101); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) + ADVANCE(15); + LEX_ERROR(); + case 182: + START_TOKEN(); + if ((lookahead == '\t') || + (lookahead == '\n') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(182); + if (lookahead == '\"') + ADVANCE(116); + if (lookahead == '&') + ADVANCE(120); + if (lookahead == '(') + ADVANCE(97); + if (lookahead == '*') + ADVANCE(98); + if (lookahead == '/') + ADVANCE(10); + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(121); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'e') || + ('g' <= lookahead && lookahead <= 'z')) + ADVANCE(15); + if (lookahead == 'f') + ADVANCE(163); if (lookahead == '{') ADVANCE(105); - if (lookahead == '}') - ADVANCE(110); LEX_ERROR(); - case 177: - START_TOKEN(); - ACCEPT_TOKEN(anon_sym_LF); - case ts_lex_state_error: + case 183: START_TOKEN(); if (lookahead == 0) ADVANCE(2); if ((lookahead == '\t') || (lookahead == '\r') || (lookahead == ' ')) - ADVANCE(176); + ADVANCE(183); if (lookahead == '\n') - ADVANCE(177); + ADVANCE(184); if (lookahead == '\"') ADVANCE(116); if (lookahead == '#') @@ -2376,7 +2469,7 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == ',') ADVANCE(127); if (lookahead == '.') - ADVANCE(166); + ADVANCE(169); if (lookahead == '/') ADVANCE(10); if ('0' <= lookahead && lookahead <= '9') @@ -2384,11 +2477,11 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { if (lookahead == ';') ADVANCE(101); if (lookahead == '=') - ADVANCE(161); + ADVANCE(131); if (('A' <= lookahead && lookahead <= 'Z') || (lookahead == 'b') || (lookahead == 'd') || - ('f' <= lookahead && lookahead <= 'k') || + ('g' <= lookahead && lookahead <= 'k') || ('m' <= lookahead && lookahead <= 'q') || ('w' <= lookahead && lookahead <= 'z')) ADVANCE(15); @@ -2402,6 +2495,83 @@ static TSTree *ts_lex(TSLexer *lexer, TSStateId lex_state) { ADVANCE(20); if (lookahead == 'e') ADVANCE(25); + if (lookahead == 'f') + ADVANCE(163); + if (lookahead == 'l') + ADVANCE(31); + if (lookahead == 'r') + ADVANCE(35); + if (lookahead == 's') + ADVANCE(49); + if (lookahead == 't') + ADVANCE(68); + if (lookahead == 'u') + ADVANCE(75); + if (lookahead == 'v') + ADVANCE(83); + if (lookahead == '{') + ADVANCE(105); + if (lookahead == '}') + ADVANCE(110); + LEX_ERROR(); + case 184: + START_TOKEN(); + ACCEPT_TOKEN(anon_sym_LF); + case ts_lex_state_error: + START_TOKEN(); + if (lookahead == 0) + ADVANCE(2); + if ((lookahead == '\t') || + (lookahead == '\r') || + (lookahead == ' ')) + ADVANCE(183); + if (lookahead == '\n') + ADVANCE(184); + if (lookahead == '\"') + ADVANCE(116); + if (lookahead == '#') + ADVANCE(3); + if (lookahead == '&') + ADVANCE(120); + if (lookahead == '(') + ADVANCE(97); + if (lookahead == ')') + ADVANCE(107); + if (lookahead == '*') + ADVANCE(98); + if (lookahead == '+') + ADVANCE(130); + if (lookahead == ',') + ADVANCE(127); + if (lookahead == '.') + ADVANCE(169); + if (lookahead == '/') + ADVANCE(10); + if ('0' <= lookahead && lookahead <= '9') + ADVANCE(121); + if (lookahead == ';') + ADVANCE(101); + if (lookahead == '=') + ADVANCE(131); + if (('A' <= lookahead && lookahead <= 'Z') || + (lookahead == 'b') || + (lookahead == 'd') || + ('g' <= lookahead && lookahead <= 'k') || + ('m' <= lookahead && lookahead <= 'q') || + ('w' <= lookahead && lookahead <= 'z')) + ADVANCE(15); + if (lookahead == '[') + ADVANCE(114); + if (lookahead == ']') + ADVANCE(124); + if (lookahead == 'a') + ADVANCE(16); + if (lookahead == 'c') + ADVANCE(20); + if (lookahead == 'e') + ADVANCE(25); + if (lookahead == 'f') + ADVANCE(163); if (lookahead == 'l') ADVANCE(31); if (lookahead == 'r') @@ -2508,310 +2678,369 @@ static TSStateId ts_lex_states[STATE_COUNT] = { [80] = 129, [81] = 129, [82] = 128, - [83] = 131, - [84] = 134, + [83] = 132, + [84] = 135, [85] = 129, - [86] = 135, - [87] = 134, - [88] = 134, + [86] = 136, + [87] = 135, + [88] = 135, [89] = 129, [90] = 129, - [91] = 136, - [92] = 136, - [93] = 131, + [91] = 137, + [92] = 137, + [93] = 132, [94] = 129, - [95] = 134, - [96] = 136, - [97] = 135, - [98] = 134, - [99] = 134, - [100] = 136, - [101] = 136, - [102] = 136, - [103] = 136, + [95] = 135, + [96] = 137, + [97] = 136, + [98] = 135, + [99] = 135, + [100] = 137, + [101] = 137, + [102] = 137, + [103] = 137, [104] = 106, - [105] = 134, - [106] = 136, - [107] = 136, - [108] = 106, - [109] = 136, - [110] = 137, + [105] = 135, + [106] = 135, + [107] = 137, + [108] = 137, + [109] = 137, + [110] = 106, [111] = 137, - [112] = 106, + [112] = 138, [113] = 138, - [114] = 139, + [114] = 106, [115] = 139, - [116] = 99, - [117] = 92, - [118] = 104, - [119] = 131, - [120] = 134, - [121] = 138, - [122] = 139, - [123] = 92, - [124] = 106, - [125] = 137, - [126] = 139, - [127] = 135, - [128] = 134, - [129] = 134, - [130] = 139, - [131] = 139, - [132] = 136, - [133] = 139, - [134] = 106, - [135] = 139, - [136] = 139, - [137] = 106, - [138] = 139, - [139] = 139, - [140] = 134, - [141] = 139, - [142] = 109, - [143] = 111, - [144] = 109, - [145] = 112, - [146] = 137, - [147] = 137, - [148] = 112, - [149] = 137, - [150] = 137, - [151] = 137, - [152] = 140, - [153] = 140, - [154] = 141, - [155] = 142, - [156] = 140, - [157] = 115, - [158] = 125, - [159] = 126, - [160] = 140, - [161] = 106, - [162] = 140, - [163] = 140, - [164] = 129, - [165] = 140, - [166] = 140, - [167] = 140, - [168] = 140, - [169] = 137, - [170] = 136, - [171] = 92, - [172] = 134, - [173] = 136, - [174] = 140, - [175] = 106, - [176] = 129, - [177] = 129, - [178] = 106, - [179] = 139, - [180] = 129, - [181] = 134, + [116] = 140, + [117] = 140, + [118] = 99, + [119] = 92, + [120] = 104, + [121] = 132, + [122] = 135, + [123] = 139, + [124] = 140, + [125] = 92, + [126] = 106, + [127] = 138, + [128] = 140, + [129] = 136, + [130] = 135, + [131] = 135, + [132] = 140, + [133] = 140, + [134] = 137, + [135] = 140, + [136] = 106, + [137] = 140, + [138] = 140, + [139] = 106, + [140] = 140, + [141] = 135, + [142] = 140, + [143] = 140, + [144] = 135, + [145] = 140, + [146] = 109, + [147] = 111, + [148] = 109, + [149] = 112, + [150] = 138, + [151] = 138, + [152] = 112, + [153] = 138, + [154] = 138, + [155] = 138, + [156] = 141, + [157] = 141, + [158] = 142, + [159] = 143, + [160] = 141, + [161] = 115, + [162] = 125, + [163] = 126, + [164] = 141, + [165] = 106, + [166] = 141, + [167] = 141, + [168] = 129, + [169] = 141, + [170] = 135, + [171] = 141, + [172] = 129, + [173] = 141, + [174] = 141, + [175] = 138, + [176] = 137, + [177] = 92, + [178] = 135, + [179] = 137, + [180] = 141, + [181] = 106, [182] = 129, - [183] = 128, - [184] = 140, + [183] = 129, + [184] = 106, [185] = 140, - [186] = 96, - [187] = 96, - [188] = 140, - [189] = 115, - [190] = 125, - [191] = 126, - [192] = 140, - [193] = 106, - [194] = 140, - [195] = 140, - [196] = 129, - [197] = 140, - [198] = 140, - [199] = 140, - [200] = 140, - [201] = 128, - [202] = 96, - [203] = 128, - [204] = 129, - [205] = 113, - [206] = 113, - [207] = 140, - [208] = 113, - [209] = 112, - [210] = 106, - [211] = 106, - [212] = 96, - [213] = 109, - [214] = 111, - [215] = 109, - [216] = 112, - [217] = 96, + [186] = 129, + [187] = 135, + [188] = 129, + [189] = 128, + [190] = 141, + [191] = 141, + [192] = 96, + [193] = 96, + [194] = 141, + [195] = 115, + [196] = 125, + [197] = 126, + [198] = 141, + [199] = 106, + [200] = 141, + [201] = 141, + [202] = 129, + [203] = 141, + [204] = 141, + [205] = 141, + [206] = 141, + [207] = 128, + [208] = 96, + [209] = 128, + [210] = 129, + [211] = 113, + [212] = 113, + [213] = 141, + [214] = 113, + [215] = 112, + [216] = 106, + [217] = 106, [218] = 96, - [219] = 112, - [220] = 96, - [221] = 99, - [222] = 143, - [223] = 1, - [224] = 157, - [225] = 1, - [226] = 1, - [227] = 96, - [228] = 159, - [229] = 160, - [230] = 160, - [231] = 96, - [232] = 96, - [233] = 160, - [234] = 115, - [235] = 125, - [236] = 126, - [237] = 160, - [238] = 106, - [239] = 160, - [240] = 160, - [241] = 129, - [242] = 160, - [243] = 160, - [244] = 140, - [245] = 160, - [246] = 1, - [247] = 162, - [248] = 163, - [249] = 159, - [250] = 164, - [251] = 164, - [252] = 165, - [253] = 131, - [254] = 134, - [255] = 164, - [256] = 135, - [257] = 134, - [258] = 134, - [259] = 164, - [260] = 164, - [261] = 136, - [262] = 164, - [263] = 106, - [264] = 164, - [265] = 164, - [266] = 106, - [267] = 139, - [268] = 164, - [269] = 134, - [270] = 164, + [219] = 109, + [220] = 111, + [221] = 109, + [222] = 112, + [223] = 96, + [224] = 96, + [225] = 112, + [226] = 96, + [227] = 99, + [228] = 144, + [229] = 1, + [230] = 158, + [231] = 1, + [232] = 1, + [233] = 96, + [234] = 160, + [235] = 161, + [236] = 161, + [237] = 96, + [238] = 96, + [239] = 161, + [240] = 115, + [241] = 125, + [242] = 126, + [243] = 161, + [244] = 106, + [245] = 161, + [246] = 161, + [247] = 129, + [248] = 161, + [249] = 161, + [250] = 141, + [251] = 161, + [252] = 1, + [253] = 100, + [254] = 162, + [255] = 96, + [256] = 1, + [257] = 166, + [258] = 160, + [259] = 167, + [260] = 167, + [261] = 168, + [262] = 132, + [263] = 135, + [264] = 167, + [265] = 136, + [266] = 135, + [267] = 135, + [268] = 167, + [269] = 167, + [270] = 137, [271] = 167, - [272] = 167, - [273] = 163, - [274] = 168, - [275] = 168, - [276] = 169, - [277] = 165, - [278] = 134, - [279] = 99, - [280] = 131, - [281] = 134, - [282] = 168, - [283] = 135, - [284] = 134, - [285] = 134, + [272] = 106, + [273] = 167, + [274] = 167, + [275] = 106, + [276] = 140, + [277] = 167, + [278] = 135, + [279] = 167, + [280] = 170, + [281] = 170, + [282] = 166, + [283] = 171, + [284] = 171, + [285] = 172, [286] = 168, - [287] = 168, - [288] = 136, - [289] = 168, - [290] = 106, - [291] = 168, - [292] = 168, - [293] = 106, - [294] = 139, - [295] = 168, - [296] = 134, - [297] = 168, - [298] = 170, - [299] = 169, - [300] = 129, - [301] = 170, - [302] = 169, - [303] = 167, - [304] = 167, - [305] = 171, - [306] = 167, - [307] = 163, - [308] = 167, - [309] = 167, - [310] = 163, - [311] = 167, - [312] = 159, - [313] = 171, - [314] = 159, - [315] = 92, - [316] = 96, - [317] = 162, - [318] = 172, - [319] = 172, - [320] = 162, - [321] = 112, - [322] = 173, - [323] = 1, - [324] = 131, - [325] = 134, - [326] = 174, - [327] = 172, - [328] = 135, - [329] = 134, - [330] = 134, - [331] = 172, - [332] = 172, - [333] = 136, - [334] = 172, - [335] = 106, - [336] = 172, - [337] = 172, + [287] = 135, + [288] = 99, + [289] = 132, + [290] = 135, + [291] = 171, + [292] = 136, + [293] = 135, + [294] = 135, + [295] = 171, + [296] = 171, + [297] = 137, + [298] = 171, + [299] = 106, + [300] = 171, + [301] = 171, + [302] = 106, + [303] = 140, + [304] = 171, + [305] = 135, + [306] = 171, + [307] = 173, + [308] = 172, + [309] = 129, + [310] = 173, + [311] = 172, + [312] = 170, + [313] = 170, + [314] = 174, + [315] = 170, + [316] = 166, + [317] = 170, + [318] = 170, + [319] = 166, + [320] = 135, + [321] = 171, + [322] = 170, + [323] = 160, + [324] = 174, + [325] = 160, + [326] = 135, + [327] = 167, + [328] = 160, + [329] = 175, + [330] = 175, + [331] = 96, + [332] = 96, + [333] = 175, + [334] = 115, + [335] = 125, + [336] = 126, + [337] = 175, [338] = 106, - [339] = 139, - [340] = 172, - [341] = 134, - [342] = 172, - [343] = 1, - [344] = 162, - [345] = 162, - [346] = 112, - [347] = 100, - [348] = 159, - [349] = 175, - [350] = 175, - [351] = 96, - [352] = 96, - [353] = 175, - [354] = 115, - [355] = 125, - [356] = 126, - [357] = 175, - [358] = 106, - [359] = 175, - [360] = 175, - [361] = 129, - [362] = 175, - [363] = 175, - [364] = 140, - [365] = 175, + [339] = 175, + [340] = 175, + [341] = 129, + [342] = 175, + [343] = 175, + [344] = 141, + [345] = 175, + [346] = 100, + [347] = 92, + [348] = 96, + [349] = 162, + [350] = 162, + [351] = 176, + [352] = 176, + [353] = 112, + [354] = 177, + [355] = 162, + [356] = 1, + [357] = 132, + [358] = 135, + [359] = 178, + [360] = 179, + [361] = 180, + [362] = 92, + [363] = 96, + [364] = 181, + [365] = 176, [366] = 100, - [367] = 96, - [368] = 162, - [369] = 159, - [370] = 100, - [371] = 162, - [372] = 96, - [373] = 159, - [374] = 100, - [375] = 162, - [376] = 100, - [377] = 1, - [378] = 1, - [379] = 92, - [380] = 96, - [381] = 159, - [382] = 160, - [383] = 1, - [384] = 100, - [385] = 1, - [386] = 91, + [367] = 181, + [368] = 181, + [369] = 135, + [370] = 136, + [371] = 135, + [372] = 135, + [373] = 176, + [374] = 176, + [375] = 137, + [376] = 176, + [377] = 106, + [378] = 176, + [379] = 176, + [380] = 176, + [381] = 176, + [382] = 136, + [383] = 137, + [384] = 182, + [385] = 162, + [386] = 106, + [387] = 182, + [388] = 162, + [389] = 182, + [390] = 162, + [391] = 136, + [392] = 137, + [393] = 106, + [394] = 182, + [395] = 162, + [396] = 176, + [397] = 136, + [398] = 137, + [399] = 182, + [400] = 162, + [401] = 106, + [402] = 160, + [403] = 175, + [404] = 100, + [405] = 181, + [406] = 181, + [407] = 96, + [408] = 160, + [409] = 175, + [410] = 100, + [411] = 181, + [412] = 176, + [413] = 106, + [414] = 140, + [415] = 176, + [416] = 135, + [417] = 176, + [418] = 112, + [419] = 177, + [420] = 162, + [421] = 162, + [422] = 162, + [423] = 1, + [424] = 162, + [425] = 112, + [426] = 100, + [427] = 160, + [428] = 175, + [429] = 100, + [430] = 162, + [431] = 162, + [432] = 96, + [433] = 160, + [434] = 175, + [435] = 100, + [436] = 162, + [437] = 1, + [438] = 92, + [439] = 96, + [440] = 160, + [441] = 161, + [442] = 1, + [443] = 100, + [444] = 1, + [445] = 91, }; #pragma GCC diagnostic push @@ -2867,7 +3096,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_declaration] = ACTIONS(SHIFT(2)), [sym_type_qualifier] = ACTIONS(SHIFT(4)), [sym_macro_type] = ACTIONS(SHIFT(6)), - [aux_sym_translation_unit_repeat1] = ACTIONS(SHIFT(386)), + [aux_sym_translation_unit_repeat1] = ACTIONS(SHIFT(445)), [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), [ts_builtin_sym_error] = ACTIONS(SHIFT(10)), @@ -2890,7 +3119,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [3] = { - [sym__type_specifier] = ACTIONS(SHIFT(380)), + [sym__type_specifier] = ACTIONS(SHIFT(439)), [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), [sym_struct_specifier] = ACTIONS(SHIFT(6)), [sym_macro_type] = ACTIONS(SHIFT(6)), @@ -2910,7 +3139,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_struct_specifier] = ACTIONS(REDUCE(aux_sym_declaration_specifiers_repeat1, 1)), [sym_type_qualifier] = ACTIONS(SHIFT(4)), [sym_macro_type] = ACTIONS(REDUCE(aux_sym_declaration_specifiers_repeat1, 1)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(379)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(438)), [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(aux_sym_declaration_specifiers_repeat1, 1)), [anon_sym_typedef] = ACTIONS(SHIFT(12)), [anon_sym_extern] = ACTIONS(SHIFT(12)), @@ -2929,14 +3158,14 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [5] = { - [sym__init_declarator] = ACTIONS(SHIFT(228)), - [sym__declarator] = ACTIONS(SHIFT(229)), - [sym_pointer_declarator] = ACTIONS(SHIFT(230)), - [sym_function_declarator] = ACTIONS(SHIFT(230)), - [sym_array_declarator] = ACTIONS(SHIFT(230)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(231)), - [anon_sym_STAR] = ACTIONS(SHIFT(232)), - [sym_identifier] = ACTIONS(SHIFT(230)), + [sym__init_declarator] = ACTIONS(SHIFT(234)), + [sym__declarator] = ACTIONS(SHIFT(235)), + [sym_pointer_declarator] = ACTIONS(SHIFT(236)), + [sym_function_declarator] = ACTIONS(SHIFT(236)), + [sym_array_declarator] = ACTIONS(SHIFT(236)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(237)), + [anon_sym_STAR] = ACTIONS(SHIFT(238)), + [sym_identifier] = ACTIONS(SHIFT(236)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [6] = { @@ -2969,15 +3198,15 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [9] = { - [sym_identifier] = ACTIONS(SHIFT(227)), + [sym_identifier] = ACTIONS(SHIFT(233)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [10] = { - [anon_sym_SEMI] = ACTIONS(SHIFT(226)), + [anon_sym_SEMI] = ACTIONS(SHIFT(232)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [11] = { - [sym_identifier] = ACTIONS(SHIFT(222)), + [sym_identifier] = ACTIONS(SHIFT(228)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [12] = { @@ -3006,7 +3235,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [13] = { - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(221)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(227)), [anon_sym_signed] = ACTIONS(SHIFT(13)), [anon_sym_unsigned] = ACTIONS(SHIFT(13)), [anon_sym_long] = ACTIONS(SHIFT(13)), @@ -3015,8 +3244,8 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [14] = { - [anon_sym_LBRACE] = ACTIONS(SHIFT(213)), - [sym_identifier] = ACTIONS(SHIFT(214)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(219)), + [sym_identifier] = ACTIONS(SHIFT(220)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [15] = { @@ -3070,7 +3299,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [18] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(212)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(218)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [19] = { @@ -3078,7 +3307,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [20] = { - [sym_identifier] = ACTIONS(SHIFT(211)), + [sym_identifier] = ACTIONS(SHIFT(217)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [21] = { @@ -3120,13 +3349,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_struct_declaration] = ACTIONS(SHIFT(31)), [sym_macro_type] = ACTIONS(SHIFT(30)), [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), - [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(209)), + [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(215)), [anon_sym_signed] = ACTIONS(SHIFT(13)), [anon_sym_unsigned] = ACTIONS(SHIFT(13)), [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RBRACE] = ACTIONS(SHIFT(210)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(216)), [sym_identifier] = ACTIONS(SHIFT(36)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, @@ -3376,13 +3605,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [53] = { - [sym__declarator] = ACTIONS(SHIFT(207)), - [sym_pointer_declarator] = ACTIONS(SHIFT(185)), - [sym_function_declarator] = ACTIONS(SHIFT(185)), - [sym_array_declarator] = ACTIONS(SHIFT(185)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(186)), - [anon_sym_STAR] = ACTIONS(SHIFT(187)), - [sym_identifier] = ACTIONS(SHIFT(185)), + [sym__declarator] = ACTIONS(SHIFT(213)), + [sym_pointer_declarator] = ACTIONS(SHIFT(191)), + [sym_function_declarator] = ACTIONS(SHIFT(191)), + [sym_array_declarator] = ACTIONS(SHIFT(191)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(192)), + [anon_sym_STAR] = ACTIONS(SHIFT(193)), + [sym_identifier] = ACTIONS(SHIFT(191)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [54] = { @@ -3415,12 +3644,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [56] = { - [sym__expression] = ACTIONS(SHIFT(204)), + [sym__expression] = ACTIONS(SHIFT(210)), [sym_cast_expression] = ACTIONS(SHIFT(81)), [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), - [anon_sym_RBRACK] = ACTIONS(SHIFT(205)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(211)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), [anon_sym_AMP] = ACTIONS(SHIFT(84)), @@ -3458,7 +3688,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [58] = { - [sym__type_specifier] = ACTIONS(SHIFT(202)), + [sym__type_specifier] = ACTIONS(SHIFT(208)), [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), [sym_struct_specifier] = ACTIONS(SHIFT(30)), [sym_macro_type] = ACTIONS(SHIFT(30)), @@ -3602,13 +3832,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [70] = { - [sym__declarator] = ACTIONS(SHIFT(184)), - [sym_pointer_declarator] = ACTIONS(SHIFT(185)), - [sym_function_declarator] = ACTIONS(SHIFT(185)), - [sym_array_declarator] = ACTIONS(SHIFT(185)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(186)), - [anon_sym_STAR] = ACTIONS(SHIFT(187)), - [sym_identifier] = ACTIONS(SHIFT(185)), + [sym__declarator] = ACTIONS(SHIFT(190)), + [sym_pointer_declarator] = ACTIONS(SHIFT(191)), + [sym_function_declarator] = ACTIONS(SHIFT(191)), + [sym_array_declarator] = ACTIONS(SHIFT(191)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(192)), + [anon_sym_STAR] = ACTIONS(SHIFT(193)), + [sym_identifier] = ACTIONS(SHIFT(191)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [71] = { @@ -3635,6 +3865,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), [anon_sym_RBRACK] = ACTIONS(SHIFT(82)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), @@ -3707,13 +3938,15 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [80] = { - [anon_sym_RBRACK] = ACTIONS(SHIFT(183)), + [anon_sym_EQ] = ACTIONS(SHIFT(170)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(189)), [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), [anon_sym_STAR] = ACTIONS(SHIFT(87)), [anon_sym_PLUS] = ACTIONS(SHIFT(88)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [81] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_RBRACK] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), @@ -3729,33 +3962,34 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [83] = { - [sym__type_specifier] = ACTIONS(SHIFT(110)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(111)), - [sym_struct_specifier] = ACTIONS(SHIFT(111)), - [sym_type_name] = ACTIONS(SHIFT(178)), - [sym_type_qualifier] = ACTIONS(SHIFT(113)), - [sym__expression] = ACTIONS(SHIFT(179)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [sym_macro_type] = ACTIONS(SHIFT(111)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(116)), - [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(117)), + [sym__type_specifier] = ACTIONS(SHIFT(112)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(113)), + [sym_struct_specifier] = ACTIONS(SHIFT(113)), + [sym_type_name] = ACTIONS(SHIFT(184)), + [sym_type_qualifier] = ACTIONS(SHIFT(115)), + [sym__expression] = ACTIONS(SHIFT(185)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [sym_macro_type] = ACTIONS(SHIFT(113)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(118)), + [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(119)), [anon_sym_signed] = ACTIONS(SHIFT(13)), [anon_sym_unsigned] = ACTIONS(SHIFT(13)), [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(118)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_const] = ACTIONS(SHIFT(121)), - [anon_sym_restrict] = ACTIONS(SHIFT(121)), - [anon_sym_volatile] = ACTIONS(SHIFT(121)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(122)), - [sym_number] = ACTIONS(SHIFT(115)), + [anon_sym_struct] = ACTIONS(SHIFT(120)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_const] = ACTIONS(SHIFT(123)), + [anon_sym_restrict] = ACTIONS(SHIFT(123)), + [anon_sym_volatile] = ACTIONS(SHIFT(123)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(124)), + [sym_number] = ACTIONS(SHIFT(117)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [84] = { @@ -3764,6 +3998,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), [anon_sym_AMP] = ACTIONS(SHIFT(84)), @@ -3773,7 +4008,8 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [85] = { - [anon_sym_RBRACK] = ACTIONS(REDUCE(sym_pointer_expression, 2)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_RBRACK] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), [anon_sym_STAR] = ACTIONS(SHIFT(87)), [anon_sym_PLUS] = ACTIONS(SHIFT(88)), @@ -3785,6 +4021,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(92)), [sym_call_expression] = ACTIONS(SHIFT(92)), [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), [anon_sym_RPAREN] = ACTIONS(SHIFT(94)), [anon_sym_STAR] = ACTIONS(SHIFT(95)), @@ -3800,6 +4037,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), [anon_sym_AMP] = ACTIONS(SHIFT(84)), @@ -3814,6 +4052,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), [anon_sym_AMP] = ACTIONS(SHIFT(84)), @@ -3823,6 +4062,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [89] = { + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_RBRACK] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), [anon_sym_STAR] = ACTIONS(SHIFT(87)), @@ -3830,6 +4070,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [90] = { + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_RBRACK] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), @@ -3837,10 +4078,11 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [91] = { - [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(175)), + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(181)), [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(176)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(182)), [anon_sym_STAR] = ACTIONS(SHIFT(98)), [anon_sym_PLUS] = ACTIONS(SHIFT(99)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), @@ -3848,6 +4090,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [92] = { [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), @@ -3855,36 +4098,38 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [93] = { - [sym__type_specifier] = ACTIONS(SHIFT(110)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(111)), - [sym_struct_specifier] = ACTIONS(SHIFT(111)), - [sym_type_name] = ACTIONS(SHIFT(112)), - [sym_type_qualifier] = ACTIONS(SHIFT(113)), - [sym__expression] = ACTIONS(SHIFT(114)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [sym_macro_type] = ACTIONS(SHIFT(111)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(116)), - [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(117)), + [sym__type_specifier] = ACTIONS(SHIFT(112)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(113)), + [sym_struct_specifier] = ACTIONS(SHIFT(113)), + [sym_type_name] = ACTIONS(SHIFT(114)), + [sym_type_qualifier] = ACTIONS(SHIFT(115)), + [sym__expression] = ACTIONS(SHIFT(116)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [sym_macro_type] = ACTIONS(SHIFT(113)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(118)), + [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(119)), [anon_sym_signed] = ACTIONS(SHIFT(13)), [anon_sym_unsigned] = ACTIONS(SHIFT(13)), [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(118)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_const] = ACTIONS(SHIFT(121)), - [anon_sym_restrict] = ACTIONS(SHIFT(121)), - [anon_sym_volatile] = ACTIONS(SHIFT(121)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(122)), - [sym_number] = ACTIONS(SHIFT(115)), + [anon_sym_struct] = ACTIONS(SHIFT(120)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_const] = ACTIONS(SHIFT(123)), + [anon_sym_restrict] = ACTIONS(SHIFT(123)), + [anon_sym_volatile] = ACTIONS(SHIFT(123)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(124)), + [sym_number] = ACTIONS(SHIFT(117)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [94] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_RBRACK] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), @@ -3897,6 +4142,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(92)), [sym_call_expression] = ACTIONS(SHIFT(92)), [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), [anon_sym_STAR] = ACTIONS(SHIFT(95)), [anon_sym_AMP] = ACTIONS(SHIFT(95)), @@ -3906,10 +4152,11 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [96] = { - [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE(sym_pointer_expression, 2)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_pointer_expression, 2)), + [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), - [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_pointer_expression, 2)), + [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), [anon_sym_STAR] = ACTIONS(SHIFT(98)), [anon_sym_PLUS] = ACTIONS(SHIFT(99)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), @@ -3920,6 +4167,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(92)), [sym_call_expression] = ACTIONS(SHIFT(92)), [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), [anon_sym_RPAREN] = ACTIONS(SHIFT(103)), [anon_sym_STAR] = ACTIONS(SHIFT(95)), @@ -3935,6 +4183,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(92)), [sym_call_expression] = ACTIONS(SHIFT(92)), [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), [anon_sym_STAR] = ACTIONS(SHIFT(95)), [anon_sym_AMP] = ACTIONS(SHIFT(95)), @@ -3949,6 +4198,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_math_expression] = ACTIONS(SHIFT(92)), [sym_call_expression] = ACTIONS(SHIFT(92)), [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), [anon_sym_STAR] = ACTIONS(SHIFT(95)), [anon_sym_AMP] = ACTIONS(SHIFT(95)), @@ -3960,6 +4210,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [100] = { [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_STAR] = ACTIONS(SHIFT(98)), @@ -3969,6 +4220,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [101] = { [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), @@ -3978,8 +4230,9 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [102] = { [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(104)), [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(106)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(107)), [anon_sym_STAR] = ACTIONS(SHIFT(98)), [anon_sym_PLUS] = ACTIONS(SHIFT(99)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), @@ -3987,6 +4240,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [103] = { [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), @@ -3994,15 +4248,16 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [104] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(109)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(111)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [105] = { - [sym__expression] = ACTIONS(SHIFT(107)), + [sym__expression] = ACTIONS(SHIFT(109)), [sym_cast_expression] = ACTIONS(SHIFT(92)), [sym_math_expression] = ACTIONS(SHIFT(92)), [sym_call_expression] = ACTIONS(SHIFT(92)), [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), [anon_sym_STAR] = ACTIONS(SHIFT(95)), [anon_sym_AMP] = ACTIONS(SHIFT(95)), @@ -4012,47 +4267,75 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [106] = { + [sym__expression] = ACTIONS(SHIFT(108)), + [sym_cast_expression] = ACTIONS(SHIFT(92)), + [sym_math_expression] = ACTIONS(SHIFT(92)), + [sym_call_expression] = ACTIONS(SHIFT(92)), + [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), + [anon_sym_STAR] = ACTIONS(SHIFT(95)), + [anon_sym_AMP] = ACTIONS(SHIFT(95)), + [sym_string] = ACTIONS(SHIFT(92)), + [sym_identifier] = ACTIONS(SHIFT(92)), + [sym_number] = ACTIONS(SHIFT(92)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [107] = { [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [107] = { - [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(108)), + [108] = { + [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), + [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_STAR] = ACTIONS(SHIFT(98)), + [anon_sym_PLUS] = ACTIONS(SHIFT(99)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [109] = { + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(110)), [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), [anon_sym_RPAREN] = ACTIONS(REDUCE(aux_sym_call_expression_repeat1, 2)), [anon_sym_STAR] = ACTIONS(SHIFT(98)), [anon_sym_PLUS] = ACTIONS(SHIFT(99)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [108] = { + [110] = { [anon_sym_RPAREN] = ACTIONS(REDUCE(aux_sym_call_expression_repeat1, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [109] = { + [111] = { [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [110] = { - [sym__abstract_declarator] = ACTIONS(SHIFT(174)), - [sym_abstract_pointer_declarator] = ACTIONS(SHIFT(153)), - [sym_abstract_function_declarator] = ACTIONS(SHIFT(153)), - [sym_abstract_array_declarator] = ACTIONS(SHIFT(153)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(154)), + [112] = { + [sym__abstract_declarator] = ACTIONS(SHIFT(180)), + [sym_abstract_pointer_declarator] = ACTIONS(SHIFT(157)), + [sym_abstract_function_declarator] = ACTIONS(SHIFT(157)), + [sym_abstract_array_declarator] = ACTIONS(SHIFT(157)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(158)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_type_name, 1)), - [anon_sym_STAR] = ACTIONS(SHIFT(155)), + [anon_sym_STAR] = ACTIONS(SHIFT(159)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [111] = { + [113] = { [sym__abstract_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_abstract_pointer_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_abstract_function_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), @@ -4062,111 +4345,115 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_STAR] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [112] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(172)), + [114] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(178)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [113] = { + [115] = { [sym__type_specifier] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), [sym_numeric_type_specifier] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), [sym_struct_specifier] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), - [sym_type_qualifier] = ACTIONS(SHIFT(113)), + [sym_type_qualifier] = ACTIONS(SHIFT(115)), [sym_macro_type] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), - [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(171)), + [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(177)), [anon_sym_signed] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), [anon_sym_unsigned] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), [anon_sym_long] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), [anon_sym_short] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), [anon_sym_struct] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), - [anon_sym_const] = ACTIONS(SHIFT(121)), - [anon_sym_restrict] = ACTIONS(SHIFT(121)), - [anon_sym_volatile] = ACTIONS(SHIFT(121)), + [anon_sym_const] = ACTIONS(SHIFT(123)), + [anon_sym_restrict] = ACTIONS(SHIFT(123)), + [anon_sym_volatile] = ACTIONS(SHIFT(123)), [sym_identifier] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [114] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(170)), - [anon_sym_STAR] = ACTIONS(SHIFT(128)), - [anon_sym_PLUS] = ACTIONS(SHIFT(129)), + [116] = { + [anon_sym_EQ] = ACTIONS(SHIFT(141)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(176)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(SHIFT(131)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [115] = { + [117] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [116] = { - [sym_identifier] = ACTIONS(SHIFT(169)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [117] = { - [sym__type_specifier] = ACTIONS(SHIFT(150)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(111)), - [sym_struct_specifier] = ACTIONS(SHIFT(111)), - [sym_macro_type] = ACTIONS(SHIFT(111)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(116)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(118)), - [sym_identifier] = ACTIONS(SHIFT(151)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, [118] = { - [anon_sym_LBRACE] = ACTIONS(SHIFT(142)), - [sym_identifier] = ACTIONS(SHIFT(143)), + [sym_identifier] = ACTIONS(SHIFT(175)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [119] = { - [sym__type_specifier] = ACTIONS(SHIFT(110)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(111)), - [sym_struct_specifier] = ACTIONS(SHIFT(111)), - [sym_type_name] = ACTIONS(SHIFT(137)), - [sym_type_qualifier] = ACTIONS(SHIFT(113)), - [sym__expression] = ACTIONS(SHIFT(138)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [sym_macro_type] = ACTIONS(SHIFT(111)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(116)), - [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(117)), + [sym__type_specifier] = ACTIONS(SHIFT(154)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(113)), + [sym_struct_specifier] = ACTIONS(SHIFT(113)), + [sym_macro_type] = ACTIONS(SHIFT(113)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(118)), [anon_sym_signed] = ACTIONS(SHIFT(13)), [anon_sym_unsigned] = ACTIONS(SHIFT(13)), [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(118)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_const] = ACTIONS(SHIFT(121)), - [anon_sym_restrict] = ACTIONS(SHIFT(121)), - [anon_sym_volatile] = ACTIONS(SHIFT(121)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(122)), - [sym_number] = ACTIONS(SHIFT(115)), + [anon_sym_struct] = ACTIONS(SHIFT(120)), + [sym_identifier] = ACTIONS(SHIFT(155)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [120] = { - [sym__expression] = ACTIONS(SHIFT(126)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(115)), - [sym_number] = ACTIONS(SHIFT(115)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(146)), + [sym_identifier] = ACTIONS(SHIFT(147)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [121] = { + [sym__type_specifier] = ACTIONS(SHIFT(112)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(113)), + [sym_struct_specifier] = ACTIONS(SHIFT(113)), + [sym_type_name] = ACTIONS(SHIFT(139)), + [sym_type_qualifier] = ACTIONS(SHIFT(115)), + [sym__expression] = ACTIONS(SHIFT(140)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [sym_macro_type] = ACTIONS(SHIFT(113)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(118)), + [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(119)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(120)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_const] = ACTIONS(SHIFT(123)), + [anon_sym_restrict] = ACTIONS(SHIFT(123)), + [anon_sym_volatile] = ACTIONS(SHIFT(123)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(124)), + [sym_number] = ACTIONS(SHIFT(117)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [122] = { + [sym__expression] = ACTIONS(SHIFT(128)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(117)), + [sym_number] = ACTIONS(SHIFT(117)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [123] = { [sym__type_specifier] = ACTIONS(REDUCE(sym_type_qualifier, 1)), [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_type_qualifier, 1)), [sym_struct_specifier] = ACTIONS(REDUCE(sym_type_qualifier, 1)), @@ -4185,19 +4472,20 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_type_qualifier, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [122] = { + [124] = { [sym__abstract_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_abstract_pointer_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_abstract_function_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_abstract_array_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__type_specifier, 1), REDUCE(sym__expression, 1), SHIFT(123)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__type_specifier, 1), REDUCE(sym__expression, 1), SHIFT(125)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__type_specifier, 1), REDUCE(sym__expression, 1)), [anon_sym_STAR] = ACTIONS(REDUCE(sym__type_specifier, 1), REDUCE(sym__expression, 1)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [123] = { - [sym__type_specifier] = ACTIONS(SHIFT(124)), + [125] = { + [sym__type_specifier] = ACTIONS(SHIFT(126)), [sym_numeric_type_specifier] = ACTIONS(SHIFT(19)), [sym_struct_specifier] = ACTIONS(SHIFT(19)), [sym_macro_type] = ACTIONS(SHIFT(19)), @@ -4210,11 +4498,11 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(SHIFT(22)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [124] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(125)), + [126] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(127)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [125] = { + [127] = { [sym__abstract_declarator] = ACTIONS(REDUCE(sym_macro_type, 4)), [sym_abstract_pointer_declarator] = ACTIONS(REDUCE(sym_macro_type, 4)), [sym_abstract_function_declarator] = ACTIONS(REDUCE(sym_macro_type, 4)), @@ -4224,21 +4512,23 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_STAR] = ACTIONS(REDUCE(sym_macro_type, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [126] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), - [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_pointer_expression, 2)), - [anon_sym_STAR] = ACTIONS(SHIFT(128)), - [anon_sym_PLUS] = ACTIONS(SHIFT(129)), + [128] = { + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(SHIFT(131)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [127] = { - [sym__expression] = ACTIONS(SHIFT(132)), + [129] = { + [sym__expression] = ACTIONS(SHIFT(134)), [sym_cast_expression] = ACTIONS(SHIFT(92)), [sym_math_expression] = ACTIONS(SHIFT(92)), [sym_call_expression] = ACTIONS(SHIFT(92)), [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(133)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(135)), [anon_sym_STAR] = ACTIONS(SHIFT(95)), [anon_sym_AMP] = ACTIONS(SHIFT(95)), [sym_string] = ACTIONS(SHIFT(92)), @@ -4246,164 +4536,199 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_number] = ACTIONS(SHIFT(92)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [128] = { - [sym__expression] = ACTIONS(SHIFT(131)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(115)), - [sym_number] = ACTIONS(SHIFT(115)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [129] = { - [sym__expression] = ACTIONS(SHIFT(130)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(115)), - [sym_number] = ACTIONS(SHIFT(115)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, [130] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), - [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_STAR] = ACTIONS(SHIFT(128)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [sym__expression] = ACTIONS(SHIFT(133)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(117)), + [sym_number] = ACTIONS(SHIFT(117)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [131] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), + [sym__expression] = ACTIONS(SHIFT(132)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(117)), + [sym_number] = ACTIONS(SHIFT(117)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [132] = { + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [133] = { + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [132] = { - [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(134)), + [134] = { + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(136)), [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(135)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(137)), [anon_sym_STAR] = ACTIONS(SHIFT(98)), [anon_sym_PLUS] = ACTIONS(SHIFT(99)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [133] = { + [135] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [134] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(136)), + [136] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(138)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [135] = { + [137] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [136] = { + [138] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [137] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(140)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [138] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(139)), - [anon_sym_STAR] = ACTIONS(SHIFT(128)), - [anon_sym_PLUS] = ACTIONS(SHIFT(129)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, [139] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(144)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [140] = { + [anon_sym_EQ] = ACTIONS(SHIFT(141)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(142)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(SHIFT(131)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [141] = { + [sym__expression] = ACTIONS(SHIFT(143)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(117)), + [sym_number] = ACTIONS(SHIFT(117)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [142] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [140] = { - [sym__expression] = ACTIONS(SHIFT(141)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(115)), - [sym_number] = ACTIONS(SHIFT(115)), + [143] = { + [anon_sym_EQ] = ACTIONS(SHIFT(141)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(SHIFT(131)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [141] = { + [144] = { + [sym__expression] = ACTIONS(SHIFT(145)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(117)), + [sym_number] = ACTIONS(SHIFT(117)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [145] = { + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [142] = { - [sym__type_specifier] = ACTIONS(SHIFT(29)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), - [sym_struct_specifier] = ACTIONS(SHIFT(30)), - [sym_struct_declaration] = ACTIONS(SHIFT(31)), - [sym_macro_type] = ACTIONS(SHIFT(30)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), - [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(148)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RBRACE] = ACTIONS(SHIFT(149)), - [sym_identifier] = ACTIONS(SHIFT(36)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [143] = { - [anon_sym_LBRACE] = ACTIONS(SHIFT(144)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [144] = { - [sym__type_specifier] = ACTIONS(SHIFT(29)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), - [sym_struct_specifier] = ACTIONS(SHIFT(30)), - [sym_struct_declaration] = ACTIONS(SHIFT(31)), - [sym_macro_type] = ACTIONS(SHIFT(30)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), - [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(145)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RBRACE] = ACTIONS(SHIFT(146)), - [sym_identifier] = ACTIONS(SHIFT(36)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [145] = { - [anon_sym_RBRACE] = ACTIONS(SHIFT(147)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, [146] = { + [sym__type_specifier] = ACTIONS(SHIFT(29)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), + [sym_struct_specifier] = ACTIONS(SHIFT(30)), + [sym_struct_declaration] = ACTIONS(SHIFT(31)), + [sym_macro_type] = ACTIONS(SHIFT(30)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), + [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(152)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(34)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(153)), + [sym_identifier] = ACTIONS(SHIFT(36)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [147] = { + [anon_sym_LBRACE] = ACTIONS(SHIFT(148)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [148] = { + [sym__type_specifier] = ACTIONS(SHIFT(29)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), + [sym_struct_specifier] = ACTIONS(SHIFT(30)), + [sym_struct_declaration] = ACTIONS(SHIFT(31)), + [sym_macro_type] = ACTIONS(SHIFT(30)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), + [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(149)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(34)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(150)), + [sym_identifier] = ACTIONS(SHIFT(36)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [149] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(151)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [150] = { [sym__abstract_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 4)), [sym_abstract_pointer_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 4)), [sym_abstract_function_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 4)), @@ -4413,7 +4738,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_STAR] = ACTIONS(REDUCE(sym_struct_specifier, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [147] = { + [151] = { [sym__abstract_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 5)), [sym_abstract_pointer_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 5)), [sym_abstract_function_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 5)), @@ -4423,11 +4748,11 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_STAR] = ACTIONS(REDUCE(sym_struct_specifier, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [148] = { - [anon_sym_RBRACE] = ACTIONS(SHIFT(146)), + [152] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(150)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [149] = { + [153] = { [sym__abstract_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 3)), [sym_abstract_pointer_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 3)), [sym_abstract_function_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 3)), @@ -4437,71 +4762,72 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_STAR] = ACTIONS(REDUCE(sym_struct_specifier, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [150] = { - [sym__abstract_declarator] = ACTIONS(SHIFT(152)), - [sym_abstract_pointer_declarator] = ACTIONS(SHIFT(153)), - [sym_abstract_function_declarator] = ACTIONS(SHIFT(153)), - [sym_abstract_array_declarator] = ACTIONS(SHIFT(153)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(154)), + [154] = { + [sym__abstract_declarator] = ACTIONS(SHIFT(156)), + [sym_abstract_pointer_declarator] = ACTIONS(SHIFT(157)), + [sym_abstract_function_declarator] = ACTIONS(SHIFT(157)), + [sym_abstract_array_declarator] = ACTIONS(SHIFT(157)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(158)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_type_name, 2)), - [anon_sym_STAR] = ACTIONS(SHIFT(155)), + [anon_sym_STAR] = ACTIONS(SHIFT(159)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [151] = { + [155] = { [sym__abstract_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_abstract_pointer_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_abstract_function_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_abstract_array_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__type_specifier, 1), SHIFT(123)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__type_specifier, 1), SHIFT(125)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__type_specifier, 1)), [anon_sym_STAR] = ACTIONS(REDUCE(sym__type_specifier, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [152] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(157)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(158)), + [156] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(161)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(162)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_type_name, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [153] = { + [157] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__abstract_declarator, 1)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__abstract_declarator, 1)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__abstract_declarator, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [154] = { - [sym__abstract_declarator] = ACTIONS(SHIFT(167)), - [sym_abstract_pointer_declarator] = ACTIONS(SHIFT(153)), - [sym_abstract_function_declarator] = ACTIONS(SHIFT(153)), - [sym_abstract_array_declarator] = ACTIONS(SHIFT(153)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(154)), - [anon_sym_STAR] = ACTIONS(SHIFT(155)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [155] = { - [sym__abstract_declarator] = ACTIONS(SHIFT(156)), - [sym_abstract_pointer_declarator] = ACTIONS(SHIFT(153)), - [sym_abstract_function_declarator] = ACTIONS(SHIFT(153)), - [sym_abstract_array_declarator] = ACTIONS(SHIFT(153)), - [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_abstract_pointer_declarator, 1)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(154)), - [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_abstract_pointer_declarator, 1)), - [anon_sym_STAR] = ACTIONS(SHIFT(155)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [156] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(157)), + [158] = { + [sym__abstract_declarator] = ACTIONS(SHIFT(173)), + [sym_abstract_pointer_declarator] = ACTIONS(SHIFT(157)), + [sym_abstract_function_declarator] = ACTIONS(SHIFT(157)), + [sym_abstract_array_declarator] = ACTIONS(SHIFT(157)), [anon_sym_LPAREN] = ACTIONS(SHIFT(158)), + [anon_sym_STAR] = ACTIONS(SHIFT(159)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [159] = { + [sym__abstract_declarator] = ACTIONS(SHIFT(160)), + [sym_abstract_pointer_declarator] = ACTIONS(SHIFT(157)), + [sym_abstract_function_declarator] = ACTIONS(SHIFT(157)), + [sym_abstract_array_declarator] = ACTIONS(SHIFT(157)), + [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_abstract_pointer_declarator, 1)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(158)), + [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_abstract_pointer_declarator, 1)), + [anon_sym_STAR] = ACTIONS(SHIFT(159)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [160] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(161)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(162)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_abstract_pointer_declarator, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [157] = { - [sym__expression] = ACTIONS(SHIFT(164)), + [161] = { + [sym__expression] = ACTIONS(SHIFT(168)), [sym_cast_expression] = ACTIONS(SHIFT(81)), [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), - [anon_sym_RBRACK] = ACTIONS(SHIFT(165)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(169)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), [anon_sym_AMP] = ACTIONS(SHIFT(84)), @@ -4510,13 +4836,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_number] = ACTIONS(SHIFT(81)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [158] = { + [162] = { [sym_declaration_specifiers] = ACTIONS(SHIFT(58)), [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), [sym__type_specifier] = ACTIONS(SHIFT(59)), [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), [sym_struct_specifier] = ACTIONS(SHIFT(30)), - [sym_parameter_declaration] = ACTIONS(SHIFT(159)), + [sym_parameter_declaration] = ACTIONS(SHIFT(163)), [sym_type_qualifier] = ACTIONS(SHIFT(4)), [sym_macro_type] = ACTIONS(SHIFT(30)), [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), @@ -4531,73 +4857,97 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(160)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(164)), [anon_sym_const] = ACTIONS(SHIFT(15)), [anon_sym_restrict] = ACTIONS(SHIFT(15)), [anon_sym_volatile] = ACTIONS(SHIFT(15)), [sym_identifier] = ACTIONS(SHIFT(36)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [159] = { - [aux_sym_function_declarator_repeat1] = ACTIONS(SHIFT(161)), + [163] = { + [aux_sym_function_declarator_repeat1] = ACTIONS(SHIFT(165)), [anon_sym_COMMA] = ACTIONS(SHIFT(63)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(162)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(166)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [160] = { + [164] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_abstract_function_declarator, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_abstract_function_declarator, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_abstract_function_declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [161] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(163)), + [165] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(167)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [162] = { + [166] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_abstract_function_declarator, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_abstract_function_declarator, 4)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_abstract_function_declarator, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [163] = { + [167] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_abstract_function_declarator, 5)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_abstract_function_declarator, 5)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_abstract_function_declarator, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [164] = { - [anon_sym_RBRACK] = ACTIONS(SHIFT(166)), + [168] = { + [anon_sym_EQ] = ACTIONS(SHIFT(170)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(171)), [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), [anon_sym_STAR] = ACTIONS(SHIFT(87)), [anon_sym_PLUS] = ACTIONS(SHIFT(88)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [165] = { + [169] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_abstract_array_declarator, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_abstract_array_declarator, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_abstract_array_declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [166] = { + [170] = { + [sym__expression] = ACTIONS(SHIFT(172)), + [sym_cast_expression] = ACTIONS(SHIFT(81)), + [sym_math_expression] = ACTIONS(SHIFT(81)), + [sym_call_expression] = ACTIONS(SHIFT(81)), + [sym_pointer_expression] = ACTIONS(SHIFT(81)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), + [anon_sym_STAR] = ACTIONS(SHIFT(84)), + [anon_sym_AMP] = ACTIONS(SHIFT(84)), + [sym_string] = ACTIONS(SHIFT(81)), + [sym_identifier] = ACTIONS(SHIFT(81)), + [sym_number] = ACTIONS(SHIFT(81)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [171] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_abstract_array_declarator, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_abstract_array_declarator, 4)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_abstract_array_declarator, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [167] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(157)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(158)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(168)), + [172] = { + [anon_sym_EQ] = ACTIONS(SHIFT(170)), + [anon_sym_RBRACK] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), + [anon_sym_STAR] = ACTIONS(SHIFT(87)), + [anon_sym_PLUS] = ACTIONS(SHIFT(88)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [168] = { + [173] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(161)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(162)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(174)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [174] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__abstract_declarator, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__abstract_declarator, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__abstract_declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [169] = { + [175] = { [sym__abstract_declarator] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), [sym_abstract_pointer_declarator] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), [sym_abstract_function_declarator] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), @@ -4607,16 +4957,17 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_STAR] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [170] = { + [176] = { [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [171] = { + [177] = { [sym__type_specifier] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 2)), [sym_numeric_type_specifier] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 2)), [sym_struct_specifier] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 2)), @@ -4630,12 +4981,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(aux_sym_type_name_repeat1, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [172] = { - [sym__expression] = ACTIONS(SHIFT(173)), + [178] = { + [sym__expression] = ACTIONS(SHIFT(179)), [sym_cast_expression] = ACTIONS(SHIFT(92)), [sym_math_expression] = ACTIONS(SHIFT(92)), [sym_call_expression] = ACTIONS(SHIFT(92)), [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), [anon_sym_STAR] = ACTIONS(SHIFT(95)), [anon_sym_AMP] = ACTIONS(SHIFT(95)), @@ -4644,63 +4996,69 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_number] = ACTIONS(SHIFT(92)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [173] = { + [179] = { [aux_sym_call_expression_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_RPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [174] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(157)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(158)), + [180] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(161)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(162)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_type_name, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [175] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(177)), + [181] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(183)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [176] = { + [182] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_RBRACK] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [177] = { + [183] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_RBRACK] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [178] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(181)), + [184] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(187)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [179] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(180)), - [anon_sym_STAR] = ACTIONS(SHIFT(128)), - [anon_sym_PLUS] = ACTIONS(SHIFT(129)), + [185] = { + [anon_sym_EQ] = ACTIONS(SHIFT(141)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(186)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(SHIFT(131)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [180] = { + [186] = { + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_RBRACK] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [181] = { - [sym__expression] = ACTIONS(SHIFT(182)), + [187] = { + [sym__expression] = ACTIONS(SHIFT(188)), [sym_cast_expression] = ACTIONS(SHIFT(81)), [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), [anon_sym_AMP] = ACTIONS(SHIFT(84)), @@ -4709,14 +5067,15 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_number] = ACTIONS(SHIFT(81)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [182] = { + [188] = { + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_RBRACK] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [183] = { + [189] = { [aux_sym_function_declarator_repeat1] = ACTIONS(REDUCE(sym_array_declarator, 4)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym_array_declarator, 4)), [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_array_declarator, 4)), @@ -4724,51 +5083,52 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_array_declarator, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [184] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(189)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(190)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(201)), + [190] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(195)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(196)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(207)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [185] = { + [191] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__declarator, 1)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__declarator, 1)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__declarator, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [186] = { - [sym__declarator] = ACTIONS(SHIFT(199)), - [sym_pointer_declarator] = ACTIONS(SHIFT(185)), - [sym_function_declarator] = ACTIONS(SHIFT(185)), - [sym_array_declarator] = ACTIONS(SHIFT(185)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(186)), - [anon_sym_STAR] = ACTIONS(SHIFT(187)), - [sym_identifier] = ACTIONS(SHIFT(185)), + [192] = { + [sym__declarator] = ACTIONS(SHIFT(205)), + [sym_pointer_declarator] = ACTIONS(SHIFT(191)), + [sym_function_declarator] = ACTIONS(SHIFT(191)), + [sym_array_declarator] = ACTIONS(SHIFT(191)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(192)), + [anon_sym_STAR] = ACTIONS(SHIFT(193)), + [sym_identifier] = ACTIONS(SHIFT(191)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [187] = { - [sym__declarator] = ACTIONS(SHIFT(188)), - [sym_pointer_declarator] = ACTIONS(SHIFT(185)), - [sym_function_declarator] = ACTIONS(SHIFT(185)), - [sym_array_declarator] = ACTIONS(SHIFT(185)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(186)), - [anon_sym_STAR] = ACTIONS(SHIFT(187)), - [sym_identifier] = ACTIONS(SHIFT(185)), + [193] = { + [sym__declarator] = ACTIONS(SHIFT(194)), + [sym_pointer_declarator] = ACTIONS(SHIFT(191)), + [sym_function_declarator] = ACTIONS(SHIFT(191)), + [sym_array_declarator] = ACTIONS(SHIFT(191)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(192)), + [anon_sym_STAR] = ACTIONS(SHIFT(193)), + [sym_identifier] = ACTIONS(SHIFT(191)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [188] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(189)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(190)), + [194] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(195)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(196)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [189] = { - [sym__expression] = ACTIONS(SHIFT(196)), + [195] = { + [sym__expression] = ACTIONS(SHIFT(202)), [sym_cast_expression] = ACTIONS(SHIFT(81)), [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), - [anon_sym_RBRACK] = ACTIONS(SHIFT(197)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(203)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), [anon_sym_AMP] = ACTIONS(SHIFT(84)), @@ -4777,13 +5137,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_number] = ACTIONS(SHIFT(81)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [190] = { + [196] = { [sym_declaration_specifiers] = ACTIONS(SHIFT(58)), [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), [sym__type_specifier] = ACTIONS(SHIFT(59)), [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), [sym_struct_specifier] = ACTIONS(SHIFT(30)), - [sym_parameter_declaration] = ACTIONS(SHIFT(191)), + [sym_parameter_declaration] = ACTIONS(SHIFT(197)), [sym_type_qualifier] = ACTIONS(SHIFT(4)), [sym_macro_type] = ACTIONS(SHIFT(30)), [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), @@ -4798,73 +5158,74 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(192)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(198)), [anon_sym_const] = ACTIONS(SHIFT(15)), [anon_sym_restrict] = ACTIONS(SHIFT(15)), [anon_sym_volatile] = ACTIONS(SHIFT(15)), [sym_identifier] = ACTIONS(SHIFT(36)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [191] = { - [aux_sym_function_declarator_repeat1] = ACTIONS(SHIFT(193)), + [197] = { + [aux_sym_function_declarator_repeat1] = ACTIONS(SHIFT(199)), [anon_sym_COMMA] = ACTIONS(SHIFT(63)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(194)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(200)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [192] = { + [198] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_function_declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [193] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(195)), + [199] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(201)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [194] = { + [200] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 4)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_function_declarator, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [195] = { + [201] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 5)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 5)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_function_declarator, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [196] = { - [anon_sym_RBRACK] = ACTIONS(SHIFT(198)), + [202] = { + [anon_sym_EQ] = ACTIONS(SHIFT(170)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(204)), [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), [anon_sym_STAR] = ACTIONS(SHIFT(87)), [anon_sym_PLUS] = ACTIONS(SHIFT(88)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [197] = { + [203] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_array_declarator, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_array_declarator, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_array_declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [198] = { + [204] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_array_declarator, 4)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_array_declarator, 4)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_array_declarator, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [199] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(189)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(190)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(200)), + [205] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(195)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(196)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(206)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [200] = { + [206] = { [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__declarator, 3)), [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__declarator, 3)), [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [201] = { + [207] = { [aux_sym_function_declarator_repeat1] = ACTIONS(REDUCE(sym__declarator, 3)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym__declarator, 3)), [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__declarator, 3)), @@ -4872,8 +5233,8 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_RPAREN] = ACTIONS(REDUCE(sym__declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [202] = { - [sym__declarator] = ACTIONS(SHIFT(203)), + [208] = { + [sym__declarator] = ACTIONS(SHIFT(209)), [sym_pointer_declarator] = ACTIONS(SHIFT(69)), [sym_function_declarator] = ACTIONS(SHIFT(69)), [sym_array_declarator] = ACTIONS(SHIFT(69)), @@ -4882,7 +5243,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(SHIFT(69)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [203] = { + [209] = { [aux_sym_function_declarator_repeat1] = ACTIONS(REDUCE(sym_parameter_declaration, 3)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym_parameter_declaration, 3)), [anon_sym_LBRACK] = ACTIONS(SHIFT(73)), @@ -4890,14 +5251,15 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_parameter_declaration, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [204] = { - [anon_sym_RBRACK] = ACTIONS(SHIFT(206)), + [210] = { + [anon_sym_EQ] = ACTIONS(SHIFT(170)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(212)), [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), [anon_sym_STAR] = ACTIONS(SHIFT(87)), [anon_sym_PLUS] = ACTIONS(SHIFT(88)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [205] = { + [211] = { [sym__type_specifier] = ACTIONS(REDUCE(sym_array_declarator, 3)), [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_array_declarator, 3)), [sym_struct_specifier] = ACTIONS(REDUCE(sym_array_declarator, 3)), @@ -4916,7 +5278,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_array_declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [206] = { + [212] = { [sym__type_specifier] = ACTIONS(REDUCE(sym_array_declarator, 4)), [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_array_declarator, 4)), [sym_struct_specifier] = ACTIONS(REDUCE(sym_array_declarator, 4)), @@ -4935,13 +5297,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_array_declarator, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [207] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(189)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(190)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(208)), + [213] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(195)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(196)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(214)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [208] = { + [214] = { [sym__type_specifier] = ACTIONS(REDUCE(sym__declarator, 3)), [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym__declarator, 3)), [sym_struct_specifier] = ACTIONS(REDUCE(sym__declarator, 3)), @@ -4960,19 +5322,19 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym__declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [209] = { + [215] = { [anon_sym_RBRACE] = ACTIONS(SHIFT(35)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [210] = { + [216] = { [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_struct_specifier, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [211] = { + [217] = { [anon_sym_RPAREN] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [212] = { + [218] = { [sym__init_declarator] = ACTIONS(REDUCE(sym_macro_type, 4)), [sym__declarator] = ACTIONS(REDUCE(sym_macro_type, 4)), [sym_pointer_declarator] = ACTIONS(REDUCE(sym_macro_type, 4)), @@ -4983,49 +5345,49 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_macro_type, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [213] = { + [219] = { [sym__type_specifier] = ACTIONS(SHIFT(29)), [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), [sym_struct_specifier] = ACTIONS(SHIFT(30)), [sym_struct_declaration] = ACTIONS(SHIFT(31)), [sym_macro_type] = ACTIONS(SHIFT(30)), [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), - [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(219)), + [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(225)), [anon_sym_signed] = ACTIONS(SHIFT(13)), [anon_sym_unsigned] = ACTIONS(SHIFT(13)), [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RBRACE] = ACTIONS(SHIFT(220)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(226)), [sym_identifier] = ACTIONS(SHIFT(36)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [214] = { - [anon_sym_LBRACE] = ACTIONS(SHIFT(215)), + [220] = { + [anon_sym_LBRACE] = ACTIONS(SHIFT(221)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [215] = { + [221] = { [sym__type_specifier] = ACTIONS(SHIFT(29)), [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), [sym_struct_specifier] = ACTIONS(SHIFT(30)), [sym_struct_declaration] = ACTIONS(SHIFT(31)), [sym_macro_type] = ACTIONS(SHIFT(30)), [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), - [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(216)), + [aux_sym_struct_specifier_repeat1] = ACTIONS(SHIFT(222)), [anon_sym_signed] = ACTIONS(SHIFT(13)), [anon_sym_unsigned] = ACTIONS(SHIFT(13)), [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RBRACE] = ACTIONS(SHIFT(217)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(223)), [sym_identifier] = ACTIONS(SHIFT(36)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [216] = { - [anon_sym_RBRACE] = ACTIONS(SHIFT(218)), + [222] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(224)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [217] = { + [223] = { [sym__init_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 4)), [sym__declarator] = ACTIONS(REDUCE(sym_struct_specifier, 4)), [sym_pointer_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 4)), @@ -5036,7 +5398,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_struct_specifier, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [218] = { + [224] = { [sym__init_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 5)), [sym__declarator] = ACTIONS(REDUCE(sym_struct_specifier, 5)), [sym_pointer_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 5)), @@ -5047,11 +5409,11 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_struct_specifier, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [219] = { - [anon_sym_RBRACE] = ACTIONS(SHIFT(217)), + [225] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(223)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [220] = { + [226] = { [sym__init_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 3)), [sym__declarator] = ACTIONS(REDUCE(sym_struct_specifier, 3)), [sym_pointer_declarator] = ACTIONS(REDUCE(sym_struct_specifier, 3)), @@ -5062,16 +5424,16 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_struct_specifier, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [221] = { + [227] = { [sym_identifier] = ACTIONS(REDUCE(aux_sym_numeric_type_specifier_repeat1, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [222] = { - [anon_sym_LF] = ACTIONS(SHIFT(223)), - [sym_preproc_arg] = ACTIONS(SHIFT(224)), + [228] = { + [anon_sym_LF] = ACTIONS(SHIFT(229)), + [sym_preproc_arg] = ACTIONS(SHIFT(230)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [223] = { + [229] = { [sym_preproc_define] = ACTIONS(REDUCE(sym_preproc_define, 3)), [sym_function_definition] = ACTIONS(REDUCE(sym_preproc_define, 3)), [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_preproc_define, 3)), @@ -5104,11 +5466,11 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_preproc_define, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [224] = { - [anon_sym_LF] = ACTIONS(SHIFT(225)), + [230] = { + [anon_sym_LF] = ACTIONS(SHIFT(231)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [225] = { + [231] = { [sym_preproc_define] = ACTIONS(REDUCE(sym_preproc_define, 4)), [sym_function_definition] = ACTIONS(REDUCE(sym_preproc_define, 4)), [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_preproc_define, 4)), @@ -5141,7 +5503,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_preproc_define, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [226] = { + [232] = { [sym_preproc_define] = ACTIONS(REDUCE(sym_declaration, 2)), [sym_function_definition] = ACTIONS(REDUCE(sym_declaration, 2)), [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 2)), @@ -5174,7 +5536,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [227] = { + [233] = { [sym__init_declarator] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), [sym__declarator] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), [sym_pointer_declarator] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), @@ -5185,24 +5547,24 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_numeric_type_specifier, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [228] = { - [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(376)), - [anon_sym_COMMA] = ACTIONS(SHIFT(367)), - [anon_sym_SEMI] = ACTIONS(SHIFT(377)), + [234] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(253)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(256)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [229] = { - [sym_compound_statement] = ACTIONS(SHIFT(246)), - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(247)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_EQ] = ACTIONS(SHIFT(248)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(234)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(235)), + [235] = { + [sym_compound_statement] = ACTIONS(SHIFT(252)), + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(253)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(254)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(256)), + [anon_sym_EQ] = ACTIONS(SHIFT(257)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(240)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(241)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [230] = { + [236] = { [sym_compound_statement] = ACTIONS(REDUCE(sym__declarator, 1)), [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__declarator, 1)), [anon_sym_LBRACE] = ACTIONS(REDUCE(sym__declarator, 1)), @@ -5213,44 +5575,45 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__declarator, 1)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [231] = { - [sym__declarator] = ACTIONS(SHIFT(244)), - [sym_pointer_declarator] = ACTIONS(SHIFT(185)), - [sym_function_declarator] = ACTIONS(SHIFT(185)), - [sym_array_declarator] = ACTIONS(SHIFT(185)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(186)), - [anon_sym_STAR] = ACTIONS(SHIFT(187)), - [sym_identifier] = ACTIONS(SHIFT(185)), + [237] = { + [sym__declarator] = ACTIONS(SHIFT(250)), + [sym_pointer_declarator] = ACTIONS(SHIFT(191)), + [sym_function_declarator] = ACTIONS(SHIFT(191)), + [sym_array_declarator] = ACTIONS(SHIFT(191)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(192)), + [anon_sym_STAR] = ACTIONS(SHIFT(193)), + [sym_identifier] = ACTIONS(SHIFT(191)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [232] = { - [sym__declarator] = ACTIONS(SHIFT(233)), - [sym_pointer_declarator] = ACTIONS(SHIFT(230)), - [sym_function_declarator] = ACTIONS(SHIFT(230)), - [sym_array_declarator] = ACTIONS(SHIFT(230)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(231)), - [anon_sym_STAR] = ACTIONS(SHIFT(232)), - [sym_identifier] = ACTIONS(SHIFT(230)), + [238] = { + [sym__declarator] = ACTIONS(SHIFT(239)), + [sym_pointer_declarator] = ACTIONS(SHIFT(236)), + [sym_function_declarator] = ACTIONS(SHIFT(236)), + [sym_array_declarator] = ACTIONS(SHIFT(236)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(237)), + [anon_sym_STAR] = ACTIONS(SHIFT(238)), + [sym_identifier] = ACTIONS(SHIFT(236)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [233] = { + [239] = { [sym_compound_statement] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), [anon_sym_COMMA] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), [anon_sym_SEMI] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), [anon_sym_EQ] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(234)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(235)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(240)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(241)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [234] = { - [sym__expression] = ACTIONS(SHIFT(241)), + [240] = { + [sym__expression] = ACTIONS(SHIFT(247)), [sym_cast_expression] = ACTIONS(SHIFT(81)), [sym_math_expression] = ACTIONS(SHIFT(81)), [sym_call_expression] = ACTIONS(SHIFT(81)), [sym_pointer_expression] = ACTIONS(SHIFT(81)), - [anon_sym_RBRACK] = ACTIONS(SHIFT(242)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(248)), [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), [anon_sym_STAR] = ACTIONS(SHIFT(84)), [anon_sym_AMP] = ACTIONS(SHIFT(84)), @@ -5259,13 +5622,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_number] = ACTIONS(SHIFT(81)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [235] = { + [241] = { [sym_declaration_specifiers] = ACTIONS(SHIFT(58)), [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), [sym__type_specifier] = ACTIONS(SHIFT(59)), [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), [sym_struct_specifier] = ACTIONS(SHIFT(30)), - [sym_parameter_declaration] = ACTIONS(SHIFT(236)), + [sym_parameter_declaration] = ACTIONS(SHIFT(242)), [sym_type_qualifier] = ACTIONS(SHIFT(4)), [sym_macro_type] = ACTIONS(SHIFT(30)), [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), @@ -5280,20 +5643,20 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_long] = ACTIONS(SHIFT(13)), [anon_sym_short] = ACTIONS(SHIFT(13)), [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(237)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(243)), [anon_sym_const] = ACTIONS(SHIFT(15)), [anon_sym_restrict] = ACTIONS(SHIFT(15)), [anon_sym_volatile] = ACTIONS(SHIFT(15)), [sym_identifier] = ACTIONS(SHIFT(36)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [236] = { - [aux_sym_function_declarator_repeat1] = ACTIONS(SHIFT(238)), + [242] = { + [aux_sym_function_declarator_repeat1] = ACTIONS(SHIFT(244)), [anon_sym_COMMA] = ACTIONS(SHIFT(63)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(239)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(245)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [237] = { + [243] = { [sym_compound_statement] = ACTIONS(REDUCE(sym_function_declarator, 3)), [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 3)), [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_function_declarator, 3)), @@ -5304,11 +5667,11 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [238] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(240)), + [244] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(246)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [239] = { + [245] = { [sym_compound_statement] = ACTIONS(REDUCE(sym_function_declarator, 4)), [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 4)), [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_function_declarator, 4)), @@ -5319,7 +5682,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [240] = { + [246] = { [sym_compound_statement] = ACTIONS(REDUCE(sym_function_declarator, 5)), [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 5)), [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_function_declarator, 5)), @@ -5330,14 +5693,15 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [241] = { - [anon_sym_RBRACK] = ACTIONS(SHIFT(243)), + [247] = { + [anon_sym_EQ] = ACTIONS(SHIFT(170)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(249)), [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), [anon_sym_STAR] = ACTIONS(SHIFT(87)), [anon_sym_PLUS] = ACTIONS(SHIFT(88)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [242] = { + [248] = { [sym_compound_statement] = ACTIONS(REDUCE(sym_array_declarator, 3)), [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_array_declarator, 3)), [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_array_declarator, 3)), @@ -5348,7 +5712,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_array_declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [243] = { + [249] = { [sym_compound_statement] = ACTIONS(REDUCE(sym_array_declarator, 4)), [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_array_declarator, 4)), [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_array_declarator, 4)), @@ -5359,13 +5723,13 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_array_declarator, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [244] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(189)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(190)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(245)), + [250] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(195)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(196)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(251)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [245] = { + [251] = { [sym_compound_statement] = ACTIONS(REDUCE(sym__declarator, 3)), [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__declarator, 3)), [anon_sym_LBRACE] = ACTIONS(REDUCE(sym__declarator, 3)), @@ -5376,7 +5740,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__declarator, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [246] = { + [252] = { [sym_preproc_define] = ACTIONS(REDUCE(sym_function_definition, 3)), [sym_function_definition] = ACTIONS(REDUCE(sym_function_definition, 3)), [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_function_definition, 3)), @@ -5409,1559 +5773,69 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_function_definition, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [247] = { - [sym_declaration_specifiers] = ACTIONS(SHIFT(315)), - [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), - [sym__type_specifier] = ACTIONS(SHIFT(316)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), - [sym_struct_specifier] = ACTIONS(SHIFT(6)), - [sym_declaration] = ACTIONS(SHIFT(317)), - [sym_type_qualifier] = ACTIONS(SHIFT(4)), - [sym__expression] = ACTIONS(SHIFT(318)), - [sym_cast_expression] = ACTIONS(SHIFT(319)), - [sym_math_expression] = ACTIONS(SHIFT(319)), - [sym_call_expression] = ACTIONS(SHIFT(319)), - [sym_pointer_expression] = ACTIONS(SHIFT(319)), - [sym__statement] = ACTIONS(SHIFT(317)), - [sym_expression_statement] = ACTIONS(SHIFT(320)), - [sym_macro_type] = ACTIONS(SHIFT(6)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), - [aux_sym_compound_statement_repeat1] = ACTIONS(SHIFT(321)), - [ts_builtin_sym_error] = ACTIONS(SHIFT(322)), - [anon_sym_typedef] = ACTIONS(SHIFT(12)), - [anon_sym_extern] = ACTIONS(SHIFT(12)), - [anon_sym_static] = ACTIONS(SHIFT(12)), - [anon_sym_auto] = ACTIONS(SHIFT(12)), - [anon_sym_register] = ACTIONS(SHIFT(12)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(14)), - [anon_sym_RBRACE] = ACTIONS(SHIFT(323)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(324)), - [anon_sym_STAR] = ACTIONS(SHIFT(325)), - [anon_sym_const] = ACTIONS(SHIFT(15)), - [anon_sym_restrict] = ACTIONS(SHIFT(15)), - [anon_sym_volatile] = ACTIONS(SHIFT(15)), - [anon_sym_AMP] = ACTIONS(SHIFT(325)), - [sym_string] = ACTIONS(SHIFT(319)), - [sym_identifier] = ACTIONS(SHIFT(326)), - [sym_number] = ACTIONS(SHIFT(319)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [248] = { - [sym_initializer] = ACTIONS(SHIFT(249)), - [sym__expression] = ACTIONS(SHIFT(250)), - [sym_cast_expression] = ACTIONS(SHIFT(251)), - [sym_math_expression] = ACTIONS(SHIFT(251)), - [sym_call_expression] = ACTIONS(SHIFT(251)), - [sym_pointer_expression] = ACTIONS(SHIFT(251)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(252)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(253)), - [anon_sym_STAR] = ACTIONS(SHIFT(254)), - [anon_sym_AMP] = ACTIONS(SHIFT(254)), - [sym_string] = ACTIONS(SHIFT(251)), - [sym_identifier] = ACTIONS(SHIFT(251)), - [sym_number] = ACTIONS(SHIFT(251)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [249] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__init_declarator, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__init_declarator, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__init_declarator, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [250] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_initializer, 1)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 1)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_initializer, 1)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(256)), - [anon_sym_STAR] = ACTIONS(SHIFT(257)), - [anon_sym_PLUS] = ACTIONS(SHIFT(258)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [251] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [252] = { - [sym_initializer] = ACTIONS(SHIFT(271)), - [sym_initializer_list] = ACTIONS(SHIFT(272)), - [sym_designation] = ACTIONS(SHIFT(273)), - [sym__expression] = ACTIONS(SHIFT(274)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [aux_sym_designation_repeat1] = ACTIONS(SHIFT(276)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(277)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(278)), - [anon_sym_DOT] = ACTIONS(SHIFT(279)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, [253] = { - [sym__type_specifier] = ACTIONS(SHIFT(110)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(111)), - [sym_struct_specifier] = ACTIONS(SHIFT(111)), - [sym_type_name] = ACTIONS(SHIFT(266)), - [sym_type_qualifier] = ACTIONS(SHIFT(113)), - [sym__expression] = ACTIONS(SHIFT(267)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [sym_macro_type] = ACTIONS(SHIFT(111)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(116)), - [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(117)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(118)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_const] = ACTIONS(SHIFT(121)), - [anon_sym_restrict] = ACTIONS(SHIFT(121)), - [anon_sym_volatile] = ACTIONS(SHIFT(121)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(122)), - [sym_number] = ACTIONS(SHIFT(115)), + [anon_sym_SEMI] = ACTIONS(SHIFT(437)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [254] = { - [sym__expression] = ACTIONS(SHIFT(255)), - [sym_cast_expression] = ACTIONS(SHIFT(251)), - [sym_math_expression] = ACTIONS(SHIFT(251)), - [sym_call_expression] = ACTIONS(SHIFT(251)), - [sym_pointer_expression] = ACTIONS(SHIFT(251)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(253)), - [anon_sym_STAR] = ACTIONS(SHIFT(254)), - [anon_sym_AMP] = ACTIONS(SHIFT(254)), - [sym_string] = ACTIONS(SHIFT(251)), - [sym_identifier] = ACTIONS(SHIFT(251)), - [sym_number] = ACTIONS(SHIFT(251)), + [sym_declaration_specifiers] = ACTIONS(SHIFT(347)), + [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), + [sym__type_specifier] = ACTIONS(SHIFT(348)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), + [sym_struct_specifier] = ACTIONS(SHIFT(6)), + [sym_declaration] = ACTIONS(SHIFT(349)), + [sym_type_qualifier] = ACTIONS(SHIFT(4)), + [sym_compound_statement] = ACTIONS(SHIFT(350)), + [sym__expression] = ACTIONS(SHIFT(351)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym__statement] = ACTIONS(SHIFT(349)), + [sym_for_statement] = ACTIONS(SHIFT(350)), + [sym_expression_statement] = ACTIONS(SHIFT(350)), + [sym_macro_type] = ACTIONS(SHIFT(6)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), + [aux_sym_compound_statement_repeat1] = ACTIONS(SHIFT(353)), + [ts_builtin_sym_error] = ACTIONS(SHIFT(354)), + [anon_sym_typedef] = ACTIONS(SHIFT(12)), + [anon_sym_extern] = ACTIONS(SHIFT(12)), + [anon_sym_static] = ACTIONS(SHIFT(12)), + [anon_sym_auto] = ACTIONS(SHIFT(12)), + [anon_sym_register] = ACTIONS(SHIFT(12)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(14)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(355)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(356)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_const] = ACTIONS(SHIFT(15)), + [anon_sym_restrict] = ACTIONS(SHIFT(15)), + [anon_sym_volatile] = ACTIONS(SHIFT(15)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [anon_sym_for] = ACTIONS(SHIFT(359)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(360)), + [sym_number] = ACTIONS(SHIFT(352)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [255] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_pointer_expression, 2)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_pointer_expression, 2)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_pointer_expression, 2)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(256)), - [anon_sym_STAR] = ACTIONS(SHIFT(257)), - [anon_sym_PLUS] = ACTIONS(SHIFT(258)), + [sym__init_declarator] = ACTIONS(SHIFT(328)), + [sym__declarator] = ACTIONS(SHIFT(329)), + [sym_pointer_declarator] = ACTIONS(SHIFT(330)), + [sym_function_declarator] = ACTIONS(SHIFT(330)), + [sym_array_declarator] = ACTIONS(SHIFT(330)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(331)), + [anon_sym_STAR] = ACTIONS(SHIFT(332)), + [sym_identifier] = ACTIONS(SHIFT(330)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, [256] = { - [sym__expression] = ACTIONS(SHIFT(261)), - [sym_cast_expression] = ACTIONS(SHIFT(92)), - [sym_math_expression] = ACTIONS(SHIFT(92)), - [sym_call_expression] = ACTIONS(SHIFT(92)), - [sym_pointer_expression] = ACTIONS(SHIFT(92)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(262)), - [anon_sym_STAR] = ACTIONS(SHIFT(95)), - [anon_sym_AMP] = ACTIONS(SHIFT(95)), - [sym_string] = ACTIONS(SHIFT(92)), - [sym_identifier] = ACTIONS(SHIFT(92)), - [sym_number] = ACTIONS(SHIFT(92)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [257] = { - [sym__expression] = ACTIONS(SHIFT(260)), - [sym_cast_expression] = ACTIONS(SHIFT(251)), - [sym_math_expression] = ACTIONS(SHIFT(251)), - [sym_call_expression] = ACTIONS(SHIFT(251)), - [sym_pointer_expression] = ACTIONS(SHIFT(251)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(253)), - [anon_sym_STAR] = ACTIONS(SHIFT(254)), - [anon_sym_AMP] = ACTIONS(SHIFT(254)), - [sym_string] = ACTIONS(SHIFT(251)), - [sym_identifier] = ACTIONS(SHIFT(251)), - [sym_number] = ACTIONS(SHIFT(251)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [258] = { - [sym__expression] = ACTIONS(SHIFT(259)), - [sym_cast_expression] = ACTIONS(SHIFT(251)), - [sym_math_expression] = ACTIONS(SHIFT(251)), - [sym_call_expression] = ACTIONS(SHIFT(251)), - [sym_pointer_expression] = ACTIONS(SHIFT(251)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(253)), - [anon_sym_STAR] = ACTIONS(SHIFT(254)), - [anon_sym_AMP] = ACTIONS(SHIFT(254)), - [sym_string] = ACTIONS(SHIFT(251)), - [sym_identifier] = ACTIONS(SHIFT(251)), - [sym_number] = ACTIONS(SHIFT(251)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [259] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(256)), - [anon_sym_STAR] = ACTIONS(SHIFT(257)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [260] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(256)), - [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [261] = { - [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(263)), - [anon_sym_COMMA] = ACTIONS(SHIFT(105)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(264)), - [anon_sym_STAR] = ACTIONS(SHIFT(98)), - [anon_sym_PLUS] = ACTIONS(SHIFT(99)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [262] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [263] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(265)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [264] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [265] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [266] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(269)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [267] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(268)), - [anon_sym_STAR] = ACTIONS(SHIFT(128)), - [anon_sym_PLUS] = ACTIONS(SHIFT(129)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [268] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [269] = { - [sym__expression] = ACTIONS(SHIFT(270)), - [sym_cast_expression] = ACTIONS(SHIFT(251)), - [sym_math_expression] = ACTIONS(SHIFT(251)), - [sym_call_expression] = ACTIONS(SHIFT(251)), - [sym_pointer_expression] = ACTIONS(SHIFT(251)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(253)), - [anon_sym_STAR] = ACTIONS(SHIFT(254)), - [anon_sym_AMP] = ACTIONS(SHIFT(254)), - [sym_string] = ACTIONS(SHIFT(251)), - [sym_identifier] = ACTIONS(SHIFT(251)), - [sym_number] = ACTIONS(SHIFT(251)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [270] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [271] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer_list, 1)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer_list, 1)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [272] = { - [anon_sym_RBRACE] = ACTIONS(SHIFT(312)), - [anon_sym_COMMA] = ACTIONS(SHIFT(313)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [273] = { - [sym_initializer] = ACTIONS(SHIFT(311)), - [sym__expression] = ACTIONS(SHIFT(274)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(277)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [274] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer, 1)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 1)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(283)), - [anon_sym_STAR] = ACTIONS(SHIFT(284)), - [anon_sym_PLUS] = ACTIONS(SHIFT(285)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [275] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [276] = { - [anon_sym_EQ] = ACTIONS(SHIFT(310)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [277] = { - [sym_initializer] = ACTIONS(SHIFT(271)), - [sym_initializer_list] = ACTIONS(SHIFT(303)), - [sym_designation] = ACTIONS(SHIFT(273)), - [sym__expression] = ACTIONS(SHIFT(274)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [aux_sym_designation_repeat1] = ACTIONS(SHIFT(276)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(277)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(278)), - [anon_sym_DOT] = ACTIONS(SHIFT(279)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [278] = { - [sym__expression] = ACTIONS(SHIFT(300)), - [sym_cast_expression] = ACTIONS(SHIFT(81)), - [sym_math_expression] = ACTIONS(SHIFT(81)), - [sym_call_expression] = ACTIONS(SHIFT(81)), - [sym_pointer_expression] = ACTIONS(SHIFT(81)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), - [anon_sym_STAR] = ACTIONS(SHIFT(84)), - [anon_sym_AMP] = ACTIONS(SHIFT(84)), - [sym_string] = ACTIONS(SHIFT(81)), - [sym_identifier] = ACTIONS(SHIFT(81)), - [sym_number] = ACTIONS(SHIFT(81)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [279] = { - [sym_identifier] = ACTIONS(SHIFT(298)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [280] = { - [sym__type_specifier] = ACTIONS(SHIFT(110)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(111)), - [sym_struct_specifier] = ACTIONS(SHIFT(111)), - [sym_type_name] = ACTIONS(SHIFT(293)), - [sym_type_qualifier] = ACTIONS(SHIFT(113)), - [sym__expression] = ACTIONS(SHIFT(294)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [sym_macro_type] = ACTIONS(SHIFT(111)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(116)), - [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(117)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(118)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_const] = ACTIONS(SHIFT(121)), - [anon_sym_restrict] = ACTIONS(SHIFT(121)), - [anon_sym_volatile] = ACTIONS(SHIFT(121)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(122)), - [sym_number] = ACTIONS(SHIFT(115)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [281] = { - [sym__expression] = ACTIONS(SHIFT(282)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [282] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_pointer_expression, 2)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_pointer_expression, 2)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(283)), - [anon_sym_STAR] = ACTIONS(SHIFT(284)), - [anon_sym_PLUS] = ACTIONS(SHIFT(285)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [283] = { - [sym__expression] = ACTIONS(SHIFT(288)), - [sym_cast_expression] = ACTIONS(SHIFT(92)), - [sym_math_expression] = ACTIONS(SHIFT(92)), - [sym_call_expression] = ACTIONS(SHIFT(92)), - [sym_pointer_expression] = ACTIONS(SHIFT(92)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(289)), - [anon_sym_STAR] = ACTIONS(SHIFT(95)), - [anon_sym_AMP] = ACTIONS(SHIFT(95)), - [sym_string] = ACTIONS(SHIFT(92)), - [sym_identifier] = ACTIONS(SHIFT(92)), - [sym_number] = ACTIONS(SHIFT(92)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [284] = { - [sym__expression] = ACTIONS(SHIFT(287)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [285] = { - [sym__expression] = ACTIONS(SHIFT(286)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [286] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(283)), - [anon_sym_STAR] = ACTIONS(SHIFT(284)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [287] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(283)), - [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [288] = { - [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(290)), - [anon_sym_COMMA] = ACTIONS(SHIFT(105)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(291)), - [anon_sym_STAR] = ACTIONS(SHIFT(98)), - [anon_sym_PLUS] = ACTIONS(SHIFT(99)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [289] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [290] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(292)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [291] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [292] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [293] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(296)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [294] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(295)), - [anon_sym_STAR] = ACTIONS(SHIFT(128)), - [anon_sym_PLUS] = ACTIONS(SHIFT(129)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [295] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [296] = { - [sym__expression] = ACTIONS(SHIFT(297)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [297] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [298] = { - [aux_sym_designation_repeat1] = ACTIONS(SHIFT(299)), - [anon_sym_EQ] = ACTIONS(REDUCE(aux_sym_designation_repeat1, 2)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(278)), - [anon_sym_DOT] = ACTIONS(SHIFT(279)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [299] = { - [anon_sym_EQ] = ACTIONS(REDUCE(aux_sym_designation_repeat1, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [300] = { - [anon_sym_RBRACK] = ACTIONS(SHIFT(301)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), - [anon_sym_STAR] = ACTIONS(SHIFT(87)), - [anon_sym_PLUS] = ACTIONS(SHIFT(88)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [301] = { - [aux_sym_designation_repeat1] = ACTIONS(SHIFT(302)), - [anon_sym_EQ] = ACTIONS(REDUCE(aux_sym_designation_repeat1, 3)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(278)), - [anon_sym_DOT] = ACTIONS(SHIFT(279)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [302] = { - [anon_sym_EQ] = ACTIONS(REDUCE(aux_sym_designation_repeat1, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [303] = { - [anon_sym_RBRACE] = ACTIONS(SHIFT(304)), - [anon_sym_COMMA] = ACTIONS(SHIFT(305)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [304] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [305] = { - [sym_initializer] = ACTIONS(SHIFT(306)), - [sym_designation] = ACTIONS(SHIFT(307)), - [sym__expression] = ACTIONS(SHIFT(274)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [aux_sym_designation_repeat1] = ACTIONS(SHIFT(276)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(277)), - [anon_sym_RBRACE] = ACTIONS(SHIFT(308)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(278)), - [anon_sym_DOT] = ACTIONS(SHIFT(279)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [306] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer_list, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer_list, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [307] = { - [sym_initializer] = ACTIONS(SHIFT(309)), - [sym__expression] = ACTIONS(SHIFT(274)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(277)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [308] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [309] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer_list, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer_list, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [310] = { - [sym_initializer] = ACTIONS(REDUCE(sym_designation, 2)), - [sym__expression] = ACTIONS(REDUCE(sym_designation, 2)), - [sym_cast_expression] = ACTIONS(REDUCE(sym_designation, 2)), - [sym_math_expression] = ACTIONS(REDUCE(sym_designation, 2)), - [sym_call_expression] = ACTIONS(REDUCE(sym_designation, 2)), - [sym_pointer_expression] = ACTIONS(REDUCE(sym_designation, 2)), - [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_designation, 2)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_designation, 2)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_designation, 2)), - [anon_sym_AMP] = ACTIONS(REDUCE(sym_designation, 2)), - [sym_string] = ACTIONS(REDUCE(sym_designation, 2)), - [sym_identifier] = ACTIONS(REDUCE(sym_designation, 2)), - [sym_number] = ACTIONS(REDUCE(sym_designation, 2)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [311] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer_list, 2)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer_list, 2)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [312] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_initializer, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_initializer, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [313] = { - [sym_initializer] = ACTIONS(SHIFT(306)), - [sym_designation] = ACTIONS(SHIFT(307)), - [sym__expression] = ACTIONS(SHIFT(274)), - [sym_cast_expression] = ACTIONS(SHIFT(275)), - [sym_math_expression] = ACTIONS(SHIFT(275)), - [sym_call_expression] = ACTIONS(SHIFT(275)), - [sym_pointer_expression] = ACTIONS(SHIFT(275)), - [aux_sym_designation_repeat1] = ACTIONS(SHIFT(276)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(277)), - [anon_sym_RBRACE] = ACTIONS(SHIFT(314)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(278)), - [anon_sym_DOT] = ACTIONS(SHIFT(279)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(280)), - [anon_sym_STAR] = ACTIONS(SHIFT(281)), - [anon_sym_AMP] = ACTIONS(SHIFT(281)), - [sym_string] = ACTIONS(SHIFT(275)), - [sym_identifier] = ACTIONS(SHIFT(275)), - [sym_number] = ACTIONS(SHIFT(275)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [314] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_initializer, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 4)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_initializer, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [315] = { - [sym__type_specifier] = ACTIONS(SHIFT(372)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), - [sym_struct_specifier] = ACTIONS(SHIFT(6)), - [sym_macro_type] = ACTIONS(SHIFT(6)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(14)), - [sym_identifier] = ACTIONS(SHIFT(16)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [316] = { - [sym__init_declarator] = ACTIONS(SHIFT(348)), - [sym__declarator] = ACTIONS(SHIFT(349)), - [sym_pointer_declarator] = ACTIONS(SHIFT(350)), - [sym_function_declarator] = ACTIONS(SHIFT(350)), - [sym_array_declarator] = ACTIONS(SHIFT(350)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(351)), - [anon_sym_STAR] = ACTIONS(SHIFT(352)), - [sym_identifier] = ACTIONS(SHIFT(350)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [317] = { - [sym_declaration_specifiers] = ACTIONS(SHIFT(315)), - [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), - [sym__type_specifier] = ACTIONS(SHIFT(316)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), - [sym_struct_specifier] = ACTIONS(SHIFT(6)), - [sym_declaration] = ACTIONS(SHIFT(317)), - [sym_type_qualifier] = ACTIONS(SHIFT(4)), - [sym__expression] = ACTIONS(SHIFT(318)), - [sym_cast_expression] = ACTIONS(SHIFT(319)), - [sym_math_expression] = ACTIONS(SHIFT(319)), - [sym_call_expression] = ACTIONS(SHIFT(319)), - [sym_pointer_expression] = ACTIONS(SHIFT(319)), - [sym__statement] = ACTIONS(SHIFT(317)), - [sym_expression_statement] = ACTIONS(SHIFT(320)), - [sym_macro_type] = ACTIONS(SHIFT(6)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), - [aux_sym_compound_statement_repeat1] = ACTIONS(SHIFT(346)), - [ts_builtin_sym_error] = ACTIONS(SHIFT(347)), - [anon_sym_typedef] = ACTIONS(SHIFT(12)), - [anon_sym_extern] = ACTIONS(SHIFT(12)), - [anon_sym_static] = ACTIONS(SHIFT(12)), - [anon_sym_auto] = ACTIONS(SHIFT(12)), - [anon_sym_register] = ACTIONS(SHIFT(12)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(14)), - [anon_sym_RBRACE] = ACTIONS(REDUCE(aux_sym_compound_statement_repeat1, 1)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(324)), - [anon_sym_STAR] = ACTIONS(SHIFT(325)), - [anon_sym_const] = ACTIONS(SHIFT(15)), - [anon_sym_restrict] = ACTIONS(SHIFT(15)), - [anon_sym_volatile] = ACTIONS(SHIFT(15)), - [anon_sym_AMP] = ACTIONS(SHIFT(325)), - [sym_string] = ACTIONS(SHIFT(319)), - [sym_identifier] = ACTIONS(SHIFT(326)), - [sym_number] = ACTIONS(SHIFT(319)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [318] = { - [anon_sym_SEMI] = ACTIONS(SHIFT(345)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(328)), - [anon_sym_STAR] = ACTIONS(SHIFT(329)), - [anon_sym_PLUS] = ACTIONS(SHIFT(330)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [319] = { - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [320] = { - [sym_declaration_specifiers] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_storage_class_specifier] = ACTIONS(REDUCE(sym__statement, 1)), - [sym__type_specifier] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_struct_specifier] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_declaration] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_type_qualifier] = ACTIONS(REDUCE(sym__statement, 1)), - [sym__expression] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_cast_expression] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_math_expression] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_call_expression] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_pointer_expression] = ACTIONS(REDUCE(sym__statement, 1)), - [sym__statement] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_expression_statement] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_macro_type] = ACTIONS(REDUCE(sym__statement, 1)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym__statement, 1)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym__statement, 1)), - [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym__statement, 1)), - [ts_builtin_sym_error] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_typedef] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_extern] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_static] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_auto] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_register] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_signed] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_unsigned] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_long] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_short] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_struct] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_const] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_restrict] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_volatile] = ACTIONS(REDUCE(sym__statement, 1)), - [anon_sym_AMP] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_string] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_identifier] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_number] = ACTIONS(REDUCE(sym__statement, 1)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [321] = { - [anon_sym_RBRACE] = ACTIONS(SHIFT(343)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [322] = { - [anon_sym_RBRACE] = ACTIONS(SHIFT(343)), - [anon_sym_SEMI] = ACTIONS(SHIFT(344)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [323] = { - [sym_preproc_define] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_function_definition] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym__type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_struct_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_declaration] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_type_qualifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_macro_type] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [aux_sym_translation_unit_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [ts_builtin_sym_end] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_POUNDdefine] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_typedef] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_extern] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_static] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_auto] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_register] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_signed] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_unsigned] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_long] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_short] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_struct] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_const] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_restrict] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [anon_sym_volatile] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_identifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [324] = { - [sym__type_specifier] = ACTIONS(SHIFT(110)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(111)), - [sym_struct_specifier] = ACTIONS(SHIFT(111)), - [sym_type_name] = ACTIONS(SHIFT(338)), - [sym_type_qualifier] = ACTIONS(SHIFT(113)), - [sym__expression] = ACTIONS(SHIFT(339)), - [sym_cast_expression] = ACTIONS(SHIFT(115)), - [sym_math_expression] = ACTIONS(SHIFT(115)), - [sym_call_expression] = ACTIONS(SHIFT(115)), - [sym_pointer_expression] = ACTIONS(SHIFT(115)), - [sym_macro_type] = ACTIONS(SHIFT(111)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(116)), - [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(117)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(118)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(119)), - [anon_sym_STAR] = ACTIONS(SHIFT(120)), - [anon_sym_const] = ACTIONS(SHIFT(121)), - [anon_sym_restrict] = ACTIONS(SHIFT(121)), - [anon_sym_volatile] = ACTIONS(SHIFT(121)), - [anon_sym_AMP] = ACTIONS(SHIFT(120)), - [sym_string] = ACTIONS(SHIFT(115)), - [sym_identifier] = ACTIONS(SHIFT(122)), - [sym_number] = ACTIONS(SHIFT(115)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [325] = { - [sym__expression] = ACTIONS(SHIFT(327)), - [sym_cast_expression] = ACTIONS(SHIFT(319)), - [sym_math_expression] = ACTIONS(SHIFT(319)), - [sym_call_expression] = ACTIONS(SHIFT(319)), - [sym_pointer_expression] = ACTIONS(SHIFT(319)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(324)), - [anon_sym_STAR] = ACTIONS(SHIFT(325)), - [anon_sym_AMP] = ACTIONS(SHIFT(325)), - [sym_string] = ACTIONS(SHIFT(319)), - [sym_identifier] = ACTIONS(SHIFT(319)), - [sym_number] = ACTIONS(SHIFT(319)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [326] = { - [sym__init_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), - [sym__declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), - [sym_pointer_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), - [sym_function_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), - [sym_array_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 1)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__type_specifier, 1), REDUCE(sym__expression, 1), SHIFT(17)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym__type_specifier, 1), REDUCE(sym__expression, 1)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), - [sym_identifier] = ACTIONS(REDUCE(sym__type_specifier, 1)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [327] = { - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_pointer_expression, 2)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(328)), - [anon_sym_STAR] = ACTIONS(SHIFT(329)), - [anon_sym_PLUS] = ACTIONS(SHIFT(330)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [328] = { - [sym__expression] = ACTIONS(SHIFT(333)), - [sym_cast_expression] = ACTIONS(SHIFT(92)), - [sym_math_expression] = ACTIONS(SHIFT(92)), - [sym_call_expression] = ACTIONS(SHIFT(92)), - [sym_pointer_expression] = ACTIONS(SHIFT(92)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(334)), - [anon_sym_STAR] = ACTIONS(SHIFT(95)), - [anon_sym_AMP] = ACTIONS(SHIFT(95)), - [sym_string] = ACTIONS(SHIFT(92)), - [sym_identifier] = ACTIONS(SHIFT(92)), - [sym_number] = ACTIONS(SHIFT(92)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [329] = { - [sym__expression] = ACTIONS(SHIFT(332)), - [sym_cast_expression] = ACTIONS(SHIFT(319)), - [sym_math_expression] = ACTIONS(SHIFT(319)), - [sym_call_expression] = ACTIONS(SHIFT(319)), - [sym_pointer_expression] = ACTIONS(SHIFT(319)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(324)), - [anon_sym_STAR] = ACTIONS(SHIFT(325)), - [anon_sym_AMP] = ACTIONS(SHIFT(325)), - [sym_string] = ACTIONS(SHIFT(319)), - [sym_identifier] = ACTIONS(SHIFT(319)), - [sym_number] = ACTIONS(SHIFT(319)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [330] = { - [sym__expression] = ACTIONS(SHIFT(331)), - [sym_cast_expression] = ACTIONS(SHIFT(319)), - [sym_math_expression] = ACTIONS(SHIFT(319)), - [sym_call_expression] = ACTIONS(SHIFT(319)), - [sym_pointer_expression] = ACTIONS(SHIFT(319)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(324)), - [anon_sym_STAR] = ACTIONS(SHIFT(325)), - [anon_sym_AMP] = ACTIONS(SHIFT(325)), - [sym_string] = ACTIONS(SHIFT(319)), - [sym_identifier] = ACTIONS(SHIFT(319)), - [sym_number] = ACTIONS(SHIFT(319)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [331] = { - [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(328)), - [anon_sym_STAR] = ACTIONS(SHIFT(329)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [332] = { - [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(328)), - [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [333] = { - [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(335)), - [anon_sym_COMMA] = ACTIONS(SHIFT(105)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(336)), - [anon_sym_STAR] = ACTIONS(SHIFT(98)), - [anon_sym_PLUS] = ACTIONS(SHIFT(99)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [334] = { - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [335] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(337)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [336] = { - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [337] = { - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [338] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(341)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [339] = { - [anon_sym_LPAREN] = ACTIONS(SHIFT(127)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(340)), - [anon_sym_STAR] = ACTIONS(SHIFT(128)), - [anon_sym_PLUS] = ACTIONS(SHIFT(129)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [340] = { - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), - [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [341] = { - [sym__expression] = ACTIONS(SHIFT(342)), - [sym_cast_expression] = ACTIONS(SHIFT(319)), - [sym_math_expression] = ACTIONS(SHIFT(319)), - [sym_call_expression] = ACTIONS(SHIFT(319)), - [sym_pointer_expression] = ACTIONS(SHIFT(319)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(324)), - [anon_sym_STAR] = ACTIONS(SHIFT(325)), - [anon_sym_AMP] = ACTIONS(SHIFT(325)), - [sym_string] = ACTIONS(SHIFT(319)), - [sym_identifier] = ACTIONS(SHIFT(319)), - [sym_number] = ACTIONS(SHIFT(319)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [342] = { - [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [343] = { - [sym_preproc_define] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_function_definition] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym__type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_struct_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_declaration] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_type_qualifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_macro_type] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [aux_sym_translation_unit_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [ts_builtin_sym_end] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_POUNDdefine] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_typedef] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_extern] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_static] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_auto] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_register] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_signed] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_unsigned] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_long] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_short] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_struct] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_const] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_restrict] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [anon_sym_volatile] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_identifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [344] = { - [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym__type_specifier] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_struct_specifier] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_declaration] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_type_qualifier] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym__expression] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym__statement] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_expression_statement] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_macro_type] = ACTIONS(REDUCE(sym_declaration, 2)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_declaration, 2)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_declaration, 2)), - [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_declaration, 2)), - [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_typedef] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_extern] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_static] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_auto] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_register] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_signed] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_unsigned] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_long] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_short] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_struct] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_const] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_restrict] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_volatile] = ACTIONS(REDUCE(sym_declaration, 2)), - [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_string] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_number] = ACTIONS(REDUCE(sym_declaration, 2)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [345] = { - [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym__type_specifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_struct_specifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_declaration] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_type_qualifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym__expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_cast_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_math_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_call_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_pointer_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym__statement] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_expression_statement] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_macro_type] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_typedef] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_extern] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_static] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_auto] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_register] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_signed] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_unsigned] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_long] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_short] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_struct] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_const] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_restrict] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_volatile] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [anon_sym_AMP] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_string] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_identifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_number] = ACTIONS(REDUCE(sym_expression_statement, 2)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [346] = { - [anon_sym_RBRACE] = ACTIONS(REDUCE(aux_sym_compound_statement_repeat1, 2)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [347] = { - [anon_sym_SEMI] = ACTIONS(SHIFT(344)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [348] = { - [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(366)), - [anon_sym_COMMA] = ACTIONS(SHIFT(367)), - [anon_sym_SEMI] = ACTIONS(SHIFT(368)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [349] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_EQ] = ACTIONS(SHIFT(248)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(354)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(355)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [350] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__declarator, 1)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__declarator, 1)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__declarator, 1)), - [anon_sym_EQ] = ACTIONS(REDUCE(sym__declarator, 1)), - [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__declarator, 1)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__declarator, 1)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [351] = { - [sym__declarator] = ACTIONS(SHIFT(364)), - [sym_pointer_declarator] = ACTIONS(SHIFT(185)), - [sym_function_declarator] = ACTIONS(SHIFT(185)), - [sym_array_declarator] = ACTIONS(SHIFT(185)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(186)), - [anon_sym_STAR] = ACTIONS(SHIFT(187)), - [sym_identifier] = ACTIONS(SHIFT(185)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [352] = { - [sym__declarator] = ACTIONS(SHIFT(353)), - [sym_pointer_declarator] = ACTIONS(SHIFT(350)), - [sym_function_declarator] = ACTIONS(SHIFT(350)), - [sym_array_declarator] = ACTIONS(SHIFT(350)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(351)), - [anon_sym_STAR] = ACTIONS(SHIFT(352)), - [sym_identifier] = ACTIONS(SHIFT(350)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [353] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), - [anon_sym_EQ] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(354)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(355)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [354] = { - [sym__expression] = ACTIONS(SHIFT(361)), - [sym_cast_expression] = ACTIONS(SHIFT(81)), - [sym_math_expression] = ACTIONS(SHIFT(81)), - [sym_call_expression] = ACTIONS(SHIFT(81)), - [sym_pointer_expression] = ACTIONS(SHIFT(81)), - [anon_sym_RBRACK] = ACTIONS(SHIFT(362)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), - [anon_sym_STAR] = ACTIONS(SHIFT(84)), - [anon_sym_AMP] = ACTIONS(SHIFT(84)), - [sym_string] = ACTIONS(SHIFT(81)), - [sym_identifier] = ACTIONS(SHIFT(81)), - [sym_number] = ACTIONS(SHIFT(81)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [355] = { - [sym_declaration_specifiers] = ACTIONS(SHIFT(58)), - [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), - [sym__type_specifier] = ACTIONS(SHIFT(59)), - [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), - [sym_struct_specifier] = ACTIONS(SHIFT(30)), - [sym_parameter_declaration] = ACTIONS(SHIFT(356)), - [sym_type_qualifier] = ACTIONS(SHIFT(4)), - [sym_macro_type] = ACTIONS(SHIFT(30)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), - [anon_sym_typedef] = ACTIONS(SHIFT(12)), - [anon_sym_extern] = ACTIONS(SHIFT(12)), - [anon_sym_static] = ACTIONS(SHIFT(12)), - [anon_sym_auto] = ACTIONS(SHIFT(12)), - [anon_sym_register] = ACTIONS(SHIFT(12)), - [anon_sym_signed] = ACTIONS(SHIFT(13)), - [anon_sym_unsigned] = ACTIONS(SHIFT(13)), - [anon_sym_long] = ACTIONS(SHIFT(13)), - [anon_sym_short] = ACTIONS(SHIFT(13)), - [anon_sym_struct] = ACTIONS(SHIFT(34)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(357)), - [anon_sym_const] = ACTIONS(SHIFT(15)), - [anon_sym_restrict] = ACTIONS(SHIFT(15)), - [anon_sym_volatile] = ACTIONS(SHIFT(15)), - [sym_identifier] = ACTIONS(SHIFT(36)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [356] = { - [aux_sym_function_declarator_repeat1] = ACTIONS(SHIFT(358)), - [anon_sym_COMMA] = ACTIONS(SHIFT(63)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(359)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [357] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_function_declarator, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_function_declarator, 3)), - [anon_sym_EQ] = ACTIONS(REDUCE(sym_function_declarator, 3)), - [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [358] = { - [anon_sym_RPAREN] = ACTIONS(SHIFT(360)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [359] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_function_declarator, 4)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_function_declarator, 4)), - [anon_sym_EQ] = ACTIONS(REDUCE(sym_function_declarator, 4)), - [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [360] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 5)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_function_declarator, 5)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_function_declarator, 5)), - [anon_sym_EQ] = ACTIONS(REDUCE(sym_function_declarator, 5)), - [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 5)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 5)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [361] = { - [anon_sym_RBRACK] = ACTIONS(SHIFT(363)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), - [anon_sym_STAR] = ACTIONS(SHIFT(87)), - [anon_sym_PLUS] = ACTIONS(SHIFT(88)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [362] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_array_declarator, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_array_declarator, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_array_declarator, 3)), - [anon_sym_EQ] = ACTIONS(REDUCE(sym_array_declarator, 3)), - [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_array_declarator, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_array_declarator, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [363] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_array_declarator, 4)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym_array_declarator, 4)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym_array_declarator, 4)), - [anon_sym_EQ] = ACTIONS(REDUCE(sym_array_declarator, 4)), - [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_array_declarator, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_array_declarator, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [364] = { - [anon_sym_LBRACK] = ACTIONS(SHIFT(189)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(190)), - [anon_sym_RPAREN] = ACTIONS(SHIFT(365)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [365] = { - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__declarator, 3)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__declarator, 3)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__declarator, 3)), - [anon_sym_EQ] = ACTIONS(REDUCE(sym__declarator, 3)), - [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__declarator, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__declarator, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [366] = { - [anon_sym_SEMI] = ACTIONS(SHIFT(371)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [367] = { - [sym__init_declarator] = ACTIONS(SHIFT(369)), - [sym__declarator] = ACTIONS(SHIFT(349)), - [sym_pointer_declarator] = ACTIONS(SHIFT(350)), - [sym_function_declarator] = ACTIONS(SHIFT(350)), - [sym_array_declarator] = ACTIONS(SHIFT(350)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(351)), - [anon_sym_STAR] = ACTIONS(SHIFT(352)), - [sym_identifier] = ACTIONS(SHIFT(350)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [368] = { - [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym__type_specifier] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_struct_specifier] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_declaration] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_type_qualifier] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym__expression] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym__statement] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_expression_statement] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_macro_type] = ACTIONS(REDUCE(sym_declaration, 3)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_declaration, 3)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_declaration, 3)), - [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_declaration, 3)), - [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_typedef] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_extern] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_static] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_auto] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_register] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_signed] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_unsigned] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_long] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_short] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_struct] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_const] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_restrict] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_volatile] = ACTIONS(REDUCE(sym_declaration, 3)), - [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_string] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_number] = ACTIONS(REDUCE(sym_declaration, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [369] = { - [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(370)), - [anon_sym_COMMA] = ACTIONS(SHIFT(367)), - [anon_sym_SEMI] = ACTIONS(REDUCE(aux_sym_declaration_repeat1, 2)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [370] = { - [anon_sym_SEMI] = ACTIONS(REDUCE(aux_sym_declaration_repeat1, 3)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [371] = { - [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym__type_specifier] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_struct_specifier] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_declaration] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_type_qualifier] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym__expression] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym__statement] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_expression_statement] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_macro_type] = ACTIONS(REDUCE(sym_declaration, 4)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_declaration, 4)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_declaration, 4)), - [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_declaration, 4)), - [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_typedef] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_extern] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_static] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_auto] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_register] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_signed] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_unsigned] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_long] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_short] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_struct] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_const] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_restrict] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_volatile] = ACTIONS(REDUCE(sym_declaration, 4)), - [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_string] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_number] = ACTIONS(REDUCE(sym_declaration, 4)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [372] = { - [sym__init_declarator] = ACTIONS(SHIFT(373)), - [sym__declarator] = ACTIONS(SHIFT(349)), - [sym_pointer_declarator] = ACTIONS(SHIFT(350)), - [sym_function_declarator] = ACTIONS(SHIFT(350)), - [sym_array_declarator] = ACTIONS(SHIFT(350)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(351)), - [anon_sym_STAR] = ACTIONS(SHIFT(352)), - [sym_identifier] = ACTIONS(SHIFT(350)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [373] = { - [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(374)), - [anon_sym_COMMA] = ACTIONS(SHIFT(367)), - [anon_sym_SEMI] = ACTIONS(SHIFT(371)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [374] = { - [anon_sym_SEMI] = ACTIONS(SHIFT(375)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [375] = { - [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym__type_specifier] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_struct_specifier] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_declaration] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_type_qualifier] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym__expression] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym__statement] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_expression_statement] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_macro_type] = ACTIONS(REDUCE(sym_declaration, 5)), - [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_declaration, 5)), - [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_declaration, 5)), - [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_declaration, 5)), - [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_typedef] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_extern] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_static] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_auto] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_register] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_signed] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_unsigned] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_long] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_short] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_struct] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_const] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_restrict] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_volatile] = ACTIONS(REDUCE(sym_declaration, 5)), - [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_string] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_number] = ACTIONS(REDUCE(sym_declaration, 5)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [376] = { - [anon_sym_SEMI] = ACTIONS(SHIFT(378)), - [sym_comment] = ACTIONS(SHIFT_EXTRA()), - }, - [377] = { [sym_preproc_define] = ACTIONS(REDUCE(sym_declaration, 3)), [sym_function_definition] = ACTIONS(REDUCE(sym_declaration, 3)), [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 3)), @@ -6994,7 +5868,2516 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 3)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, + [257] = { + [sym_initializer] = ACTIONS(SHIFT(258)), + [sym__expression] = ACTIONS(SHIFT(259)), + [sym_cast_expression] = ACTIONS(SHIFT(260)), + [sym_math_expression] = ACTIONS(SHIFT(260)), + [sym_call_expression] = ACTIONS(SHIFT(260)), + [sym_pointer_expression] = ACTIONS(SHIFT(260)), + [sym_assignment_expression] = ACTIONS(SHIFT(260)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(261)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(262)), + [anon_sym_STAR] = ACTIONS(SHIFT(263)), + [anon_sym_AMP] = ACTIONS(SHIFT(263)), + [sym_string] = ACTIONS(SHIFT(260)), + [sym_identifier] = ACTIONS(SHIFT(260)), + [sym_number] = ACTIONS(SHIFT(260)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [258] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__init_declarator, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym__init_declarator, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym__init_declarator, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [259] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_initializer, 1)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 1)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_initializer, 1)), + [anon_sym_EQ] = ACTIONS(SHIFT(326)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(265)), + [anon_sym_STAR] = ACTIONS(SHIFT(266)), + [anon_sym_PLUS] = ACTIONS(SHIFT(267)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [260] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [261] = { + [sym_initializer] = ACTIONS(SHIFT(280)), + [sym_initializer_list] = ACTIONS(SHIFT(281)), + [sym_designation] = ACTIONS(SHIFT(282)), + [sym__expression] = ACTIONS(SHIFT(283)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [aux_sym_designation_repeat1] = ACTIONS(SHIFT(285)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(286)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(287)), + [anon_sym_DOT] = ACTIONS(SHIFT(288)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [262] = { + [sym__type_specifier] = ACTIONS(SHIFT(112)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(113)), + [sym_struct_specifier] = ACTIONS(SHIFT(113)), + [sym_type_name] = ACTIONS(SHIFT(275)), + [sym_type_qualifier] = ACTIONS(SHIFT(115)), + [sym__expression] = ACTIONS(SHIFT(276)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [sym_macro_type] = ACTIONS(SHIFT(113)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(118)), + [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(119)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(120)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_const] = ACTIONS(SHIFT(123)), + [anon_sym_restrict] = ACTIONS(SHIFT(123)), + [anon_sym_volatile] = ACTIONS(SHIFT(123)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(124)), + [sym_number] = ACTIONS(SHIFT(117)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [263] = { + [sym__expression] = ACTIONS(SHIFT(264)), + [sym_cast_expression] = ACTIONS(SHIFT(260)), + [sym_math_expression] = ACTIONS(SHIFT(260)), + [sym_call_expression] = ACTIONS(SHIFT(260)), + [sym_pointer_expression] = ACTIONS(SHIFT(260)), + [sym_assignment_expression] = ACTIONS(SHIFT(260)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(262)), + [anon_sym_STAR] = ACTIONS(SHIFT(263)), + [anon_sym_AMP] = ACTIONS(SHIFT(263)), + [sym_string] = ACTIONS(SHIFT(260)), + [sym_identifier] = ACTIONS(SHIFT(260)), + [sym_number] = ACTIONS(SHIFT(260)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [264] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(265)), + [anon_sym_STAR] = ACTIONS(SHIFT(266)), + [anon_sym_PLUS] = ACTIONS(SHIFT(267)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [265] = { + [sym__expression] = ACTIONS(SHIFT(270)), + [sym_cast_expression] = ACTIONS(SHIFT(92)), + [sym_math_expression] = ACTIONS(SHIFT(92)), + [sym_call_expression] = ACTIONS(SHIFT(92)), + [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(271)), + [anon_sym_STAR] = ACTIONS(SHIFT(95)), + [anon_sym_AMP] = ACTIONS(SHIFT(95)), + [sym_string] = ACTIONS(SHIFT(92)), + [sym_identifier] = ACTIONS(SHIFT(92)), + [sym_number] = ACTIONS(SHIFT(92)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [266] = { + [sym__expression] = ACTIONS(SHIFT(269)), + [sym_cast_expression] = ACTIONS(SHIFT(260)), + [sym_math_expression] = ACTIONS(SHIFT(260)), + [sym_call_expression] = ACTIONS(SHIFT(260)), + [sym_pointer_expression] = ACTIONS(SHIFT(260)), + [sym_assignment_expression] = ACTIONS(SHIFT(260)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(262)), + [anon_sym_STAR] = ACTIONS(SHIFT(263)), + [anon_sym_AMP] = ACTIONS(SHIFT(263)), + [sym_string] = ACTIONS(SHIFT(260)), + [sym_identifier] = ACTIONS(SHIFT(260)), + [sym_number] = ACTIONS(SHIFT(260)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [267] = { + [sym__expression] = ACTIONS(SHIFT(268)), + [sym_cast_expression] = ACTIONS(SHIFT(260)), + [sym_math_expression] = ACTIONS(SHIFT(260)), + [sym_call_expression] = ACTIONS(SHIFT(260)), + [sym_pointer_expression] = ACTIONS(SHIFT(260)), + [sym_assignment_expression] = ACTIONS(SHIFT(260)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(262)), + [anon_sym_STAR] = ACTIONS(SHIFT(263)), + [anon_sym_AMP] = ACTIONS(SHIFT(263)), + [sym_string] = ACTIONS(SHIFT(260)), + [sym_identifier] = ACTIONS(SHIFT(260)), + [sym_number] = ACTIONS(SHIFT(260)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [268] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(265)), + [anon_sym_STAR] = ACTIONS(SHIFT(266)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [269] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(265)), + [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [270] = { + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(272)), + [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(273)), + [anon_sym_STAR] = ACTIONS(SHIFT(98)), + [anon_sym_PLUS] = ACTIONS(SHIFT(99)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [271] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [272] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(274)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [273] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [274] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [275] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(278)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [276] = { + [anon_sym_EQ] = ACTIONS(SHIFT(141)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(277)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(SHIFT(131)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [277] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [278] = { + [sym__expression] = ACTIONS(SHIFT(279)), + [sym_cast_expression] = ACTIONS(SHIFT(260)), + [sym_math_expression] = ACTIONS(SHIFT(260)), + [sym_call_expression] = ACTIONS(SHIFT(260)), + [sym_pointer_expression] = ACTIONS(SHIFT(260)), + [sym_assignment_expression] = ACTIONS(SHIFT(260)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(262)), + [anon_sym_STAR] = ACTIONS(SHIFT(263)), + [anon_sym_AMP] = ACTIONS(SHIFT(263)), + [sym_string] = ACTIONS(SHIFT(260)), + [sym_identifier] = ACTIONS(SHIFT(260)), + [sym_number] = ACTIONS(SHIFT(260)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [279] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [280] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer_list, 1)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer_list, 1)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [281] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(323)), + [anon_sym_COMMA] = ACTIONS(SHIFT(324)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [282] = { + [sym_initializer] = ACTIONS(SHIFT(322)), + [sym__expression] = ACTIONS(SHIFT(283)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(286)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [283] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer, 1)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 1)), + [anon_sym_EQ] = ACTIONS(SHIFT(320)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(292)), + [anon_sym_STAR] = ACTIONS(SHIFT(293)), + [anon_sym_PLUS] = ACTIONS(SHIFT(294)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [284] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [285] = { + [anon_sym_EQ] = ACTIONS(SHIFT(319)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [286] = { + [sym_initializer] = ACTIONS(SHIFT(280)), + [sym_initializer_list] = ACTIONS(SHIFT(312)), + [sym_designation] = ACTIONS(SHIFT(282)), + [sym__expression] = ACTIONS(SHIFT(283)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [aux_sym_designation_repeat1] = ACTIONS(SHIFT(285)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(286)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(287)), + [anon_sym_DOT] = ACTIONS(SHIFT(288)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [287] = { + [sym__expression] = ACTIONS(SHIFT(309)), + [sym_cast_expression] = ACTIONS(SHIFT(81)), + [sym_math_expression] = ACTIONS(SHIFT(81)), + [sym_call_expression] = ACTIONS(SHIFT(81)), + [sym_pointer_expression] = ACTIONS(SHIFT(81)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), + [anon_sym_STAR] = ACTIONS(SHIFT(84)), + [anon_sym_AMP] = ACTIONS(SHIFT(84)), + [sym_string] = ACTIONS(SHIFT(81)), + [sym_identifier] = ACTIONS(SHIFT(81)), + [sym_number] = ACTIONS(SHIFT(81)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [288] = { + [sym_identifier] = ACTIONS(SHIFT(307)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [289] = { + [sym__type_specifier] = ACTIONS(SHIFT(112)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(113)), + [sym_struct_specifier] = ACTIONS(SHIFT(113)), + [sym_type_name] = ACTIONS(SHIFT(302)), + [sym_type_qualifier] = ACTIONS(SHIFT(115)), + [sym__expression] = ACTIONS(SHIFT(303)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [sym_macro_type] = ACTIONS(SHIFT(113)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(118)), + [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(119)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(120)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_const] = ACTIONS(SHIFT(123)), + [anon_sym_restrict] = ACTIONS(SHIFT(123)), + [anon_sym_volatile] = ACTIONS(SHIFT(123)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(124)), + [sym_number] = ACTIONS(SHIFT(117)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [290] = { + [sym__expression] = ACTIONS(SHIFT(291)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [291] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(292)), + [anon_sym_STAR] = ACTIONS(SHIFT(293)), + [anon_sym_PLUS] = ACTIONS(SHIFT(294)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [292] = { + [sym__expression] = ACTIONS(SHIFT(297)), + [sym_cast_expression] = ACTIONS(SHIFT(92)), + [sym_math_expression] = ACTIONS(SHIFT(92)), + [sym_call_expression] = ACTIONS(SHIFT(92)), + [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(298)), + [anon_sym_STAR] = ACTIONS(SHIFT(95)), + [anon_sym_AMP] = ACTIONS(SHIFT(95)), + [sym_string] = ACTIONS(SHIFT(92)), + [sym_identifier] = ACTIONS(SHIFT(92)), + [sym_number] = ACTIONS(SHIFT(92)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [293] = { + [sym__expression] = ACTIONS(SHIFT(296)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [294] = { + [sym__expression] = ACTIONS(SHIFT(295)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [295] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(292)), + [anon_sym_STAR] = ACTIONS(SHIFT(293)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [296] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(292)), + [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [297] = { + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(299)), + [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(300)), + [anon_sym_STAR] = ACTIONS(SHIFT(98)), + [anon_sym_PLUS] = ACTIONS(SHIFT(99)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [298] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [299] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(301)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [300] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [301] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [302] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(305)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [303] = { + [anon_sym_EQ] = ACTIONS(SHIFT(141)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(304)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(SHIFT(131)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [304] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [305] = { + [sym__expression] = ACTIONS(SHIFT(306)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [306] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [307] = { + [aux_sym_designation_repeat1] = ACTIONS(SHIFT(308)), + [anon_sym_EQ] = ACTIONS(REDUCE(aux_sym_designation_repeat1, 2)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(287)), + [anon_sym_DOT] = ACTIONS(SHIFT(288)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [308] = { + [anon_sym_EQ] = ACTIONS(REDUCE(aux_sym_designation_repeat1, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [309] = { + [anon_sym_EQ] = ACTIONS(SHIFT(170)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(310)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), + [anon_sym_STAR] = ACTIONS(SHIFT(87)), + [anon_sym_PLUS] = ACTIONS(SHIFT(88)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [310] = { + [aux_sym_designation_repeat1] = ACTIONS(SHIFT(311)), + [anon_sym_EQ] = ACTIONS(REDUCE(aux_sym_designation_repeat1, 3)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(287)), + [anon_sym_DOT] = ACTIONS(SHIFT(288)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [311] = { + [anon_sym_EQ] = ACTIONS(REDUCE(aux_sym_designation_repeat1, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [312] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(313)), + [anon_sym_COMMA] = ACTIONS(SHIFT(314)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [313] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [314] = { + [sym_initializer] = ACTIONS(SHIFT(315)), + [sym_designation] = ACTIONS(SHIFT(316)), + [sym__expression] = ACTIONS(SHIFT(283)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [aux_sym_designation_repeat1] = ACTIONS(SHIFT(285)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(286)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(317)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(287)), + [anon_sym_DOT] = ACTIONS(SHIFT(288)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [315] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer_list, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer_list, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [316] = { + [sym_initializer] = ACTIONS(SHIFT(318)), + [sym__expression] = ACTIONS(SHIFT(283)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(286)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [317] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [318] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer_list, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer_list, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [319] = { + [sym_initializer] = ACTIONS(REDUCE(sym_designation, 2)), + [sym__expression] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_math_expression] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_call_expression] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_designation, 2)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_designation, 2)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_designation, 2)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_designation, 2)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_string] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_identifier] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_number] = ACTIONS(REDUCE(sym_designation, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [320] = { + [sym__expression] = ACTIONS(SHIFT(321)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [321] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_EQ] = ACTIONS(SHIFT(320)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(292)), + [anon_sym_STAR] = ACTIONS(SHIFT(293)), + [anon_sym_PLUS] = ACTIONS(SHIFT(294)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [322] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_initializer_list, 2)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer_list, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [323] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_initializer, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_initializer, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [324] = { + [sym_initializer] = ACTIONS(SHIFT(315)), + [sym_designation] = ACTIONS(SHIFT(316)), + [sym__expression] = ACTIONS(SHIFT(283)), + [sym_cast_expression] = ACTIONS(SHIFT(284)), + [sym_math_expression] = ACTIONS(SHIFT(284)), + [sym_call_expression] = ACTIONS(SHIFT(284)), + [sym_pointer_expression] = ACTIONS(SHIFT(284)), + [sym_assignment_expression] = ACTIONS(SHIFT(284)), + [aux_sym_designation_repeat1] = ACTIONS(SHIFT(285)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(286)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(325)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(287)), + [anon_sym_DOT] = ACTIONS(SHIFT(288)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(289)), + [anon_sym_STAR] = ACTIONS(SHIFT(290)), + [anon_sym_AMP] = ACTIONS(SHIFT(290)), + [sym_string] = ACTIONS(SHIFT(284)), + [sym_identifier] = ACTIONS(SHIFT(284)), + [sym_number] = ACTIONS(SHIFT(284)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [325] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_initializer, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_initializer, 4)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_initializer, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [326] = { + [sym__expression] = ACTIONS(SHIFT(327)), + [sym_cast_expression] = ACTIONS(SHIFT(260)), + [sym_math_expression] = ACTIONS(SHIFT(260)), + [sym_call_expression] = ACTIONS(SHIFT(260)), + [sym_pointer_expression] = ACTIONS(SHIFT(260)), + [sym_assignment_expression] = ACTIONS(SHIFT(260)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(262)), + [anon_sym_STAR] = ACTIONS(SHIFT(263)), + [anon_sym_AMP] = ACTIONS(SHIFT(263)), + [sym_string] = ACTIONS(SHIFT(260)), + [sym_identifier] = ACTIONS(SHIFT(260)), + [sym_number] = ACTIONS(SHIFT(260)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [327] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_EQ] = ACTIONS(SHIFT(326)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(265)), + [anon_sym_STAR] = ACTIONS(SHIFT(266)), + [anon_sym_PLUS] = ACTIONS(SHIFT(267)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [328] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(346)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(REDUCE(aux_sym_declaration_repeat1, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [329] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(346)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(REDUCE(aux_sym_declaration_repeat1, 2)), + [anon_sym_EQ] = ACTIONS(SHIFT(257)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(334)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(335)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [330] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__declarator, 1)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym__declarator, 1)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym__declarator, 1)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__declarator, 1)), + [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__declarator, 1)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__declarator, 1)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [331] = { + [sym__declarator] = ACTIONS(SHIFT(344)), + [sym_pointer_declarator] = ACTIONS(SHIFT(191)), + [sym_function_declarator] = ACTIONS(SHIFT(191)), + [sym_array_declarator] = ACTIONS(SHIFT(191)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(192)), + [anon_sym_STAR] = ACTIONS(SHIFT(193)), + [sym_identifier] = ACTIONS(SHIFT(191)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [332] = { + [sym__declarator] = ACTIONS(SHIFT(333)), + [sym_pointer_declarator] = ACTIONS(SHIFT(330)), + [sym_function_declarator] = ACTIONS(SHIFT(330)), + [sym_array_declarator] = ACTIONS(SHIFT(330)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(331)), + [anon_sym_STAR] = ACTIONS(SHIFT(332)), + [sym_identifier] = ACTIONS(SHIFT(330)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [333] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_pointer_declarator, 2)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(334)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(335)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [334] = { + [sym__expression] = ACTIONS(SHIFT(341)), + [sym_cast_expression] = ACTIONS(SHIFT(81)), + [sym_math_expression] = ACTIONS(SHIFT(81)), + [sym_call_expression] = ACTIONS(SHIFT(81)), + [sym_pointer_expression] = ACTIONS(SHIFT(81)), + [sym_assignment_expression] = ACTIONS(SHIFT(81)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(342)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(83)), + [anon_sym_STAR] = ACTIONS(SHIFT(84)), + [anon_sym_AMP] = ACTIONS(SHIFT(84)), + [sym_string] = ACTIONS(SHIFT(81)), + [sym_identifier] = ACTIONS(SHIFT(81)), + [sym_number] = ACTIONS(SHIFT(81)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [335] = { + [sym_declaration_specifiers] = ACTIONS(SHIFT(58)), + [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), + [sym__type_specifier] = ACTIONS(SHIFT(59)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(30)), + [sym_struct_specifier] = ACTIONS(SHIFT(30)), + [sym_parameter_declaration] = ACTIONS(SHIFT(336)), + [sym_type_qualifier] = ACTIONS(SHIFT(4)), + [sym_macro_type] = ACTIONS(SHIFT(30)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(32)), + [anon_sym_typedef] = ACTIONS(SHIFT(12)), + [anon_sym_extern] = ACTIONS(SHIFT(12)), + [anon_sym_static] = ACTIONS(SHIFT(12)), + [anon_sym_auto] = ACTIONS(SHIFT(12)), + [anon_sym_register] = ACTIONS(SHIFT(12)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(34)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(337)), + [anon_sym_const] = ACTIONS(SHIFT(15)), + [anon_sym_restrict] = ACTIONS(SHIFT(15)), + [anon_sym_volatile] = ACTIONS(SHIFT(15)), + [sym_identifier] = ACTIONS(SHIFT(36)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [336] = { + [aux_sym_function_declarator_repeat1] = ACTIONS(SHIFT(338)), + [anon_sym_COMMA] = ACTIONS(SHIFT(63)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(339)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [337] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_function_declarator, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_function_declarator, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_function_declarator, 3)), + [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [338] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(340)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [339] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_function_declarator, 4)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_function_declarator, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_function_declarator, 4)), + [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [340] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_function_declarator, 5)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_function_declarator, 5)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_function_declarator, 5)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_function_declarator, 5)), + [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_function_declarator, 5)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_function_declarator, 5)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [341] = { + [anon_sym_EQ] = ACTIONS(SHIFT(170)), + [anon_sym_RBRACK] = ACTIONS(SHIFT(343)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(86)), + [anon_sym_STAR] = ACTIONS(SHIFT(87)), + [anon_sym_PLUS] = ACTIONS(SHIFT(88)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [342] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_array_declarator, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_array_declarator, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_array_declarator, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_array_declarator, 3)), + [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_array_declarator, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_array_declarator, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [343] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym_array_declarator, 4)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym_array_declarator, 4)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_array_declarator, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_array_declarator, 4)), + [anon_sym_LBRACK] = ACTIONS(REDUCE(sym_array_declarator, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_array_declarator, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [344] = { + [anon_sym_LBRACK] = ACTIONS(SHIFT(195)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(196)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(345)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [345] = { + [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__declarator, 3)), + [anon_sym_COMMA] = ACTIONS(REDUCE(sym__declarator, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym__declarator, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__declarator, 3)), + [anon_sym_LBRACK] = ACTIONS(REDUCE(sym__declarator, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__declarator, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [346] = { + [anon_sym_SEMI] = ACTIONS(REDUCE(aux_sym_declaration_repeat1, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [347] = { + [sym__type_specifier] = ACTIONS(SHIFT(432)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), + [sym_struct_specifier] = ACTIONS(SHIFT(6)), + [sym_macro_type] = ACTIONS(SHIFT(6)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(14)), + [sym_identifier] = ACTIONS(SHIFT(16)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [348] = { + [sym__init_declarator] = ACTIONS(SHIFT(427)), + [sym__declarator] = ACTIONS(SHIFT(428)), + [sym_pointer_declarator] = ACTIONS(SHIFT(330)), + [sym_function_declarator] = ACTIONS(SHIFT(330)), + [sym_array_declarator] = ACTIONS(SHIFT(330)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(331)), + [anon_sym_STAR] = ACTIONS(SHIFT(332)), + [sym_identifier] = ACTIONS(SHIFT(330)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [349] = { + [sym_declaration_specifiers] = ACTIONS(SHIFT(347)), + [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), + [sym__type_specifier] = ACTIONS(SHIFT(348)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), + [sym_struct_specifier] = ACTIONS(SHIFT(6)), + [sym_declaration] = ACTIONS(SHIFT(349)), + [sym_type_qualifier] = ACTIONS(SHIFT(4)), + [sym_compound_statement] = ACTIONS(SHIFT(350)), + [sym__expression] = ACTIONS(SHIFT(351)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym__statement] = ACTIONS(SHIFT(349)), + [sym_for_statement] = ACTIONS(SHIFT(350)), + [sym_expression_statement] = ACTIONS(SHIFT(350)), + [sym_macro_type] = ACTIONS(SHIFT(6)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), + [aux_sym_compound_statement_repeat1] = ACTIONS(SHIFT(425)), + [ts_builtin_sym_error] = ACTIONS(SHIFT(426)), + [anon_sym_typedef] = ACTIONS(SHIFT(12)), + [anon_sym_extern] = ACTIONS(SHIFT(12)), + [anon_sym_static] = ACTIONS(SHIFT(12)), + [anon_sym_auto] = ACTIONS(SHIFT(12)), + [anon_sym_register] = ACTIONS(SHIFT(12)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(14)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(355)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(aux_sym_compound_statement_repeat1, 1)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_const] = ACTIONS(SHIFT(15)), + [anon_sym_restrict] = ACTIONS(SHIFT(15)), + [anon_sym_volatile] = ACTIONS(SHIFT(15)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [anon_sym_for] = ACTIONS(SHIFT(359)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(360)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [350] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym__statement, 1)), + [sym__type_specifier] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_declaration] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_compound_statement] = ACTIONS(REDUCE(sym__statement, 1)), + [sym__expression] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_cast_expression] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_math_expression] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_call_expression] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym__statement, 1)), + [sym__statement] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_for_statement] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_expression_statement] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_macro_type] = ACTIONS(REDUCE(sym__statement, 1)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym__statement, 1)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym__statement, 1)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym__statement, 1)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_extern] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_static] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_auto] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_register] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_signed] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_long] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_short] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_struct] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_const] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym__statement, 1)), + [anon_sym_for] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_string] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_identifier] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_number] = ACTIONS(REDUCE(sym__statement, 1)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [351] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(424)), + [anon_sym_EQ] = ACTIONS(SHIFT(369)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(370)), + [anon_sym_STAR] = ACTIONS(SHIFT(371)), + [anon_sym_PLUS] = ACTIONS(SHIFT(372)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [352] = { + [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [353] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(423)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [354] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(423)), + [anon_sym_SEMI] = ACTIONS(SHIFT(422)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [355] = { + [sym_declaration_specifiers] = ACTIONS(SHIFT(347)), + [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), + [sym__type_specifier] = ACTIONS(SHIFT(348)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), + [sym_struct_specifier] = ACTIONS(SHIFT(6)), + [sym_declaration] = ACTIONS(SHIFT(349)), + [sym_type_qualifier] = ACTIONS(SHIFT(4)), + [sym_compound_statement] = ACTIONS(SHIFT(350)), + [sym__expression] = ACTIONS(SHIFT(351)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym__statement] = ACTIONS(SHIFT(349)), + [sym_for_statement] = ACTIONS(SHIFT(350)), + [sym_expression_statement] = ACTIONS(SHIFT(350)), + [sym_macro_type] = ACTIONS(SHIFT(6)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), + [aux_sym_compound_statement_repeat1] = ACTIONS(SHIFT(418)), + [ts_builtin_sym_error] = ACTIONS(SHIFT(419)), + [anon_sym_typedef] = ACTIONS(SHIFT(12)), + [anon_sym_extern] = ACTIONS(SHIFT(12)), + [anon_sym_static] = ACTIONS(SHIFT(12)), + [anon_sym_auto] = ACTIONS(SHIFT(12)), + [anon_sym_register] = ACTIONS(SHIFT(12)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(14)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(355)), + [anon_sym_RBRACE] = ACTIONS(SHIFT(420)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_const] = ACTIONS(SHIFT(15)), + [anon_sym_restrict] = ACTIONS(SHIFT(15)), + [anon_sym_volatile] = ACTIONS(SHIFT(15)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [anon_sym_for] = ACTIONS(SHIFT(359)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(360)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [356] = { + [sym_preproc_define] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_function_definition] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_declaration] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_macro_type] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [aux_sym_translation_unit_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [ts_builtin_sym_end] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_POUNDdefine] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_static] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_register] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_long] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_short] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_const] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_identifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [357] = { + [sym__type_specifier] = ACTIONS(SHIFT(112)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(113)), + [sym_struct_specifier] = ACTIONS(SHIFT(113)), + [sym_type_name] = ACTIONS(SHIFT(413)), + [sym_type_qualifier] = ACTIONS(SHIFT(115)), + [sym__expression] = ACTIONS(SHIFT(414)), + [sym_cast_expression] = ACTIONS(SHIFT(117)), + [sym_math_expression] = ACTIONS(SHIFT(117)), + [sym_call_expression] = ACTIONS(SHIFT(117)), + [sym_pointer_expression] = ACTIONS(SHIFT(117)), + [sym_assignment_expression] = ACTIONS(SHIFT(117)), + [sym_macro_type] = ACTIONS(SHIFT(113)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(118)), + [aux_sym_type_name_repeat1] = ACTIONS(SHIFT(119)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(120)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(121)), + [anon_sym_STAR] = ACTIONS(SHIFT(122)), + [anon_sym_const] = ACTIONS(SHIFT(123)), + [anon_sym_restrict] = ACTIONS(SHIFT(123)), + [anon_sym_volatile] = ACTIONS(SHIFT(123)), + [anon_sym_AMP] = ACTIONS(SHIFT(122)), + [sym_string] = ACTIONS(SHIFT(117)), + [sym_identifier] = ACTIONS(SHIFT(124)), + [sym_number] = ACTIONS(SHIFT(117)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [358] = { + [sym__expression] = ACTIONS(SHIFT(412)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [359] = { + [anon_sym_LPAREN] = ACTIONS(SHIFT(361)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [360] = { + [sym__init_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), + [sym__declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), + [sym_pointer_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), + [sym_function_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), + [sym_array_declarator] = ACTIONS(REDUCE(sym__type_specifier, 1)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 1)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__type_specifier, 1), REDUCE(sym__expression, 1), SHIFT(17)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym__type_specifier, 1), REDUCE(sym__expression, 1)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 1)), + [sym_identifier] = ACTIONS(REDUCE(sym__type_specifier, 1)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [361] = { + [sym_declaration_specifiers] = ACTIONS(SHIFT(362)), + [sym_storage_class_specifier] = ACTIONS(SHIFT(4)), + [sym__type_specifier] = ACTIONS(SHIFT(363)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), + [sym_struct_specifier] = ACTIONS(SHIFT(6)), + [sym_declaration] = ACTIONS(SHIFT(364)), + [sym_type_qualifier] = ACTIONS(SHIFT(4)), + [sym__expression] = ACTIONS(SHIFT(365)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym_macro_type] = ACTIONS(SHIFT(6)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(SHIFT(8)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), + [ts_builtin_sym_error] = ACTIONS(SHIFT(366)), + [anon_sym_typedef] = ACTIONS(SHIFT(12)), + [anon_sym_extern] = ACTIONS(SHIFT(12)), + [anon_sym_static] = ACTIONS(SHIFT(12)), + [anon_sym_auto] = ACTIONS(SHIFT(12)), + [anon_sym_register] = ACTIONS(SHIFT(12)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(14)), + [anon_sym_SEMI] = ACTIONS(SHIFT(364)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_const] = ACTIONS(SHIFT(15)), + [anon_sym_restrict] = ACTIONS(SHIFT(15)), + [anon_sym_volatile] = ACTIONS(SHIFT(15)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(360)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [362] = { + [sym__type_specifier] = ACTIONS(SHIFT(407)), + [sym_numeric_type_specifier] = ACTIONS(SHIFT(6)), + [sym_struct_specifier] = ACTIONS(SHIFT(6)), + [sym_macro_type] = ACTIONS(SHIFT(6)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(SHIFT(9)), + [anon_sym_signed] = ACTIONS(SHIFT(13)), + [anon_sym_unsigned] = ACTIONS(SHIFT(13)), + [anon_sym_long] = ACTIONS(SHIFT(13)), + [anon_sym_short] = ACTIONS(SHIFT(13)), + [anon_sym_struct] = ACTIONS(SHIFT(14)), + [sym_identifier] = ACTIONS(SHIFT(16)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [363] = { + [sym__init_declarator] = ACTIONS(SHIFT(402)), + [sym__declarator] = ACTIONS(SHIFT(403)), + [sym_pointer_declarator] = ACTIONS(SHIFT(330)), + [sym_function_declarator] = ACTIONS(SHIFT(330)), + [sym_array_declarator] = ACTIONS(SHIFT(330)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(331)), + [anon_sym_STAR] = ACTIONS(SHIFT(332)), + [sym_identifier] = ACTIONS(SHIFT(330)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [364] = { + [sym__expression] = ACTIONS(SHIFT(396)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [anon_sym_SEMI] = ACTIONS(SHIFT(397)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [365] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(368)), + [anon_sym_EQ] = ACTIONS(SHIFT(369)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(370)), + [anon_sym_STAR] = ACTIONS(SHIFT(371)), + [anon_sym_PLUS] = ACTIONS(SHIFT(372)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [366] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(367)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [367] = { + [sym__expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_string] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_number] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [368] = { + [sym__expression] = ACTIONS(SHIFT(381)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [anon_sym_SEMI] = ACTIONS(SHIFT(382)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [369] = { + [sym__expression] = ACTIONS(SHIFT(380)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [370] = { + [sym__expression] = ACTIONS(SHIFT(375)), + [sym_cast_expression] = ACTIONS(SHIFT(92)), + [sym_math_expression] = ACTIONS(SHIFT(92)), + [sym_call_expression] = ACTIONS(SHIFT(92)), + [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(376)), + [anon_sym_STAR] = ACTIONS(SHIFT(95)), + [anon_sym_AMP] = ACTIONS(SHIFT(95)), + [sym_string] = ACTIONS(SHIFT(92)), + [sym_identifier] = ACTIONS(SHIFT(92)), + [sym_number] = ACTIONS(SHIFT(92)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [371] = { + [sym__expression] = ACTIONS(SHIFT(374)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [372] = { + [sym__expression] = ACTIONS(SHIFT(373)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [373] = { + [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(370)), + [anon_sym_STAR] = ACTIONS(SHIFT(371)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [374] = { + [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(370)), + [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_math_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [375] = { + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(377)), + [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(378)), + [anon_sym_STAR] = ACTIONS(SHIFT(98)), + [anon_sym_PLUS] = ACTIONS(SHIFT(99)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [376] = { + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [377] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(379)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, [378] = { + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 4)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [379] = { + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_call_expression, 5)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym_call_expression, 5)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [380] = { + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_assignment_expression, 3)), + [anon_sym_EQ] = ACTIONS(SHIFT(369)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(370)), + [anon_sym_STAR] = ACTIONS(SHIFT(371)), + [anon_sym_PLUS] = ACTIONS(SHIFT(372)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [381] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(391)), + [anon_sym_EQ] = ACTIONS(SHIFT(369)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(370)), + [anon_sym_STAR] = ACTIONS(SHIFT(371)), + [anon_sym_PLUS] = ACTIONS(SHIFT(372)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [382] = { + [sym__expression] = ACTIONS(SHIFT(383)), + [sym_cast_expression] = ACTIONS(SHIFT(92)), + [sym_math_expression] = ACTIONS(SHIFT(92)), + [sym_call_expression] = ACTIONS(SHIFT(92)), + [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(384)), + [anon_sym_STAR] = ACTIONS(SHIFT(95)), + [anon_sym_AMP] = ACTIONS(SHIFT(95)), + [sym_string] = ACTIONS(SHIFT(92)), + [sym_identifier] = ACTIONS(SHIFT(92)), + [sym_number] = ACTIONS(SHIFT(92)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [383] = { + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(386)), + [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(387)), + [anon_sym_STAR] = ACTIONS(SHIFT(98)), + [anon_sym_PLUS] = ACTIONS(SHIFT(99)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [384] = { + [sym_compound_statement] = ACTIONS(SHIFT(350)), + [sym__expression] = ACTIONS(SHIFT(351)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym__statement] = ACTIONS(SHIFT(385)), + [sym_for_statement] = ACTIONS(SHIFT(350)), + [sym_expression_statement] = ACTIONS(SHIFT(350)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(355)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [anon_sym_for] = ACTIONS(SHIFT(359)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [385] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_declaration] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym__expression] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_math_expression] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_call_expression] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym__statement] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_for_statement] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_macro_type] = ACTIONS(REDUCE(sym_for_statement, 7)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_for_statement, 7)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_for_statement, 7)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_for_statement, 7)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_static] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_register] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_long] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_short] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_const] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_for_statement, 7)), + [anon_sym_for] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_string] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_identifier] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_number] = ACTIONS(REDUCE(sym_for_statement, 7)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [386] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(389)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [387] = { + [sym_compound_statement] = ACTIONS(SHIFT(350)), + [sym__expression] = ACTIONS(SHIFT(351)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym__statement] = ACTIONS(SHIFT(388)), + [sym_for_statement] = ACTIONS(SHIFT(350)), + [sym_expression_statement] = ACTIONS(SHIFT(350)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(355)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [anon_sym_for] = ACTIONS(SHIFT(359)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [388] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_declaration] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym__expression] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_math_expression] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_call_expression] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym__statement] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_for_statement] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_macro_type] = ACTIONS(REDUCE(sym_for_statement, 8)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_for_statement, 8)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_for_statement, 8)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_for_statement, 8)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_static] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_register] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_long] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_short] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_const] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_for_statement, 8)), + [anon_sym_for] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_string] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_identifier] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_number] = ACTIONS(REDUCE(sym_for_statement, 8)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [389] = { + [sym_compound_statement] = ACTIONS(SHIFT(350)), + [sym__expression] = ACTIONS(SHIFT(351)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym__statement] = ACTIONS(SHIFT(390)), + [sym_for_statement] = ACTIONS(SHIFT(350)), + [sym_expression_statement] = ACTIONS(SHIFT(350)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(355)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [anon_sym_for] = ACTIONS(SHIFT(359)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [390] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_declaration] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym__expression] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_math_expression] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_call_expression] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym__statement] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_for_statement] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_macro_type] = ACTIONS(REDUCE(sym_for_statement, 9)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_for_statement, 9)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_for_statement, 9)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_for_statement, 9)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_static] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_register] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_long] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_short] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_const] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_for_statement, 9)), + [anon_sym_for] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_string] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_identifier] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_number] = ACTIONS(REDUCE(sym_for_statement, 9)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [391] = { + [sym__expression] = ACTIONS(SHIFT(392)), + [sym_cast_expression] = ACTIONS(SHIFT(92)), + [sym_math_expression] = ACTIONS(SHIFT(92)), + [sym_call_expression] = ACTIONS(SHIFT(92)), + [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(387)), + [anon_sym_STAR] = ACTIONS(SHIFT(95)), + [anon_sym_AMP] = ACTIONS(SHIFT(95)), + [sym_string] = ACTIONS(SHIFT(92)), + [sym_identifier] = ACTIONS(SHIFT(92)), + [sym_number] = ACTIONS(SHIFT(92)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [392] = { + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(393)), + [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(389)), + [anon_sym_STAR] = ACTIONS(SHIFT(98)), + [anon_sym_PLUS] = ACTIONS(SHIFT(99)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [393] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(394)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [394] = { + [sym_compound_statement] = ACTIONS(SHIFT(350)), + [sym__expression] = ACTIONS(SHIFT(351)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym__statement] = ACTIONS(SHIFT(395)), + [sym_for_statement] = ACTIONS(SHIFT(350)), + [sym_expression_statement] = ACTIONS(SHIFT(350)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(355)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [anon_sym_for] = ACTIONS(SHIFT(359)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [395] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_declaration] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym__expression] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_math_expression] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_call_expression] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym__statement] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_for_statement] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_macro_type] = ACTIONS(REDUCE(sym_for_statement, 10)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_for_statement, 10)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_for_statement, 10)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_for_statement, 10)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_static] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_register] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_long] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_short] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_const] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_for_statement, 10)), + [anon_sym_for] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_string] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_identifier] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_number] = ACTIONS(REDUCE(sym_for_statement, 10)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [396] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(382)), + [anon_sym_EQ] = ACTIONS(SHIFT(369)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(370)), + [anon_sym_STAR] = ACTIONS(SHIFT(371)), + [anon_sym_PLUS] = ACTIONS(SHIFT(372)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [397] = { + [sym__expression] = ACTIONS(SHIFT(398)), + [sym_cast_expression] = ACTIONS(SHIFT(92)), + [sym_math_expression] = ACTIONS(SHIFT(92)), + [sym_call_expression] = ACTIONS(SHIFT(92)), + [sym_pointer_expression] = ACTIONS(SHIFT(92)), + [sym_assignment_expression] = ACTIONS(SHIFT(92)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(93)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(399)), + [anon_sym_STAR] = ACTIONS(SHIFT(95)), + [anon_sym_AMP] = ACTIONS(SHIFT(95)), + [sym_string] = ACTIONS(SHIFT(92)), + [sym_identifier] = ACTIONS(SHIFT(92)), + [sym_number] = ACTIONS(SHIFT(92)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [398] = { + [aux_sym_call_expression_repeat1] = ACTIONS(SHIFT(401)), + [anon_sym_COMMA] = ACTIONS(SHIFT(105)), + [anon_sym_EQ] = ACTIONS(SHIFT(106)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(97)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(384)), + [anon_sym_STAR] = ACTIONS(SHIFT(98)), + [anon_sym_PLUS] = ACTIONS(SHIFT(99)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [399] = { + [sym_compound_statement] = ACTIONS(SHIFT(350)), + [sym__expression] = ACTIONS(SHIFT(351)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [sym__statement] = ACTIONS(SHIFT(400)), + [sym_for_statement] = ACTIONS(SHIFT(350)), + [sym_expression_statement] = ACTIONS(SHIFT(350)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(355)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [anon_sym_for] = ACTIONS(SHIFT(359)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [400] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_declaration] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym__expression] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_math_expression] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_call_expression] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym__statement] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_for_statement] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_macro_type] = ACTIONS(REDUCE(sym_for_statement, 6)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_for_statement, 6)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_for_statement, 6)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_for_statement, 6)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_static] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_register] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_long] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_short] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_const] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_for_statement, 6)), + [anon_sym_for] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_string] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_identifier] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_number] = ACTIONS(REDUCE(sym_for_statement, 6)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [401] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(387)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [402] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(404)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(405)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [403] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(404)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(405)), + [anon_sym_EQ] = ACTIONS(SHIFT(257)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(334)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(335)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [404] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(406)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [405] = { + [sym__expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_string] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_number] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [406] = { + [sym__expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_string] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_number] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [407] = { + [sym__init_declarator] = ACTIONS(SHIFT(408)), + [sym__declarator] = ACTIONS(SHIFT(409)), + [sym_pointer_declarator] = ACTIONS(SHIFT(330)), + [sym_function_declarator] = ACTIONS(SHIFT(330)), + [sym_array_declarator] = ACTIONS(SHIFT(330)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(331)), + [anon_sym_STAR] = ACTIONS(SHIFT(332)), + [sym_identifier] = ACTIONS(SHIFT(330)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [408] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(410)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(406)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [409] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(410)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(406)), + [anon_sym_EQ] = ACTIONS(SHIFT(257)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(334)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(335)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [410] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(411)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [411] = { + [sym__expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_SEMI] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_string] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_number] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [412] = { + [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_pointer_expression, 2)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(370)), + [anon_sym_STAR] = ACTIONS(SHIFT(371)), + [anon_sym_PLUS] = ACTIONS(SHIFT(372)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [413] = { + [anon_sym_RPAREN] = ACTIONS(SHIFT(416)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [414] = { + [anon_sym_EQ] = ACTIONS(SHIFT(141)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(129)), + [anon_sym_RPAREN] = ACTIONS(SHIFT(415)), + [anon_sym_STAR] = ACTIONS(SHIFT(130)), + [anon_sym_PLUS] = ACTIONS(SHIFT(131)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [415] = { + [anon_sym_SEMI] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_EQ] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym__expression, 3)), + [anon_sym_PLUS] = ACTIONS(REDUCE(sym__expression, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [416] = { + [sym__expression] = ACTIONS(SHIFT(417)), + [sym_cast_expression] = ACTIONS(SHIFT(352)), + [sym_math_expression] = ACTIONS(SHIFT(352)), + [sym_call_expression] = ACTIONS(SHIFT(352)), + [sym_pointer_expression] = ACTIONS(SHIFT(352)), + [sym_assignment_expression] = ACTIONS(SHIFT(352)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(357)), + [anon_sym_STAR] = ACTIONS(SHIFT(358)), + [anon_sym_AMP] = ACTIONS(SHIFT(358)), + [sym_string] = ACTIONS(SHIFT(352)), + [sym_identifier] = ACTIONS(SHIFT(352)), + [sym_number] = ACTIONS(SHIFT(352)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [417] = { + [anon_sym_SEMI] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_EQ] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_STAR] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [anon_sym_PLUS] = ACTIONS(REDUCE_FRAGILE(sym_cast_expression, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [418] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(421)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [419] = { + [anon_sym_RBRACE] = ACTIONS(SHIFT(421)), + [anon_sym_SEMI] = ACTIONS(SHIFT(422)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [420] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_declaration] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym__expression] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_math_expression] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_call_expression] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym__statement] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_for_statement] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_macro_type] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_static] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_register] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_long] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_short] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_const] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [anon_sym_for] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_string] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_identifier] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_number] = ACTIONS(REDUCE(sym_compound_statement, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [421] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_declaration] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym__expression] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_math_expression] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_call_expression] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym__statement] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_for_statement] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_macro_type] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_static] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_register] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_long] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_short] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_const] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_for] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_string] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_identifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_number] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [422] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_declaration] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym__expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym__statement] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_for_statement] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_macro_type] = ACTIONS(REDUCE(sym_declaration, 2)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_declaration, 2)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_declaration, 2)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_declaration, 2)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_static] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_register] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_long] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_short] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_const] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 2)), + [anon_sym_for] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_string] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_number] = ACTIONS(REDUCE(sym_declaration, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [423] = { + [sym_preproc_define] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_function_definition] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_declaration] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_macro_type] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [aux_sym_translation_unit_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [ts_builtin_sym_end] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_POUNDdefine] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_static] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_register] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_long] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_short] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_const] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_identifier] = ACTIONS(REDUCE(sym_compound_statement, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [424] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_declaration] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym__expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_math_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_call_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym__statement] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_for_statement] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_macro_type] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_static] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_register] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_long] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_short] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_const] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [anon_sym_for] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_string] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_identifier] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_number] = ACTIONS(REDUCE(sym_expression_statement, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [425] = { + [anon_sym_RBRACE] = ACTIONS(REDUCE(aux_sym_compound_statement_repeat1, 2)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [426] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(422)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [427] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(429)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(430)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [428] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(429)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(430)), + [anon_sym_EQ] = ACTIONS(SHIFT(257)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(334)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(335)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [429] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(431)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [430] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_declaration] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym__expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym__statement] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_for_statement] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_macro_type] = ACTIONS(REDUCE(sym_declaration, 3)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_declaration, 3)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_declaration, 3)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_declaration, 3)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_static] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_register] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_long] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_short] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_const] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 3)), + [anon_sym_for] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_string] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_number] = ACTIONS(REDUCE(sym_declaration, 3)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [431] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_declaration] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym__expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym__statement] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_for_statement] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_macro_type] = ACTIONS(REDUCE(sym_declaration, 4)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_declaration, 4)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_declaration, 4)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_declaration, 4)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_static] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_register] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_long] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_short] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_const] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 4)), + [anon_sym_for] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_string] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_number] = ACTIONS(REDUCE(sym_declaration, 4)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [432] = { + [sym__init_declarator] = ACTIONS(SHIFT(433)), + [sym__declarator] = ACTIONS(SHIFT(434)), + [sym_pointer_declarator] = ACTIONS(SHIFT(330)), + [sym_function_declarator] = ACTIONS(SHIFT(330)), + [sym_array_declarator] = ACTIONS(SHIFT(330)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(331)), + [anon_sym_STAR] = ACTIONS(SHIFT(332)), + [sym_identifier] = ACTIONS(SHIFT(330)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [433] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(435)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(431)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [434] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(435)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(431)), + [anon_sym_EQ] = ACTIONS(SHIFT(257)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(334)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(335)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [435] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(436)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [436] = { + [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_storage_class_specifier] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym__type_specifier] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_numeric_type_specifier] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_struct_specifier] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_declaration] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_type_qualifier] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_compound_statement] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym__expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_cast_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_math_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_call_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_pointer_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_assignment_expression] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym__statement] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_for_statement] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_expression_statement] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_macro_type] = ACTIONS(REDUCE(sym_declaration, 5)), + [aux_sym_declaration_specifiers_repeat1] = ACTIONS(REDUCE(sym_declaration, 5)), + [aux_sym_numeric_type_specifier_repeat1] = ACTIONS(REDUCE(sym_declaration, 5)), + [aux_sym_compound_statement_repeat1] = ACTIONS(REDUCE(sym_declaration, 5)), + [ts_builtin_sym_error] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_typedef] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_extern] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_static] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_auto] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_register] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_signed] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_unsigned] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_long] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_short] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_struct] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_LBRACE] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_RBRACE] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_LPAREN] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_STAR] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_const] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_restrict] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_volatile] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_AMP] = ACTIONS(REDUCE(sym_declaration, 5)), + [anon_sym_for] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_string] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_number] = ACTIONS(REDUCE(sym_declaration, 5)), + [sym_comment] = ACTIONS(SHIFT_EXTRA()), + }, + [437] = { [sym_preproc_define] = ACTIONS(REDUCE(sym_declaration, 4)), [sym_function_definition] = ACTIONS(REDUCE(sym_declaration, 4)), [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 4)), @@ -7027,7 +8410,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [379] = { + [438] = { [sym__type_specifier] = ACTIONS(REDUCE(aux_sym_declaration_specifiers_repeat1, 2)), [sym_numeric_type_specifier] = ACTIONS(REDUCE(aux_sym_declaration_specifiers_repeat1, 2)), [sym_struct_specifier] = ACTIONS(REDUCE(aux_sym_declaration_specifiers_repeat1, 2)), @@ -7041,35 +8424,35 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(aux_sym_declaration_specifiers_repeat1, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [380] = { - [sym__init_declarator] = ACTIONS(SHIFT(381)), - [sym__declarator] = ACTIONS(SHIFT(382)), - [sym_pointer_declarator] = ACTIONS(SHIFT(230)), - [sym_function_declarator] = ACTIONS(SHIFT(230)), - [sym_array_declarator] = ACTIONS(SHIFT(230)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(231)), - [anon_sym_STAR] = ACTIONS(SHIFT(232)), - [sym_identifier] = ACTIONS(SHIFT(230)), + [439] = { + [sym__init_declarator] = ACTIONS(SHIFT(440)), + [sym__declarator] = ACTIONS(SHIFT(441)), + [sym_pointer_declarator] = ACTIONS(SHIFT(236)), + [sym_function_declarator] = ACTIONS(SHIFT(236)), + [sym_array_declarator] = ACTIONS(SHIFT(236)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(237)), + [anon_sym_STAR] = ACTIONS(SHIFT(238)), + [sym_identifier] = ACTIONS(SHIFT(236)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [381] = { - [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(384)), - [anon_sym_COMMA] = ACTIONS(SHIFT(367)), - [anon_sym_SEMI] = ACTIONS(SHIFT(378)), + [440] = { + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(443)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(437)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [382] = { - [sym_compound_statement] = ACTIONS(SHIFT(383)), - [aux_sym_declaration_repeat1] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_LBRACE] = ACTIONS(SHIFT(247)), - [anon_sym_COMMA] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_SEMI] = ACTIONS(REDUCE(sym__init_declarator, 1)), - [anon_sym_EQ] = ACTIONS(SHIFT(248)), - [anon_sym_LBRACK] = ACTIONS(SHIFT(234)), - [anon_sym_LPAREN] = ACTIONS(SHIFT(235)), + [441] = { + [sym_compound_statement] = ACTIONS(SHIFT(442)), + [aux_sym_declaration_repeat1] = ACTIONS(SHIFT(443)), + [anon_sym_LBRACE] = ACTIONS(SHIFT(254)), + [anon_sym_COMMA] = ACTIONS(SHIFT(255)), + [anon_sym_SEMI] = ACTIONS(SHIFT(437)), + [anon_sym_EQ] = ACTIONS(SHIFT(257)), + [anon_sym_LBRACK] = ACTIONS(SHIFT(240)), + [anon_sym_LPAREN] = ACTIONS(SHIFT(241)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [383] = { + [442] = { [sym_preproc_define] = ACTIONS(REDUCE(sym_function_definition, 4)), [sym_function_definition] = ACTIONS(REDUCE(sym_function_definition, 4)), [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_function_definition, 4)), @@ -7102,11 +8485,11 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_function_definition, 4)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [384] = { - [anon_sym_SEMI] = ACTIONS(SHIFT(385)), + [443] = { + [anon_sym_SEMI] = ACTIONS(SHIFT(444)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [385] = { + [444] = { [sym_preproc_define] = ACTIONS(REDUCE(sym_declaration, 5)), [sym_function_definition] = ACTIONS(REDUCE(sym_declaration, 5)), [sym_declaration_specifiers] = ACTIONS(REDUCE(sym_declaration, 5)), @@ -7139,7 +8522,7 @@ static const TSParseAction *ts_parse_actions[STATE_COUNT][SYMBOL_COUNT] = { [sym_identifier] = ACTIONS(REDUCE(sym_declaration, 5)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), }, - [386] = { + [445] = { [ts_builtin_sym_end] = ACTIONS(REDUCE(aux_sym_translation_unit_repeat1, 2)), [sym_comment] = ACTIONS(SHIFT_EXTRA()), },