Hahnfeld marked an inline comment as done. Hahnfeld added a comment. In http://reviews.llvm.org/D15920#347352, @beanz wrote:
> Is it correct to assume that all the test case changes are needed just to > make the tests pass if you set CLANG_DEFAULT_CXX_STDLIB=libc++? > > [...] Yes, most of the tests check for the correct `libstdc++` include paths which are not met with `libc++`. ================ Comment at: lib/Driver/ToolChain.cpp:549-550 @@ -536,9 +548,4 @@ + ToolChain::CXXStdlibType ToolChain::GetCXXStdlibType(const ArgList &Args) const{ - if (Arg *A = Args.getLastArg(options::OPT_stdlib_EQ)) { - StringRef Value = A->getValue(); - if (Value == "libc++") - return ToolChain::CST_Libcxx; - if (Value == "libstdc++") - return ToolChain::CST_Libstdcxx; - getDriver().Diag(diag::err_drv_invalid_stdlib_name) - << A->getAsString(Args); + ToolChain::CXXStdlibType Type; + bool HasValidType = false; ---------------- I have moved the behaviour from `Darwin::TranslateArgs` to `Darwin::GetDefaultCXXStdlibType` and added this method for `Bitrig` as well (which was straightforward). `MIPS` only allows `libc++` so there is nothing the user can choose from... I would have also liked to implement this for `FreeBSD` and `NetBSD` but their default library is dependent on the system version. While this wouldn't be a problem and could be implemented in `GetDefaultCXXStdlibType`, this would still be overriden by `CLANG_DEFAULT_CXX_STDLIB` which unfortunately fails the tests in `test/Driver/{freebsd.c,netbsd.c}`. Is it ok to leave this for now? http://reviews.llvm.org/D15920 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits