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>