From: Josh Bleecher Snyder Date: Thu, 31 Mar 2016 16:29:32 +0000 (-0700) Subject: cmd/compile: dump stack trace in Fatalf during development X-Git-Tag: go1.7beta1~980 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=00289c296c52eb1a849f28bc6d60fef5898cb7b1;p=gostls13.git cmd/compile: dump stack trace in Fatalf during development See discussion in #15029. Change-Id: I5cc8be5737ddb7c1f5e4a6cd92cf557af45e961d Reviewed-on: https://go-review.googlesource.com/21347 Reviewed-by: Brad Fitzpatrick --- diff --git a/src/cmd/compile/internal/gc/subr.go b/src/cmd/compile/internal/gc/subr.go index c552dd01a1..83888be6f7 100644 --- a/src/cmd/compile/internal/gc/subr.go +++ b/src/cmd/compile/internal/gc/subr.go @@ -11,6 +11,7 @@ import ( "encoding/binary" "fmt" "os" + "runtime/debug" "sort" "strconv" "strings" @@ -151,6 +152,11 @@ func Fatalf(fmt_ string, args ...interface{}) { fmt.Printf("\n") fmt.Printf("Please file a bug report including a short program that triggers the error.\n") fmt.Printf("https://golang.org/issue/new\n") + } else { + // Not a release; dump a stack trace, too. + fmt.Println() + os.Stdout.Write(debug.Stack()) + fmt.Println() } hcrash()