禁用 go vet 检查“复合文字使用无键字段”

我在 CI 工具上运行 go vet,并开始收到错误消息:


composite literal uses unkeyed fields

因为我正在实例化


type A struct {

   *B

}

像这样:


A{b} // b is of type *B

我不在乎这个警告,想在我的兽医检查中禁用它。我该怎么做呢?


米琪卡哇伊
浏览 281回答 3
3回答

千万里不及你

您可以禁用它,也可以改为修复代码:a := A{B: b}

慕标5832272

$ go doc cmd/vet默认情况下执行所有检查。如果任何标志显式设置为 true,则仅运行那些测试。相反,如果任何标志显式设置为 false,则仅禁用那些测试。因此 -printf=true 运行 printf 检查,-printf=false 运行除 printf 检查之外的所有检查。Unkeyed composite literalsFlag: -compositesComposite struct literals that do not use the field-keyed syntax.

大话西游666

如果您使用的是语言服务器。Gopls on by default in the VS Code Go extensiongopls 默认情况下会进行兽医检查。"gopls": {     "analyses": { "composites": false }  },
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python