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.
This commit is contained in:
Aleksandr Razumov 2019-09-30 16:04:06 +03:00 committed by Isaev Denis
parent 605c9c2954
commit fe494af887

View File

@ -43,7 +43,8 @@ import (
) )
func getAllAnalyzers() []*analysis.Analyzer { func getAllAnalyzers() []*analysis.Analyzer {
return []*analysis.Analyzer{ var analyzers []*analysis.Analyzer
for _, a := range []*analysis.Analyzer{
asmdecl.Analyzer, asmdecl.Analyzer,
assign.Analyzer, assign.Analyzer,
atomic.Analyzer, atomic.Analyzer,
@ -76,7 +77,14 @@ func getAllAnalyzers() []*analysis.Analyzer {
unreachable.Analyzer, unreachable.Analyzer,
unsafeptr.Analyzer, unsafeptr.Analyzer,
unusedresult.Analyzer, unusedresult.Analyzer,
} {
if a.ResultType != nil {
// Skipping internal analyzers.
continue
} }
analyzers = append(analyzers, a)
}
return analyzers
} }
func getDefaultAnalyzers() []*analysis.Analyzer { func getDefaultAnalyzers() []*analysis.Analyzer {