Boost logo

Boost :

Subject: Re: [boost] [config][clang] Does <boost/config/compiler/clang.hpp> need updating?
From: Christopher Jefferson (chris_at_[hidden])
Date: 2011-02-05 15:41:05

On 5 Feb 2011, at 19:46, Bryce Lelbach (wash) wrote:

> Hash: SHA1
> On Sat, 5 Feb 2011 10:26:20 -0800
> Doug Gregor <doug.gregor_at_[hidden]> wrote:
>> Clang itself is just now getting some C++0x support. It has rvalue
>> references, variadic templates, decltype, static_assert, and some
>> other goodies. We think it's in decent shape, but obviously we need
>> more testing coverage.
> On Darwin. On Linux, clang C++0x support is a moot point because clang-linux
> uses the GNU stdlib. Also, according to the regression tests, clang + libc++
> can't compile most of Boost.

I started those tests just a day ago. I managed to mess up both the user-config.jam, and stopping the results getting submitted to the official boost test page. Hopefully more reasonable tests should appear in the next couple of days.

Out of interest, how should I best add c++0x to clang? At the moment, I am just passing -std=c++0x as a compileflag.

> Part of the problem here is that GNU seems to make a policy of changing working
> parts of their C++(03/99) stdlib to use C++0x features that only G++ supports,
> without leaving the old, working C++03/C++99 code in place (the <iomanip> header
> change from 4.4 to 4.5 is an excellent example of this). Given that both Apple
> and Intel are targets of GNU's political attacks these days, and given that both
> Clang (an Apple supported compiler) and the intel compiler use the GNU stdlib on
> Linux, I suspect that GNU is intentionally trying to poison intel-linux and
> clang-linux.

I really wouldn't make a claim that strong. What is true is that each version of the libstdc++ is designed to run with exactly one version of g++. It uses the best features of that version of the compiler. libstdc++ is treated as just a sub-part of the g++ compiler.

Boost list run by bdawes at, gregod at, cpdaniel at, john at