tools/go/ssa
Michael Matloob 0aa4b8830f go/packages: remove the Config.Error hook
Errors relating to a particular package (as opposed to the Load
operation as a whole) are now only recorded in the Errors
field of the corresponding Package.
Clients are responsible for printing or otherwise handling errors.
This is a breaking API change.

The PrintErrors function prints all accumulated errors,
dependencies first, and is provided for convenience.

PrintErrors is based on Visit, another helper function, which
visits each Package in an import graph.

Also:
- add an Example documenting typical use.
- update clients to handle errors explicitly.

Depends on https://go-review.googlesource.com/c/tools/+/130576

Change-Id: I39407ab7f46dae2f0dd0fdde21080e172e1258aa
Reviewed-on: https://go-review.googlesource.com/131015
Reviewed-by: Michael Matloob <matloob@golang.org>
2018-09-04 20:52:37 +00:00
..
interp go/ssa/interp: disable regularly broken tests in short mode 2018-08-28 01:46:48 +00:00
ssautil go/packages: remove the Config.Error hook 2018-09-04 20:52:37 +00:00
testdata x/tools/go/ssa: Accept struct conversions that ignore tags 2017-06-02 20:57:42 +00:00
blockopt.go go.tools/go/ssa: don't attempt fusion on single-pred blocks with φ-nodes 2014-04-24 09:08:21 -04:00
builder.go x/tools: remove old renaming imports of go/constant as exact 2018-08-10 17:04:37 +00:00
builder_test.go go/ssa: eliminate dead φ-nodes in cycles 2017-02-22 01:23:56 +00:00
const.go x/tools: remove old renaming imports of go/constant as exact 2018-08-10 17:04:37 +00:00
create.go go/ssa: updates to support go/packages 2018-08-08 20:03:34 +00:00
doc.go go/ssa: updates to support go/packages 2018-08-08 20:03:34 +00:00
dom.go go.tools/go/ssa: use bytes.Buffer instead of io.Writer. 2014-01-28 17:48:10 -05:00
emit.go x/tools/go/ssa: Accept struct conversions that ignore tags 2017-06-02 20:57:42 +00:00
example_test.go go/packages: remove the Config.Error hook 2018-09-04 20:52:37 +00:00
func.go tools: updates for minimum Go version 1.6 2017-02-07 21:06:19 +00:00
identical.go x/tools/go/ssa: Accept struct conversions that ignore tags 2017-06-02 20:57:42 +00:00
identical_17.go x/tools/go/ssa: Accept struct conversions that ignore tags 2017-06-02 20:57:42 +00:00
identical_test.go x/tools/go/ssa: Accept struct conversions that ignore tags 2017-06-02 20:57:42 +00:00
lift.go go/ssa: fix regression in φ-elimination 2017-06-15 18:36:17 +00:00
lvalue.go tools: updates for minimum Go version 1.6 2017-02-07 21:06:19 +00:00
methods.go tools: updates for minimum Go version 1.6 2017-02-07 21:06:19 +00:00
mode.go go/ssa: make *BuilderMode satisfy flag.Value 2016-03-07 22:18:09 +00:00
print.go go/ssa: fix regression in φ-elimination 2017-06-15 18:36:17 +00:00
sanity.go all: fix a few issues found by unparam 2018-02-13 22:52:51 +00:00
source.go tools: updates for minimum Go version 1.6 2017-02-07 21:06:19 +00:00
source_test.go x/tools: remove old renaming imports of go/constant as exact 2018-08-10 17:04:37 +00:00
ssa.go x/tools: remove old renaming imports of go/constant as exact 2018-08-10 17:04:37 +00:00
stdlib_test.go go/ssa: avoid no-arg println(), for gccgo compatibility 2016-11-23 22:44:20 +00:00
testmain.go go/ssa: updates to support go/packages 2018-08-08 20:03:34 +00:00
testmain_test.go go/ssa: support custom TestMain functions in test packages 2016-10-19 17:50:59 +00:00
util.go tools: updates for minimum Go version 1.6 2017-02-07 21:06:19 +00:00
wrappers.go tools: updates for minimum Go version 1.6 2017-02-07 21:06:19 +00:00