tools/go/analysis
Alan Donovan 6adeb8aab2 go/analysis/passes/nilness: degenerate nil condition checker
This check uses the control-flow graph and SSA value graph to detect
problems such as:

	p := &v
	...
	if p != nil { // tautological condition
	}

and:

	if p == nil {
		print(*p) // nil dereference
	}

(It was originally developed within Google's Go analysis framework and
can now be published in a form useful to all analysis drivers.)

This CL also includes buildssa, an Analyzer that constructs SSA for
later analysis passes but does not report diagnostics or facts of its
own.

Change-Id: I27bc4eea10d71d958685a403234879112c21f433
Reviewed-on: https://go-review.googlesource.com/c/142698
Reviewed-by: Michael Matloob <matloob@golang.org>
2018-10-19 00:59:45 +00:00
..
analysistest go/analysis/passes/copylock: add workaround for go1.10 2018-10-15 20:10:34 +00:00
cmd/analyze go/analysis/passes/buildtag: split out of vet 2018-10-08 17:33:41 +00:00
internal/checker go/analysis/passes/tests: split out from vet 2018-10-10 21:46:53 +00:00
multichecker go/analysis/passes: add doc and copyright comments 2018-10-16 20:28:15 +00:00
passes go/analysis/passes/nilness: degenerate nil condition checker 2018-10-19 00:59:45 +00:00
printf go/analysis/passes/printf: create printf pass 2018-10-15 19:09:06 +00:00
singlechecker go/analysis: add command-line help 2018-09-28 16:51:45 +00:00
analysis.go go/analysis: write package documentation 2018-10-08 17:31:26 +00:00
doc.go go/analysis: write package documentation 2018-10-08 17:31:26 +00:00
validate.go go/analysis: validate: report duplicates among analyzers (roots) 2018-10-11 19:55:00 +00:00