From: Robert Griesemer Date: Thu, 29 Jun 2017 21:14:26 +0000 (-0700) Subject: cmd/vet/all: in case of vet panic, don't filter stacktrace X-Git-Tag: go1.9rc1~118 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=87c4a04b80a2f81a06ce3c0b67e50053166766d8;p=gostls13.git cmd/vet/all: in case of vet panic, don't filter stacktrace Fixes #20839. Change-Id: I125460c5da09b7fa0cf470ff5be436f8d650cde7 Reviewed-on: https://go-review.googlesource.com/47253 Run-TryBot: Robert Griesemer TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- diff --git a/src/cmd/vet/all/main.go b/src/cmd/vet/all/main.go index b4df4cc720..09167af6d5 100644 --- a/src/cmd/vet/all/main.go +++ b/src/cmd/vet/all/main.go @@ -17,6 +17,7 @@ import ( "go/build" "go/types" "internal/testenv" + "io" "log" "os" "os/exec" @@ -227,6 +228,15 @@ NextLine: continue } + if strings.HasPrefix(line, "panic: ") { + // Panic in vet. Don't filter anything, we want the complete output. + parseFailed = true + fmt.Fprintf(os.Stderr, "panic in vet (to reproduce: go run main.go -p %s):\n", p) + fmt.Fprintln(os.Stderr, line) + io.Copy(os.Stderr, stderr) + break + } + fields := strings.SplitN(line, ":", 3) var file, lineno, msg string switch len(fields) {