tools/go
Alan Donovan 8e5aba0a36 go/analysis: harmonize flags across all checkers
The -json and -c=N flags, formerly belonging only to the
go/packages-based {single,multi}checkers, are now supported by
unitchecker as well.

The no-op -source, -v, -all, and -tags flags, formerly belonging only
to unitchecker, have moved to the analysisflags package, which is
common to all checkers.

The -flags flag now reports all registered flags (except the
{single,multi}checker-only debugging flags) rather than just those
related to analyzers, allowing one to say: 'go vet -json' or 'go vet -c=1'.

The code for printing diagnostics, either plain or in JSON, has been
factored and moved into the common analysisflags package.

This CL depends on https://go-review.googlesource.com/c/go/+/149960 to
cmd/go, which causes 'go vet' to populate the ID field of the *.cfg.
This field is used as a key in the JSON tree.

Added basic tests of the new -json and -c unitchecker flags.

Change-Id: Ia7a3a9adc86de067de060732d2c200c58be3945a
Reviewed-on: https://go-review.googlesource.com/c/150038
Reviewed-by: Michael Matloob <matloob@golang.org>
2018-11-16 19:20:06 +00:00
..
analysis go/analysis: harmonize flags across all checkers 2018-11-16 19:20:06 +00:00
ast go/ast/astutil: allow AddNamedImport to add imports with different names 2018-11-07 22:33:19 +00:00
buildutil go/...: make most tests pass with gccgo 2018-06-08 16:58:49 +00:00
callgraph go/callgraph/rta: fix comment 2018-11-09 15:26:31 +00:00
cfg go/cfg: a syntactic control-flow graph (CFG) 2018-09-26 00:57:46 +00:00
expect go/packages/packagestest: add marker support 2018-11-02 18:21:53 +00:00
gccgoexportdata go/gccgoexportdata: correctly handle archive files containing string tables 2016-11-09 21:28:38 +00:00
gcexportdata go/gcexportdata: add -package flag to diagnostic tool 2018-06-27 17:17:06 +00:00
internal go/internal/gcimporter: ensure tests pass even if GOROOT is read-only 2018-11-11 00:37:25 +00:00
loader go/internal/cgo: simplify names of ProcessCgoFiles and RunCgo 2018-08-08 19:23:19 +00:00
packages make the packagestest marker system more flexible 2018-11-15 01:11:15 +00:00
pointer go/pointer: support reflect.Value in AddExtendedQuery 2018-08-13 20:51:10 +00:00
ssa go/ssa: updated inconsistent docs after Program.Method rename 2018-11-09 15:25:51 +00:00
types go/analysis/passes/printf: changes for analysis API 2018-10-16 19:44:49 +00:00
vcs go/vcs: match go-import package prefixes by slash 2018-06-20 03:09:55 +00:00