]> Cypherpunks repositories - gostls13.git/commitdiff
internal/goroot: for -compiler=gccgo, only look for .gox files
authorIan Lance Taylor <iant@golang.org>
Wed, 18 Sep 2019 04:12:35 +0000 (21:12 -0700)
committerIan Lance Taylor <iant@golang.org>
Wed, 18 Sep 2019 20:32:43 +0000 (20:32 +0000)
Fixes #34358

Change-Id: I3022ac88e1ad595dc72c0063852b8d4a1ec3f0ba
Reviewed-on: https://go-review.googlesource.com/c/go/+/196120
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Bryan C. Mills <bcmills@google.com>
src/cmd/go/testdata/script/mod_m.txt [new file with mode: 0644]
src/internal/goroot/gc.go

diff --git a/src/cmd/go/testdata/script/mod_m.txt b/src/cmd/go/testdata/script/mod_m.txt
new file mode 100644 (file)
index 0000000..a6edeac
--- /dev/null
@@ -0,0 +1,15 @@
+# It's absurd, but builds with -compiler=gccgo used to fail to build module m.
+# golang.org/issue/34358
+
+cd m
+go build
+exists m$GOEXE
+rm m$GOEXE
+[exec:gccgo] go build -compiler=gccgo
+[exec:gccgo] exists m$GOEXE
+
+-- m/go.mod --
+module m
+-- m/main.go --
+package main
+func main() {}
index 9d846d8c49ac145c004f35baf191fc161c015c43..0f541d734b0418e54ffcf9200180a4969bb42c7d 100644 (file)
@@ -121,18 +121,9 @@ func (gd *gccgoDirs) isStandard(path string) bool {
        }
 
        for _, dir := range gd.dirs {
-               full := filepath.Join(dir, path)
-               pkgdir, pkg := filepath.Split(full)
-               for _, p := range [...]string{
-                       full,
-                       full + ".gox",
-                       pkgdir + "lib" + pkg + ".so",
-                       pkgdir + "lib" + pkg + ".a",
-                       full + ".o",
-               } {
-                       if fi, err := os.Stat(p); err == nil && !fi.IsDir() {
-                               return true
-                       }
+               full := filepath.Join(dir, path) + ".gox"
+               if fi, err := os.Stat(full); err == nil && !fi.IsDir() {
+                       return true
                }
        }