重现案例:
package main
type e struct {
error
}
func (*e) random() {}
func main() {
var diags []error
for _, err := range diags {
handled := handle(err)
handled.
}
}
func handle(err error) *e {
return &e{err}
}
没有 " Sel
" 字段的选择器在 main
函数中破坏了解析,导致其下面的代码解析失败。handle
函数从未被注册为函数声明。将 handle
函数移到 main
函数上方使这段代码按预期进行类型检查。这对于需要处理损坏代码的编辑器集成工具来说是一个问题。
1条答案
按热度按时间dxpyg8gm1#
/cc @ianthehat