1
0
mirror of https://github.com/golang/go synced 2024-11-11 19:41:36 -07:00

cmd/go: remove -w workaround for -buildmode=plugin on Darwin

The problem causing the assert in #21647 are fixed at this point,
along with various other linker issues with plugin + Darwin. With
this in mind, remove the "-ldflags=-w" workaround for plugin mode on
Darwin and re-enable the appropriate tests misc/cgo/testplugin

Fixes #21647.
Fixes #27502.

Change-Id: I5b662987b138b06cfc9e1f9f6d804cf682bd501a
Reviewed-on: https://go-review.googlesource.com/c/go/+/206198
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
This commit is contained in:
Than McIntosh 2019-11-08 16:11:44 -05:00
parent 795e8c2317
commit 275a7be3da
2 changed files with 1 additions and 8 deletions

View File

@ -14,7 +14,6 @@ import (
"os"
"os/exec"
"path/filepath"
"runtime"
"strings"
"testing"
"time"
@ -114,11 +113,7 @@ func run(t *testing.T, bin string, args ...string) string {
func TestDWARFSections(t *testing.T) {
// test that DWARF sections are emitted for plugins and programs importing "plugin"
if runtime.GOOS != "darwin" {
// On macOS, for some reason, the linker doesn't add debug sections to .so,
// see issue #27502.
goCmd(t, "run", "./checkdwarf/main.go", "plugin2.so", "plugin2.UnexportedNameReuse")
}
goCmd(t, "run", "./checkdwarf/main.go", "plugin2.so", "plugin2.UnexportedNameReuse")
goCmd(t, "run", "./checkdwarf/main.go", "./host.exe", "main.main")
}

View File

@ -200,8 +200,6 @@ func buildModeInit() {
case "linux/amd64", "linux/arm", "linux/arm64", "linux/386", "linux/s390x", "linux/ppc64le",
"android/amd64", "android/arm", "android/arm64", "android/386":
case "darwin/amd64":
// Skip DWARF generation due to #21647
forcedLdflags = append(forcedLdflags, "-w")
case "freebsd/amd64":
default:
base.Fatalf("-buildmode=plugin not supported on %s\n", platform)