Record parse conflicts when compiling grammars

Need to remove duplicate conflicts
This commit is contained in:
Max Brunsfeld 2014-04-08 18:47:42 -07:00
parent 3982b73ed6
commit f71d7bae16
14 changed files with 246 additions and 167 deletions

View file

@ -45,8 +45,8 @@ SYMBOL_NAMES = {
[ts_aux_sym_token5] = "'*'",
[ts_aux_sym_token6] = "'/'",
[ts_aux_sym_token7] = "'^'",
[ts_builtin_sym_end] = "end",
[ts_builtin_sym_error] = "error",
[ts_builtin_sym_end] = "EOF",
[ts_builtin_sym_error] = "ERROR",
};
HIDDEN_SYMBOLS = {
@ -361,6 +361,7 @@ LEX_FN() {
ADVANCE(11);
LEX_ERROR();
case ts_lex_state_error:
START_TOKEN();
if (lookahead == '\0')
ADVANCE(1);
if (('\t' <= lookahead && lookahead <= '\n') ||
@ -568,7 +569,7 @@ PARSE_TABLE = {
[4] = {
[ts_aux_sym_token5] = SHIFT(5),
[ts_aux_sym_token6] = SHIFT(85),
[ts_builtin_sym_end] = REDUCE(ts_sym_quotient, 1),
[ts_builtin_sym_end] = REDUCE(ts_sym_product, 1),
},
[5] = {
[ts_sym__operand2] = SHIFT(6),
@ -636,7 +637,7 @@ PARSE_TABLE = {
[ts_aux_sym_token2] = REDUCE(ts_sym_sum, 3),
},
[15] = {
[ts_aux_sym_token2] = REDUCE(ts_sym_quotient, 1),
[ts_aux_sym_token2] = REDUCE(ts_sym_product, 1),
[ts_aux_sym_token5] = SHIFT(16),
[ts_aux_sym_token6] = SHIFT(61),
},
@ -686,9 +687,9 @@ PARSE_TABLE = {
[ts_builtin_sym_error] = SHIFT(54),
},
[23] = {
[ts_aux_sym_token2] = REDUCE(ts_sym_quotient, 1),
[ts_aux_sym_token3] = REDUCE(ts_sym_quotient, 1),
[ts_aux_sym_token4] = REDUCE(ts_sym_quotient, 1),
[ts_aux_sym_token2] = REDUCE(ts_sym_product, 1),
[ts_aux_sym_token3] = REDUCE(ts_sym_product, 1),
[ts_aux_sym_token4] = REDUCE(ts_sym_product, 1),
[ts_aux_sym_token5] = SHIFT(24),
[ts_aux_sym_token6] = SHIFT(52),
},

View file

@ -107,8 +107,8 @@ SYMBOL_NAMES = {
[ts_aux_sym_token7] = "'['",
[ts_aux_sym_token8] = "']'",
[ts_aux_sym_token9] = "','",
[ts_builtin_sym_end] = "end",
[ts_builtin_sym_error] = "error",
[ts_builtin_sym_end] = "EOF",
[ts_builtin_sym_error] = "ERROR",
};
HIDDEN_SYMBOLS = {
@ -1047,6 +1047,7 @@ LEX_FN() {
ADVANCE(20);
ACCEPT_TOKEN(ts_sym__var);
case ts_lex_state_error:
START_TOKEN();
if (lookahead == '\0')
ADVANCE(1);
if (('\t' <= lookahead && lookahead <= '\n') ||

View file

@ -113,8 +113,8 @@ SYMBOL_NAMES = {
[ts_aux_sym_token7] = "','",
[ts_aux_sym_token8] = "'.'",
[ts_aux_sym_token9] = "'['",
[ts_builtin_sym_end] = "end",
[ts_builtin_sym_error] = "error",
[ts_builtin_sym_end] = "EOF",
[ts_builtin_sym_error] = "ERROR",
};
HIDDEN_SYMBOLS = {
@ -2010,6 +2010,7 @@ LEX_FN() {
ADVANCE(59);
ACCEPT_TOKEN(ts_sym__terminator);
case ts_lex_state_error:
START_TOKEN();
if (lookahead == '\0')
ADVANCE(1);
if ((lookahead == '\t') ||

View file

@ -39,8 +39,8 @@ SYMBOL_NAMES = {
[ts_aux_sym_token4] = "'}'",
[ts_aux_sym_token5] = "'['",
[ts_aux_sym_token6] = "']'",
[ts_builtin_sym_end] = "end",
[ts_builtin_sym_error] = "error",
[ts_builtin_sym_end] = "EOF",
[ts_builtin_sym_error] = "ERROR",
};
HIDDEN_SYMBOLS = {
@ -326,6 +326,7 @@ LEX_FN() {
ADVANCE(4);
LEX_ERROR();
case ts_lex_state_error:
START_TOKEN();
if (lookahead == '\0')
ADVANCE(1);
if (('\t' <= lookahead && lookahead <= '\n') ||