summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorSzabolcs Nagy <nsz@port70.net>2016-12-03 20:52:43 +0000
committerRich Felker <dalias@aerifal.cx>2017-03-11 19:10:57 -0500
commitc9783e4d32e786c4b76bf77c6030111d9e79dbb7 (patch)
tree3f1796790b28f6343cadbdcf62aa0e8fbfca06a1 /README
parentfc85fb38605a8bf341c367b8ab0d36edab2bdbfc (diff)
downloadmusl-c9783e4d32e786c4b76bf77c6030111d9e79dbb7.tar.gz
musl-c9783e4d32e786c4b76bf77c6030111d9e79dbb7.tar.bz2
musl-c9783e4d32e786c4b76bf77c6030111d9e79dbb7.tar.xz
musl-c9783e4d32e786c4b76bf77c6030111d9e79dbb7.zip
treat STB_WEAK and STB_GNU_UNIQUE like STB_GLOBAL in find_sym
A weak symbol definition is not special during dynamic linking, so don't let a strong definition in a later module override it. (glibc dynamic linker allows overriding weak definitions if LD_DYNAMIC_WEAK is set, musl does not.) STB_GNU_UNIQUE means that the symbol is global, even if it is in a module that's loaded with RTLD_LOCAL, and all references resolve to the same definition. This semantics is only relevant for c++ plugin systems and even there it's often not what the user wants (so it can be turned off in g++ by -fno-gnu-unique when the c++ shared lib is compiled). In musl just treat it like STB_GLOBAL.
Diffstat (limited to 'README')
0 files changed, 0 insertions, 0 deletions