Recipe:如何通过 diagnostics 判断语义损失
把 diagnostics 当作结果的一部分,而不是事后补充。它可以说明路线保留了哪些结构、放宽了哪些值,或者跳过了哪些结构。
三轮检查
先检查 errors:有 error 时,输出需要修复后才能使用。再查看 warnings,确认是否存在有意的损失,例如不支持的注解或目标格式较少的约束。最后阅读 informational notes,记录应该带入 code review 的假设。
对照 IR
如果输出看起来不符合预期,就和 Shape IR 对照。这样可以区分 parsing 问题和 generator 限制,也能找到最具体的改进位置。