是否可以在menhir中禁止未使用的优先级警告?
背景:
我有一个带有多个规则的核心解析器Lib.mly
,还有一些额外的解析器(A.mly
,B.mly
,......),它们使用{{1}的定义}。为了支持对所有语言使用单个词法分析器,所有令牌都在Lib.mly
中定义,我们在Lib.mly
中使用external_tokens(Lib)
注释并扩展_tags
以禁止使用未使用的令牌警告myocamlbuild.ml
显着有帮助。但是,我仍然会收到许多警告:
--unused-tokens
这使得很难看到我真正想要解决的其他警告。运算符的不同子集以各种语言使用,因此我需要有一个“全局”优先级来对它们进行适当的排序。感谢您的任何提示!
答案 0 :(得分:6)
截至今天,Menhir有了一个新选项--unused-precedence-levels
。
如果您有分解在多个文件上的语法示例,我可能有兴趣查看它们(如果允许的话,可能会在Menhir的测试套件中包含其中一些)。
答案 1 :(得分:0)
不确定这是否是您正在搜索的内容,但以下两个选项可能有用:
--unused-token <token> Do not warn that <token> is unused
--unused-tokens Do not warn about any unused token