Probably better to debate this on the cfe-dev thread "Setting default dialect to C++11" than here. That said, it's far from the only target-dependent setting in the driver. There are things ranging from the default DWARF version to whether exceptions are on by default to whether Microsoft extensions are on by default. Personally I think mixing things up gets us better coverage; this is why we like having bots for a variety of platforms, and it's not just for the obvious backend reasons. --paulr
From: mehdi.am...@apple.com [mailto:mehdi.am...@apple.com] Sent: Wednesday, March 01, 2017 10:36 AM To: Sean Silva Cc: Robinson, Paul; cfe-commits Subject: Re: r296554 - [PS4] Set our default dialect to C++11. NFC for other targets. I’m not sure I find this nice to see this upstream. I not fond in general of this kind of difference in behavior. I don’t think it is good for clang to have different default for this kind of settings depending on the platform. It does not provide a very good user experience from a cross-platform point of view (i.e. my compiler behaves very differently when I target one platform instead of another). — Mehdi On Feb 28, 2017, at 11:22 PM, Sean Silva via cfe-commits <cfe-commits@lists.llvm.org<mailto:cfe-commits@lists.llvm.org>> wrote: Nice! -- Sean Silva On Tue, Feb 28, 2017 at 5:01 PM, Paul Robinson via cfe-commits <cfe-commits@lists.llvm.org<mailto:cfe-commits@lists.llvm.org>> wrote: Author: probinson Date: Tue Feb 28 19:01:10 2017 New Revision: 296554 URL: http://llvm.org/viewvc/llvm-project?rev=296554&view=rev Log: [PS4] Set our default dialect to C++11. NFC for other targets. Reapplies r296209 now that r296549 has fixed what really seems to be the last problematic test. Modified: cfe/trunk/lib/Frontend/CompilerInvocation.cpp Modified: cfe/trunk/lib/Frontend/CompilerInvocation.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Frontend/CompilerInvocation.cpp?rev=296554&r1=296553&r2=296554&view=diff ============================================================================== --- cfe/trunk/lib/Frontend/CompilerInvocation.cpp (original) +++ cfe/trunk/lib/Frontend/CompilerInvocation.cpp Tue Feb 28 19:01:10 2017 @@ -1582,7 +1582,11 @@ void CompilerInvocation::setLangDefaults case IK_PreprocessedCXX: case IK_ObjCXX: case IK_PreprocessedObjCXX: - LangStd = LangStandard::lang_gnucxx98; + // The PS4 uses C++11 as the default C++ standard. + if (T.isPS4()) + LangStd = LangStandard::lang_gnucxx11; + else + LangStd = LangStandard::lang_gnucxx98; break; case IK_RenderScript: LangStd = LangStandard::lang_c99; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org<mailto:cfe-commits@lists.llvm.org> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org<mailto:cfe-commits@lists.llvm.org> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits