Commit e94b9d41 authored by Egon Elbre's avatar Egon Elbre Committed by Alex Brainman

cmd/link/internal/ld: fix external linking on windows

gcc on windows writes invalid location for .debug_gdb_scripts
which causes the executable loading to fail.

Fixes #20183

Change-Id: I5134013bc926b44a55b528f66ab79555855d1f4d
Reviewed-on: https://go-review.googlesource.com/42651Reviewed-by: default avatarAlex Brainman <alex.brainman@gmail.com>
Run-TryBot: Alex Brainman <alex.brainman@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
parent 4b2f7b4b
...@@ -1448,6 +1448,11 @@ func writearanges(ctxt *Link, syms []*Symbol) []*Symbol { ...@@ -1448,6 +1448,11 @@ func writearanges(ctxt *Link, syms []*Symbol) []*Symbol {
} }
func writegdbscript(ctxt *Link, syms []*Symbol) []*Symbol { func writegdbscript(ctxt *Link, syms []*Symbol) []*Symbol {
if Linkmode == LinkExternal && Headtype == objabi.Hwindows {
// gcc on Windows places .debug_gdb_scripts to a wrong location
// which causes program not to run. See https://golang.org/issue/20183
return syms
}
if gdbscript != "" { if gdbscript != "" {
s := ctxt.Syms.Lookup(".debug_gdb_scripts", 0) s := ctxt.Syms.Lookup(".debug_gdb_scripts", 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment