规范说:
给定一个结构类型S和一个定义的类型T,在该结构的方法集中包括以下改进的方法:
如果S包含嵌入字段T,则S和* S的方法集都包括接收者T的提升方法。* S方法集还包括接收者* T的提升方法。
如果S包含一个嵌入字段* T,则S和* S的方法集都包括带有接收者T或* T的提升方法。
https://tip.golang.org/ref/spec#Struct_types
因此,据我所知,在类型为T(not * T)的嵌入式字段和带有接收者* T的struct S(not * S)方法的情况下,S方法集不得包含此方法,但是将编译此示例。
但此代码已编译:https://play.golang.org/p/2ypMgbehs_r
我的误会在哪里?