• David Lazar's avatar
    cmd/internal/obj: avoid duplicate file name symbols · 301149b9
    David Lazar authored
    The meaning of Version=1 was overloaded: it was reserved for file name
    symbols (to avoid conflicts with non-file name symbols), but was also
    used to mean "give me a fresh version number for this symbol."
    
    With the new inlining tree, the same file name symbol can appear in
    multiple entries, but each one would become a distinct symbol with its
    own version number.
    
    Now, we avoid duplicating symbols by using Version=0 for file name
    symbols and we avoid conflicts with other symbols by prefixing the
    symbol name with "gofile..".
    
    Change-Id: I8d0374053b8cdb6a9ca7fb71871b69b4dd369a9c
    Reviewed-on: https://go-review.googlesource.com/37234
    Run-TryBot: David Lazar <lazard@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarAustin Clements <austin@google.com>
    Reviewed-by: 's avatarRuss Cox <rsc@golang.org>
    301149b9
sym.go 2.77 KB