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.