[英]debugging code with menhir and ocamlbuild
我正在实现一种小型编程语言。 这是代码库。 该程序是用ocamlbuild
的。 我使用menhir
添加了一个解析器。 当我编译并运行程序时,我收到以下消息。
❱ ./main.byte
Fatal error: exception Parser.MenhirBasics.Error
我试图通过将explain
传递给_tag
文件来查找更多详细信息
true: color(always), explain
但似乎没有任何区别。 如何让menhir
通过 ocamlbuild 生成日志文件? 或其他调试方式?
这是由 menhir 生成的解析器引发的语法错误。
您的构建系统无关紧要(尽管如此,您应该将dune
用于新项目而不是ocamlbuild
)。
同样, menhir
的--explain
标志仅在生成解析器时对生成冲突解释有用。 它不会在语法错误中添加语法错误解释。
如果要调试 menhir 语法,可以使用 menhir 解释器模式和menhir --interpret
或使用menhir --list-errors
列出语法中所有可能的语法错误。
这两个选项都应该成为“嗨”的原因。 是语法错误比较清楚。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.