diff options
Diffstat (limited to 'src/cmd/link/internal/ld/data.go')
-rw-r--r-- | src/cmd/link/internal/ld/data.go | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cmd/link/internal/ld/data.go b/src/cmd/link/internal/ld/data.go index 452332367c..3c92e26300 100644 --- a/src/cmd/link/internal/ld/data.go +++ b/src/cmd/link/internal/ld/data.go @@ -1868,6 +1868,11 @@ func (ctxt *Link) dodata() { datsize = Rnd(datsize, int64(sect.Align)) sect.Vaddr = uint64(datsize) for _, s := range dwarfp[i:] { + // Syms can (incorrectly) appear twice on the list. Ignore repeats. + // See golang.org/issue/21566. + if s.Type == SRODATA { + continue + } if s.Type != SDWARFINFO { break } |