Go 1.18 迁移问题——无法将“nil”转换为类型“any”

我将代码库更新为 Go 1.18。一切看起来都不错,但在一些地方,我发现了以下问题。


defer func() {

    if e := recover() ; e!=nil {

        ...

    }

}()

编译失败:


无法将“nil”转换为类型“any”


相同的代码在 Go 1.17 中运行良好。基于 Go 1.18 Release notes,any是一个内置类型的别名interface{}(Generics)


到底是怎么回事?


莫回无
浏览 595回答 1
1回答

一只萌萌小番薯

问题出在 IDE 上。IntelliJ Goland 2021.2.4我可以从命令行和操场上构建代码。
打开App,查看更多内容
随时随地看视频慕课网APP