• Austin Clements's avatar
    cmd/internal/obj: don't dedup symbols in WriteObjFile · c0281afd
    Austin Clements authored
    Currently, WriteObjFile deduplicates symbols by name. This is a
    strange and unexpected place to do this. But, worse, there's no
    checking that it's reasonable to deduplicate two symbols, so this
    makes it incredibly easy to mask errors involving duplicate symbols.
    Dealing with duplicate symbols is better left to the linker. We're
    also about to introduce multiple symbols with the same name but
    different ABIs/versions, which would make this deduplication more
    complicated. We just removed the only part of the compiler that
    actually depended on this behavior.
    
    This CL removes symbol deduplication from WriteObjFile, since it is no
    longer needed.
    
    For #27539.
    
    Change-Id: I650c550e46e83f95c67cb6c6646f9b2f7f10df30
    Reviewed-on: https://go-review.googlesource.com/c/146558
    Run-TryBot: Austin Clements <austin@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarCherry Zhang <cherryyz@google.com>
    c0281afd
objfile.go 22.3 KB