[PATCH] readelf: Display the base symbol version as empty string
Jan Beulich
jbeulich@suse.com
Fri Nov 7 14:32:41 GMT 2025
On 06.11.2025 02:18, H.J. Lu wrote:
> Update readelf to display the base symbol version as
>
> Symbol table for image contains 5 entries:
> Num: Value Size Type Bind Vis Ndx Name
> 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
> 1: 0000000000003008 0 OBJECT GLOBAL DEFAULT 10 bar@@
> 2: 0000000000000000 0 OBJECT GLOBAL DEFAULT ABS VERS_1
> 3: 0000000000003008 0 OBJECT GLOBAL DEFAULT 10 bar@@VERS_1
> 4: 0000000000003000 0 OBJECT GLOBAL DEFAULT 10 foo@
>
> instead of
>
> Symbol table for image contains 5 entries:
> Num: Value Size Type Bind Vis Ndx Name
> 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
> 1: 0000000000003008 0 OBJECT GLOBAL DEFAULT 10 bar
> 2: 0000000000000000 0 OBJECT GLOBAL DEFAULT ABS VERS_1
> 3: 0000000000003008 0 OBJECT GLOBAL DEFAULT 10 bar@@VERS_1
> 4: 0000000000003000 0 OBJECT GLOBAL DEFAULT 10 foo
>
> That is bar@@ and foo@ vs bar and foo.
>
> binutils/
>
> PR binutils/33599
> * readelf.c (process_version_sections): Replace 0x8001 with
> (VERSYM_HIDDEN | VERSYM_BASE).
> (get_symbol_version_string): Likewise. Return "" for the base
> version.
>
> include/
>
> PR binutils/33599
> * elf/common.h (VERSYM_BASE): New.
>
> ld/
>
> PR binutils/33599
> * testsuite/ld-elf/pr33599.d: New file.
> * testsuite/ld-elf/pr33599.map: Likewise.
> * testsuite/ld-elf/pr33599.s: Likewise.
>
> OK for master?
Yes.
Jan
More information about the Binutils
mailing list