[cfe-commits] [libcxx] r124293 - /libcxx/trunk/include/__config

Douglas Gregor dgregor at apple.com
Wed Jan 26 09:03:25 PST 2011


On Jan 26, 2011, at 8:51 AM, Sean Hunt wrote:

> On 11-01-26 10:39 AM, Douglas Gregor wrote:
>> Author: dgregor
>> Date: Wed Jan 26 09:39:56 2011
>> New Revision: 124293
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=124293&view=rev
>> Log:
>> Inline namespaces are always available in Clang. Rely on that without
>> testing via __has_feature, since __has_feature for C++0x features no
>> longer evaluates true in C++98/03 mode.
>> 
>> Also, eliminate the redundant using directive. Inline namespaces make
>> their members visible in the enclosing namespace automatically.
> 
> I think if we always provide inline namespaces, their __has_feature 
> should be true irrespective of C++0x mode.


We always provide rvalue references, variadic templates, and a number of other features, but complain about them with extension warnings. However, we shouldn't advertise a C++0x feature to programs unless we're actually in C++0x mode, since that entices programmers into writing non-conformant code.

	- Doug



More information about the cfe-commits mailing list