Mat*_*ner 23 warnings go suppress-warnings
我正在运行我的CI工具上的vet,并开始收到错误:
composite literal uses unkeyed fields
Run Code Online (Sandbox Code Playgroud)
因为我在实例化
type A struct {
*B
}
Run Code Online (Sandbox Code Playgroud)
像这样:
A{b} // b is of type *B
Run Code Online (Sandbox Code Playgroud)
我不关心这个警告,并希望在我的兽医检查中禁用它.我该怎么做呢?
One*_*One 45
您可以禁用它,也可以修改代码:
a := A{B: b}
Run Code Online (Sandbox Code Playgroud)
pet*_*rSO 22
Run Code Online (Sandbox Code Playgroud)$ go doc cmd/vet默认情况下,执行所有检查.如果任何标志显式设置为true,则仅运行那些测试.相反,如果任何标志显式设置为false,则仅禁用那些测试.因此-printf = true运行printf检查,-printf = false运行除printf检查之外的所有检查.
Run Code Online (Sandbox Code Playgroud)Unkeyed composite literals Flag: -composites Composite struct literals that do not use the field-keyed syntax.
如果您使用的是语言服务器。
Gopls on by default in the VS Code Go extension
"gopls": {
"analyses": { "composites": false }
},
Run Code Online (Sandbox Code Playgroud)
如果您使用 VS code,则必须在设置下手动设置该标志
settings > Extensions > Go
向下滚动到“兽医标志”部分
添加项目并添加标志
-composites=false .
Run Code Online (Sandbox Code Playgroud)
单击“确定”。
再次保存您的文件之一或重新启动 VS code 以查看效果。
| 归档时间: |
|
| 查看次数: |
21381 次 |
| 最近记录: |