When I updated to Go 1.8, the initsig function moved from
signal1_unix.go to signal_unix.go, and lost a gccgo-specific change in
the move.  Add it back.

This would have been caught by the misc/cgo/testcarchive tests in the
gc repository, but we don't run those in the gccgo repository.  We
should fix that, somehow.

Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu.  Committed
to mainline.

Ian
Index: gcc/go/gofrontend/MERGE
===================================================================
--- gcc/go/gofrontend/MERGE     (revision 244946)
+++ gcc/go/gofrontend/MERGE     (working copy)
@@ -1,4 +1,4 @@
-f8c451ed42fd71b85afab54a33fc321df0ff3b0b
+2c62d5223e814887801b1540162c72b90299d910
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
Index: libgo/go/runtime/signal_unix.go
===================================================================
--- libgo/go/runtime/signal_unix.go     (revision 244484)
+++ libgo/go/runtime/signal_unix.go     (working copy)
@@ -66,6 +66,11 @@ var signalsOK bool
 //go:nosplit
 //go:nowritebarrierrec
 func initsig(preinit bool) {
+       if preinit {
+               // preinit is only passed as true if isarchive should be true.
+               isarchive = true
+       }
+
        if !preinit {
                // It's now OK for signal handlers to run.
                signalsOK = true

Reply via email to