Subject: Re: [boost] Should the clang, c++11 and libstdc++ configuration supported?
From: Daniel James (dnljms_at_[hidden])
Date: 2012-11-17 09:57:56
On 17 November 2012 13:59, Beman Dawes <bdawes_at_[hidden]> wrote:
> On Sat, Nov 17, 2012 at 7:43 AM, Daniel James <dnljms_at_[hidden]> wrote:
>> On 17 November 2012 12:04, Vicente J. Botet Escriba
>> <vicente.botet_at_[hidden]> wrote:
>>> clang compiler is not delivered with a C++11 standard library. When
>>> compiling on c++11 mode, some boost libraries (in particular, Boost.Thread,
>>> Boost.SmartPtr, Boost.Test) are expecting to have a C++11 standard library.
>>> This mean that the user needs to install the latest version of libc++.
>> Are you sure about that?
> Like Daniel, I'm not sure that "clang compiler is not delivered with a
> C++11 standard library." is correct. Doesn't the way Clang gets
> "delivered" depend on the platform and distribution involved? I've
> only use Clang a few times, but IIRC all the distributions I've used
> supplied a C++ standard library as part of the package.
That wasn't what I meant (it'd have been smarter if I did). Like
intel, clang is different everywhere. It often uses the native gcc
standard library, which is occasionally an old one with no C++11
support. Because apple stopped updating gcc after 4.2, the default
version of libstdc++ doesn't have C++11 support. I'm sure it's
possible to use a more recent version, but I've never tried.
I'm really not sure if this is a real problem. The only 'real' case
I've seen was a bug report from someone using unordered in C++11 mode
with a C++03 std::allocator. But I think things like move support were
introduced earlier than allocator support pretty much everywhere.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk