From 09a871c46619af0461d2c079d4de953745a11b68 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 13 Jun 2017 13:29:26 +0000 Subject: [PATCH] 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 --- gcc/go/gofrontend/MERGE | 2 +- libgo/go/runtime/traceback_gccgo.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index a2ed1f30ffe..78bd0574fb6 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 fb51043e13d..0da517189ec 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 } -- 2.30.2