Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 3 Feb 2014 18:54:46 +0000
From:      David Chisnall <theraven@FreeBSD.org>
To:        Alexander Kabaev <kabaev@gmail.com>
Cc:        svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, Stefan Farfeleder <stefanf@FreeBSD.org>, Dimitry Andric <dim@FreeBSD.org>, src-committers@FreeBSD.org
Subject:   Re: svn commit: r261283 - in head: contrib/libc++ contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src etc/mtree lib/libc++ sys/sys tools/build/mk
Message-ID:  <73ED697C-09CC-49D6-8EBD-0F0E20232729@FreeBSD.org>
In-Reply-To: <20140203133254.243db1cd@kan.dyndns.org>
References:  <201401300744.s0U7iNLt016044@svn.freebsd.org> <20140203123235.GA1540@mole.fafoe.narf.at> <20140203133254.243db1cd@kan.dyndns.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 3 Feb 2014, at 18:32, Alexander Kabaev <kabaev@gmail.com> wrote:

> More than likely. It does appear libc++ does not go through same pains
> to maintain ABI stable as libstdc++ does. The lack of all and any
> symbol versions in shared library binary strongly suggests that not
> only they do not bother with ABI stability, they simply can't enforce
> it at the moment even if they wanted to.

libc++ aims to provide a stable ABI, however it does so in a manner that =
is intended to integrate with the source language, rather than by =
applying linker hacks post facto (which is very hard to do write with =
C++).  Every std:: class in libc++ is implemented inside a version =
namespace inside std, and then imported into std:: in the header.  =
ABI-breaking classes should be inside a new version namespace.

If you have examples where the ABI was not accidentally changed, then =
please report them as bugs and we will try to fix them.  If you just =
have unfounded supposition, then it is not helpful to the discussion.

David




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?73ED697C-09CC-49D6-8EBD-0F0E20232729>