报告通过嵌入式结构体字面量初始化提升字段的复合字面量。
在 Go 1.27 及更高版本中,可以在外部复合字面量中直接初始化从嵌入式结构体提升的字段。 这样便无需使用嵌套的嵌入式结构体层,并将所有字段值保留在一个字面量中。
示例:
type Coord struct {
X, Y int
}
type Marker struct {
Coord
Label string
}
var Origin = Marker{
Coord: Coord{X: 0, Y: 0},
Label: "origin",
}
要修正代码,请使用移除嵌入式字段类型 Coord 快速修复。
在应用快速修复后:
var Origin = Marker{
X: 0, Y: 0,
Label: "origin",
}