This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libgo patch committed: Upgrade to Go 1.9 release


Hi Ian,

> I've committed a patch to libgo to upgrade it to the recent Go 1.9 release.
>
> As usual with these upgrades, the patch is too large to attach here.
> I've attached the changes to files that are more or less specific to
> gccgo.
>
> This upgrade required some changes to the gotools Makefile.  And one
> test had to be updated.  These patches are also below.
>
> Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu.  Committed
> to mainline.

the patch broke Solaris bootstrap:

/vol/gcc/src/hg/trunk/local/libgo/go/syscall/exec_unix.go:240:11: error: reference to undefined name 'forkExecPipe'
  if err = forkExecPipe(p[:]); err != nil {
           ^

libgo/go/syscall/forkpipe_bsd.go is needed on Solaris, too.

/vol/gcc/src/hg/trunk/local/libgo/go/golang_org/x/net/lif/link.go:73:10: error: use of undefined type 'lifnum'
  lifn := lifnum{Flags: sysLIFC_NOXMIT | sysLIFC_TEMPORARY | sysLIFC_ALLZONES | sysLIFC_UNDER_IPMP}
          ^
make[8]: *** [Makefile:3349: golang_org/x/net/lif.lo] Error 1

The Go 1.9 upgrade patch has

@@ -70,7 +70,7 @@ func Links(af int, name string) ([]Link,
 
 func links(eps []endpoint, name string) ([]Link, error) {
        var lls []Link
-       lifn := sysLifnum{Flags: sysLIFC_NOXMIT | sysLIFC_TEMPORARY | sysLIFC_AL
LZONES | sysLIFC_UNDER_IPMP}
+       lifn := lifnum{Flags: sysLIFC_NOXMIT | sysLIFC_TEMPORARY | sysLIFC_ALLZO
NES | sysLIFC_UNDER_IPMP}

Reverting that allows link.go to compile.

/vol/gcc/src/hg/trunk/local/libgo/go/internal/poll/fd_unix.go:366:21: error: reference to undefined identifier 'syscall.ReadDirent'
   n, err := syscall.ReadDirent(fd.Sysfd, buf)
                     ^

I don't yet see where this comes from on non-Linux systems...

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


diff --git a/libgo/go/golang_org/x/net/lif/link.go b/libgo/go/golang_org/x/net/lif/link.go
--- a/libgo/go/golang_org/x/net/lif/link.go
+++ b/libgo/go/golang_org/x/net/lif/link.go
@@ -70,7 +70,7 @@ func Links(af int, name string) ([]Link,
 
 func links(eps []endpoint, name string) ([]Link, error) {
 	var lls []Link
-	lifn := lifnum{Flags: sysLIFC_NOXMIT | sysLIFC_TEMPORARY | sysLIFC_ALLZONES | sysLIFC_UNDER_IPMP}
+	lifn := sysLifnum{Flags: sysLIFC_NOXMIT | sysLIFC_TEMPORARY | sysLIFC_ALLZONES | sysLIFC_UNDER_IPMP}
 	lifc := lifconf{Flags: sysLIFC_NOXMIT | sysLIFC_TEMPORARY | sysLIFC_ALLZONES | sysLIFC_UNDER_IPMP}
 	for _, ep := range eps {
 		lifn.Family = uint16(ep.af)
diff --git a/libgo/go/syscall/forkpipe_bsd.go b/libgo/go/syscall/forkpipe_bsd.go
--- a/libgo/go/syscall/forkpipe_bsd.go
+++ b/libgo/go/syscall/forkpipe_bsd.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build darwin dragonfly netbsd openbsd
+// +build darwin dragonfly netbsd openbsd solaris
 
 package syscall
 

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]