我正在研究一个新的 CIL 目标,但我不太确定如何处理调试信息。我自己正在实现一个 PE 作家——所以它不依赖于 ilasm 。从我在 ECMA 文档中看到的内容来看,有 CILDB 调试格式——但它与 PDB 和 Mono 的 MDB 都不同。所以看来,如果我想包含调试信息,无论如何我都需要使用 ilasm 进行编译(并使用 .line 指令)。
但是,即使我确实使用 ilasm 进行编译,在我看来 .line 指令也不足以包含足够的调试信息以实现完整的调试功能 - 例如,调试器如何知道我的目标标识符和局部变量之间的映射? 在我看来,处理这个问题的最好方法是只支持 Mono 的开放调试格式——这将是一个遗憾。
有人有这方面的资源吗?