[Bug bootstrap/51705] [4.7 Regression] FreeBSD uses unsupported C++11 features when __cplusplus == 201103L
ed at 80386 dot nl
gcc-bugzilla@gcc.gnu.org
Mon Jan 9 22:50:00 GMT 2012
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.
More information about the Gcc-bugs
mailing list