diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index cb9022431e1..8ce40175bb3 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -a81079a81b63714221674f07d13bedc768092f27 +a459f1fdfe0bd365bf2def730e1529052c6487fd 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/panic.go b/libgo/go/runtime/panic.go index aa196aee7b5..bbd34b40131 100644 --- a/libgo/go/runtime/panic.go +++ b/libgo/go/runtime/panic.go @@ -90,13 +90,13 @@ func throwinit() { // pfn is a C function pointer. // arg is a value to pass to pfn. func deferproc(frame *bool, pfn uintptr, arg unsafe.Pointer) { - n := newdefer() - n.frame = frame - n._panic = getg()._panic - n.pfn = pfn - n.arg = arg - n.retaddr = 0 - n.makefunccanrecover = false + d := newdefer() + d.frame = frame + d.panicStack = getg()._panic + d.pfn = pfn + d.arg = arg + d.retaddr = 0 + d.makefunccanrecover = false } // Allocate a Defer, usually using per-P pool. @@ -502,7 +502,7 @@ func currentDefer() *_defer { // the panic stack. We do not want to recover it if that panic // was on the top of the panic stack when this function was // deferred. - if d._panic == gp._panic { + if d.panicStack == gp._panic { return nil } @@ -731,7 +731,7 @@ func gorecover() interface{} { // function like recover. func deferredrecover() interface{} { gp := getg() - if gp._defer == nil || gp._defer._panic != gp._panic { + if gp._defer == nil || gp._defer.panicStack != gp._panic { return nil } return gorecover() diff --git a/libgo/go/runtime/runtime2.go b/libgo/go/runtime/runtime2.go index 8bfdcbc9523..f532a3b2ba9 100644 --- a/libgo/go/runtime/runtime2.go +++ b/libgo/go/runtime/runtime2.go @@ -698,7 +698,7 @@ type _defer struct { // deferred. This function can not recover this value from // the panic stack. This can happen if a deferred function // has a defer statement itself. - _panic *_panic + panicStack *_panic // The function to call. pfn uintptr