On Wed, Jun 29, 2016 at 03:07:33PM -0700, Richard Smith wrote: > On Wed, Jun 29, 2016 at 2:48 PM, Joerg Sonnenberger via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > > > On Wed, Jun 29, 2016 at 12:09:37PM -0700, Richard Smith via cfe-dev wrote: > > > Hi all! > > > > > > I'd like to establish a policy for Clang's default language standard (if > > > none is specified with -std), as follows: > > > > > > Clang defaults to the most recent published standard for the selected > > > language that it fully implements. > > > > > > The practical impact of this is that clang++ will default to C++14 for > > C++ > > > compilations (for version 3.9 onwards) and will default to C++17 once our > > > implementation support is complete and the standard is published > > (whichever > > > happens later). > > > > I don't have a problem with the C11 default, because the language impact > > is minimal. That's quite different from C++ though and I am very > > reluctant to update the default language even to C++11. There is a lot > > of code in the wild that doesn't compile anymore due to stupid changes > > like user-defined string literals or the narrowing (warning) changes. > > Even worse are the nothrow changes for destructors, which silently break > > valid C++03 code. > > > Yes, those are real problems, but it's not reasonable for us to keep the > default at C++98/03 forever. GCC has already taken the plunge here, so a > lot of open-source code that doesn't work in C++11 onwards already > explicitly specifies an appropriate -std= flag.
As usual with many decisions in GNUland, they are not the ones to pay the price. Frankly, I don't understand your argument either. I find it perfectly reasonable to demand that software specifies which of multiple incompatible language versions it wants. This is even more important as the default environment of clang+libc++ allows a good majority of C++11 anyway. Joerg _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits