diff mbox

libgo patch committed: Rename _defer struct _panic field to panicStack

Message ID CAOyqgcXB56B-VFjGhAYfBzA=kqfLM9EYE5fih3WwXuPRtMwfdg@mail.gmail.com
State New
Headers show

Commit Message

Ian Lance Taylor June 22, 2017, 2:31 p.m. UTC
In the gc version of the Go library the _defer struct has a _panic
field with a completely different meaning, that we are going to want
to adopt into libgo.  This trivial patch renames libgo's _panic field
to panicStack to clear the way.  Bootstrapped and ran Go testsuite on
x86_64-pc-linux-gnu.  Committed to mainline.

Ian
diff mbox

Patch

Index: gcc/go/gofrontend/MERGE
===================================================================
--- gcc/go/gofrontend/MERGE	(revision 249557)
+++ gcc/go/gofrontend/MERGE	(working copy)
@@ -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.
Index: libgo/go/runtime/panic.go
===================================================================
--- libgo/go/runtime/panic.go	(revision 249205)
+++ libgo/go/runtime/panic.go	(working copy)
@@ -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()
Index: libgo/go/runtime/runtime2.go
===================================================================
--- libgo/go/runtime/runtime2.go	(revision 249205)
+++ libgo/go/runtime/runtime2.go	(working copy)
@@ -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