Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Jan 2018 12:51:16 +0100
From:      Dimitry Andric <dim@FreeBSD.org>
To:        Ed Maste <emaste@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r328305 - head/lib/libcxxrt
Message-ID:  <F0B7A804-87F3-41A2-9FB2-76CBDFD544F5@FreeBSD.org>
In-Reply-To: <201801232241.w0NMfDWW002171@repo.freebsd.org>
References:  <201801232241.w0NMfDWW002171@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_C5C03FDE-AF29-4317-B0C8-11B1F174B9BC
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

On 23 Jan 2018, at 23:41, Ed Maste <emaste@freebsd.org> wrote:
>=20
> Author: emaste
> Date: Tue Jan 23 22:41:13 2018
> New Revision: 328305
> URL: https://svnweb.freebsd.org/changeset/base/328305
>=20
> Log:
>  libcxxrt: Move mangled symbols out of extern "C++" in Version.map
>=20
>  r260553 added a number of mangled C++ symbols to Version.map inside =
of
>  an existing `extern "C++"` block.
>=20
>  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.
>=20
>  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.
>=20
>  PR:		225128, 185663
>  MFC after:	1 week
>  Sponsored by:	The FreeBSD Foundation
>=20
> Modified:
>  head/lib/libcxxrt/Version.map
>=20
> Modified: head/lib/libcxxrt/Version.map
> =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
> --- head/lib/libcxxrt/Version.map	Tue Jan 23 22:18:45 2018	=
(r328304)
> +++ head/lib/libcxxrt/Version.map	Tue Jan 23 22:41:13 2018	=
(r328305)
> @@ -112,19 +112,6 @@ CXXABI_1.3 {
>         "typeinfo for void";
>         "typeinfo for wchar_t const*";
>         "typeinfo for wchar_t";
> -        # C++11 typeinfo not understood by our linker
> -        # std::nullptr_t
> -        _ZTIDn;_ZTIPDn;_ZTIPKDn;

Maybe, for readability, we should change these to unmangled form =
instead?

I didn't really understand why the file had mixed mangled and unmangled =
forms.

-Dimitry


--Apple-Mail=_C5C03FDE-AF29-4317-B0C8-11B1F174B9BC
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.2

iF0EARECAB0WIQR6tGLSzjX8bUI5T82wXqMKLiCWowUCWmhzNAAKCRCwXqMKLiCW
ow+gAKDpL+4heH7EcRafMPwPMyTXLFpEkgCfcZlezMU4zLRIcJXq9Y8+qhK90Xs=
=UP1H
-----END PGP SIGNATURE-----

--Apple-Mail=_C5C03FDE-AF29-4317-B0C8-11B1F174B9BC--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F0B7A804-87F3-41A2-9FB2-76CBDFD544F5>