gpt4 book ai didi

visual-studio-2010 - 在 Visual Studio 中构建时出现 fsyacc 错误

转载 作者:行者123 更新时间:2023-12-04 05:57:30 25 4
gpt4 key购买 nike

我在 Visual Studio 中使用 fsyacc(使用 Parsed Language Starter 模板),但构建输出没有显示发生错误的行/列(仅:fsyacc 退出,代码为 1)。我必须从命令提示符构建以获取此信息,这在某种程度上否定了 VS 集成的好处。

有没有办法在输出窗口中显示它?

编辑

以下是一些未显示在输出窗口中的错误示例。

Parser.fsy(74,4): 错误:解析错误



搭建 table
FSYACC:错误 FSY000:非终端“查询”没有产生式

这是成功输出,也很高兴看到:

搭建 table
计算第一个函数...时间:00:00:00.1318603
构建内核...时间:00:00:00.1027372
构建内核表...时间:00:00:00.0533044
计算前瞻关系.............................................
......时间:00:00:00.0517415
构建前瞻表...时间:00:00:00.0207993
构建 Action 表...状态 29:转移/减少 AS 上的错误
状态 49:移动/减少 OR 上的错误
状态 49:AND 上的移位/减少错误
...
时间:00:00:00.1457792
建立转到表...时间:00:00:00.0035636
返回表。
39 移位/减少冲突
62 个州
11 个非终结符
41个终端
46个作品
# 操作表中的行数:62

最佳答案

我没有使用 Parsed Language Starter 模板,而是使用 Pre-build event 构建解析器/词法分析器在 Build Events从 VS 项目属性:

fslex "$(ProjectDir)Lexer.fsl"
fsyacc --module Grammar "$(ProjectDir)Grammar.fsy"

这不是很理想,因为我必须在 Path 环境变量中设置 fsyacc/fslex。每当我不想重建解析器/词法分析器时,我必须在 fsproj 文件中注释掉以下部分:
<PropertyGroup>
<PreBuildEvent>fslex "$(ProjectDir)Lexer.fsl"
fsyacc --module Grammar "$(ProjectDir)Grammar.fsy"
</PreBuildEvent>
</PropertyGroup>

然而,获胜的点是明确的。我们在 stdout 中有所有消息,包括错误和成功输出。方便调试。

关于visual-studio-2010 - 在 Visual Studio 中构建时出现 fsyacc 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9332364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com