http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51705
--- Comment #41 from Ed Schouten <ed at 80386 dot nl> 2012-01-09 22:48:35 UTC --- (In reply to comment #40) > There are several C++11 features which clang does not support, which g++ does. > clang also defines __cplusplus == 201103L, despite not implementing large > parts > of the C++11 standard. > > Worse, clang does not have an equivalent of fixincludes, so if these g++-only > features were used, with clang you would be stuck with uncompilable code. > > Perhaps the change to c++11 should have been done differently, but if we did > what you suggest we would be no better off, as no compiler (not g++, not > clang, > not visual studio, not icc) would define __cplusplus == 201103L for several > years. In fact, no open source compiler would yet have defined it for C++03! > > However, I can see this conversation is going around in circles. But this is where you completely miss the point: Clang does not invoke itself with -std=c++11 during its own build procedure.