不可恢复的 IL 错误,但 IL 看起来正常

Unrecoverable IL error, but the IL looks fine

提问人:Andrew Matthews 提问时间:9/25/2022 更新时间:9/25/2022 访问量:83

问:

我收到以下 IL 的错误。知道为什么吗?在我看来还不错!

enter image description here

问题出在以粗体突出显示的行上。stloc.4/ldloc.4

语法突出显示来自 Rider,但我也遇到了同样的问题。ilasm

我在 MacOS 上运行它。

.NET 编译器错误 CIL 中间语言

评论

0赞 Andrew Matthews 9/25/2022
来自 ilasm 的错误消息是:考虑到其他变量初始化似乎很好,这并不是那么有用....../. . . /build/tmpHpGfMu.il(180) : error : syntax error at token 'stloc' in: stloc.4
1赞 JL0PD 9/25/2022
不要放置代码图像
0赞 Andrew Matthews 9/26/2022
没关系。我很快就会纠正这个问题。

答:

0赞 JL0PD 9/25/2022 #1

问题是没有 ,最多 3。您应该使用 stloc 后跟数字,例如 .由于变量的索引小于 255,因此可以使用在生成的程序集中保存几个字节。这同样适用于下一行stloc.4stloc.xstloc 4stloc.s 4ldloc.4