From fe494af887f9f83617540077fa89d14c92f0decd Mon Sep 17 00:00:00 2001 From: Aleksandr Razumov <a.razumov@corp.mail.ru> Date: Mon, 30 Sep 2019 16:04:06 +0300 Subject: [PATCH] govet: skip internal analyzers (#763) Some analyzers are not intended for direct usage and are just build blocks for other analyzers. Seems like we can distinguish them by ResultType nillness. --- pkg/golinters/govet.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkg/golinters/govet.go b/pkg/golinters/govet.go index a24af46d..ecb8c8a2 100644 --- a/pkg/golinters/govet.go +++ b/pkg/golinters/govet.go @@ -43,7 +43,8 @@ import ( ) func getAllAnalyzers() []*analysis.Analyzer { - return []*analysis.Analyzer{ + var analyzers []*analysis.Analyzer + for _, a := range []*analysis.Analyzer{ asmdecl.Analyzer, assign.Analyzer, atomic.Analyzer, @@ -76,7 +77,14 @@ func getAllAnalyzers() []*analysis.Analyzer { unreachable.Analyzer, unsafeptr.Analyzer, unusedresult.Analyzer, + } { + if a.ResultType != nil { + // Skipping internal analyzers. + continue + } + analyzers = append(analyzers, a) } + return analyzers } func getDefaultAnalyzers() []*analysis.Analyzer {