https://bugs.llvm.org/show_bug.cgi?id=40176
Bug ID: 40176
Summary: problem with lld and wildcard characters in version
scripts
Product: lld
Version: unspecified
Hardware: PC
OS: FreeBSD
Status: NEW
Severity: enhancement
Priority: P
Component: ELF
Assignee: unassignedb...@nondot.org
Reporter: t...@coosemans.org
CC: llvm-bugs@lists.llvm.org, peter.sm...@linaro.org
% cat test.c
void
foo( void ) {
}
void
bar( void ) {
}
% cat test.ver
FOO {
foo*;
};
BAR {
*;
};
% clang60 -shared test.c -o libtest.so -s -Wl,--version-script=test.ver
% readelf -s libtest.so
Symbol table (.dynsym) contains 7 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
2: 0000000000000000 0 FUNC WEAK DEFAULT UND
__cxa_finalize@FBSD_1.0 (4)
3: 00000000000010dc 0 FUNC GLOBAL DEFAULT 14 _fini@@BAR (3)
4: 00000000000010cc 0 FUNC GLOBAL DEFAULT 13 _init@@BAR (3)
5: 0000000000001090 6 FUNC GLOBAL DEFAULT 12 bar@@BAR (3)
6: 0000000000001080 6 FUNC GLOBAL DEFAULT 12 foo@@BAR (3)
Note foo@@BAR instead of foo@@FOO. It's correct when compiling with
-fuse-ld=bfd.
This affects building Qt5. Many symbols should have a Qt_5_PRIVATE_API version
label but have a Qt5 label instead.
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs