go vetでcomposite literal uses unkeyed fieldsが検出されたときの対処方法

ぐぐると「警告を無効にする(go vet -composites=false)」しか出てこなかったのでメモ。

go vetcomposite literal uses unkeyed fields が検出されたときは生成時にきちんとkeyを指定しましょう。

たとえばこんな struct があったとして

type User struct {
	Name string
	Mail string
}

NG

&User{"baba", "baba@example.com"}

OK

&User{Name: "baba", Mail: "baba@example.com"}

これもOK

user := new(User)
user.Name = "baba"
user.Mail = "baba@example```.com"
golang 

See also