在CL 394017中由@muirdm创建的类型检查器,如果缺少参数,即使提供了所有必要的类型参数,也会记录被调用函数的泛型类型,如下所示:
func foo[A int|string](a A) {}
foo[int]() // recorded function type is still func[A int|string](A), even though it should be known to be func(int)
示例:https://go.dev/play/p/xBmccoNdCK_Y
这可能是一个低优先级的问题(因此没有添加1.19里程碑),但在我们改进类型推断的过程中清理它会很好。
CC @griesemer
3条答案
按热度按时间xurqigkl1#
https://go.dev/cl/400614提到了这个问题:
lsp/completion: further improve generic func arg ranking
mqxuamgl2#
https://go.dev/cl/403354提到了这个问题:
guru: Add a TODO list to the guru cmd.
2hh7jdfx3#
https://go.dev/cl/403355提到了这个问题:
passes/unusedwrites: Add TODO for how to handle generics.