]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r328305: libcxxrt: Move mangled symbols out of extern "C++" in Version.map
authoremaste <emaste@FreeBSD.org>
Tue, 30 Jan 2018 01:13:06 +0000 (01:13 +0000)
committeremaste <emaste@FreeBSD.org>
Tue, 30 Jan 2018 01:13:06 +0000 (01:13 +0000)
commit62bbbc92a6535f3d05535b4912482067a55ea2f7
tree6e6608edbd4834c7813faac99b46cc56d35b4371
parentd23a4abfa0f53a6c2cfb527e6748858f4ac3a306
MFC r328305: libcxxrt: Move mangled symbols out of extern "C++" in Version.map

r260553 added a number of mangled C++ symbols to Version.map inside of
an existing `extern "C++"` block.

ld.bfd 2.17.50 treats `extern "C++"` permissively and will match both
mangled and demangled symbols against the strings in the version map
block.  ld.lld interprets `extern "C++"` strictly, and matches only
demangled symbols.

I believe lld's behaviour is correct.  Contemporary versions of ld.bfd
also behave as lld does, so move the mangled symbols out of the
`extern "C++"` block.

PR: 225128, 185663
Sponsored by: The FreeBSD Foundation
lib/libcxxrt/Version.map