标签: bison yacc lex
如何消除以下yacc文件的reduce-reduce冲突:
<AnkoComponentActivity>
答案 0 :(得分:0)
要了解发生冲突的原因,请考虑一个仅包含标识符的输入。那是MATH_EXPRESSION还是LOGICAL_EXPRESSION?解析器决定这是不可能的,因为它适合两种规则。
MATH_EXPRESSION
LOGICAL_EXPRESSION
你应该做的是有一个包含逻辑运算符和算术运算符的表达式规则。区分类型通常无法在解析级别处理,您需要在类型检查器中执行此操作。