GerHobbelt / jison

bison / YACC / LEX in JavaScript (LALR(1), SLR(1), etc. lexer/parser generator)
https://gerhobbelt.github.io/jison/
MIT License
118 stars 20 forks source link

jison doesn't handle indirect left recursion properly #1

Closed GerHobbelt closed 8 years ago

GerHobbelt commented 8 years ago

Don't know yet if this is particular to my fork or the original already.

Ran into this issue when working on lex-parser: commits follow

GerHobbelt commented 8 years ago
GerHobbelt commented 8 years ago

Whoops. Don't understand I could have overlooked these! 👎 👎

Conflict in grammar: multiple actions possible when lookahead token is NAME in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is START_INC in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is START_EXC in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is { in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is ACTION in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is INCLUDE in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is OPTIONS in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is UNKNOWN_DECL in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is %% in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)
Conflict in grammar: multiple actions possible when lookahead token is | in state 18
- reduce by rule: regex_list -> nonempty_regex_list
- reduce by rule: regex -> nonempty_regex_list
  (Resolved R/R conflict: use first production declared in grammar.)