https://sourceware.org/bugzilla/show_bug.cgi?id=28243
Bug ID: 28243
Summary: ld: Assigning a non-default symbol to a different
version node should warn
Product: binutils
Version: unspecified
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: ld
Assignee: unassigned at sourceware dot org
Reporter: i at maskray dot me
Target Milestone: ---
cat > ./a.s <<eof
.symver foo, foo@v1
.globl foo
foo:
eof
cat > ./ver <<eof
v1 {};
v2 { foo; };
eof
# Note that v2 { foo; } is ignored.
ld/ld-new -shared --version-script=ver a.o -o a.so
.dynsym has foo@v1.
This is error-prone and it'd be nice to report a warning.
(The gold output has both foo@v1 and foo@@v2. You might call it a bug because
you consider GNU ld the standard, but I'll insist that it's the design flaw of
the assembler @ syntax.
Linkers wouldn't need indirection complexity or combining version complexity if
the ",remove" semantics were used in the beginning.)
--
You are receiving this mail because:
You are on the CC list for the bug.