请在提交问题之前回答以下问题。谢谢!
您正在使用的Go版本是什么(go version
)?
go版本 go1.10.2 linux/amd64
这个问题在最新版本中是否重现?
是的
您做了什么?
package main
import "fmt"
import "reflect"
type MyInt int
func main() {
type T = struct {
MyInt
}
fmt.Println(reflect.TypeOf(T{})) // struct { main.MyInt }
var n MyInt
tn := reflect.TypeOf(n)
// panic: reflect.StructOf: too many methods
tt := reflect.StructOf([]reflect.StructField{
{Name: "MyInt", Type: tn, Anonymous: true},
})
fmt.Println(tt) // struct { MyInt main.MyInt }
}
您期望看到什么?
struct { main.MyInt }
struct { main.MyInt }
您实际看到了什么?
struct { main.MyInt }
struct { MyInt main.MyInt }
4条答案
按热度按时间j2cgzkjk1#
顺便说一下,gccgo print:
epggiuax2#
/cc @crawshaw@josharian
u4vypkhs3#
可能这个问题是由两个事实共同引起的:
lf5gs5x24#
可能与 #24781 和 #24721 有关。