Commit e79fef8e authored by Shawn Walker-Salas's avatar Shawn Walker-Salas Committed by Brad Fitzpatrick

cmd/link: external linking can fail on Solaris 11.2+

Workaround external linking issues encountered on Solaris 11.2+ due to
the go.o object file being created with a NULL STT_FILE symtab entry by
using a placeholder name.

Fixes #14957

Change-Id: I89c501b4c548469f3c878151947d35588057982b
Reviewed-on: https://go-review.googlesource.com/21636Reviewed-by: 's avatarDavid Crawshaw <crawshaw@golang.org>
parent 3fafe2e8
......@@ -198,7 +198,9 @@ func Asmelfsym() {
// Some linkers will add a FILE sym if one is not present.
// Avoid having the working directory inserted into the symbol table.
putelfsyment(0, 0, 0, STB_LOCAL<<4|STT_FILE, SHN_ABS, 0)
// It is added with a name to avoid problems with external linking
// encountered on some versions of Solaris. See issue #14957.
putelfsyment(putelfstr("go.go"), 0, 0, STB_LOCAL<<4|STT_FILE, SHN_ABS, 0)
numelfsym++
elfbind = STB_LOCAL
......
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