【发布时间】:2016-03-25 22:04:58
【问题描述】:
关于 .y (yacc -- bison) 文件的语法,我定义了以下规则:
C : E | D | F |一个
A : B | B'['C']';
(这类似于带有可选 [C] 的 B) 当我使用适当的词法分析器文件以适当的方式编译 .y 文件时,我得到以下 shift\reduce 冲突:
状态 48
74 甲:乙。
75 |乙。 '['C']'
'[' 切换,进入状态 91
'[' [减少使用规则 74 (A)]
$default 减少使用规则 74 (A)
如果它有前任'['我希望它转移而不是减少,我的问题如下。问题是我在文档中搜索数小时时找不到此错误的解决方案。 我该如何解决这个问题(请具体到代码)。
【问题讨论】:
-
您没有提供足够的信息来重现您的错误。当我从您的示例创建野牛文件时,我发现没有问题。请显示更多重现您的错误的代码。
标签: bison yacc shift-reduce-conflict