From: Ian Lance Taylor Date: Tue, 13 Jun 2017 13:29:26 +0000 (+0000) Subject: runtime: don't always show frames with no function in traceback X-Git-Tag: basepoints/gcc-9~6669 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=09a871c46619af0461d2c079d4de953745a11b68;p=thirdparty%2Fgcc.git runtime: don't always show frames with no function in traceback If there is no function name, the traceback is generally uninformative. In earlier versions we did not show such frames. Restore that behavior. These frames can be seen with GOTRACEBACK=system. Reviewed-on: https://go-review.googlesource.com/45431 From-SVN: r249156 --- diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index a2ed1f30ffe3..78bd0574fb6e 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -3b44ad058abda0d1b0b6c928987270da50ab7431 +c4ecdd3edb9febe72b5527481ae3d7310105ca67 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/libgo/go/runtime/traceback_gccgo.go b/libgo/go/runtime/traceback_gccgo.go index fb51043e13da..0da517189ec2 100644 --- a/libgo/go/runtime/traceback_gccgo.go +++ b/libgo/go/runtime/traceback_gccgo.go @@ -94,7 +94,7 @@ func showframe(name string, gp *g) bool { // We want to print those in the traceback. // But unless GOTRACEBACK > 1 (checked below), still skip // internal C functions and cgo-generated functions. - if !contains(name, ".") && !hasprefix(name, "__go_") && !hasprefix(name, "_cgo_") { + if name != "" && !contains(name, ".") && !hasprefix(name, "__go_") && !hasprefix(name, "_cgo_") { return true }