tbaeder updated this revision to Diff 321022. tbaeder added a comment. Noticed similar/worse behavior for -rtlib. Expanded the patch to that and -unwindlib as well.
CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95915/new/ https://reviews.llvm.org/D95915 Files: clang/lib/Driver/ToolChain.cpp Index: clang/lib/Driver/ToolChain.cpp =================================================================== --- clang/lib/Driver/ToolChain.cpp +++ clang/lib/Driver/ToolChain.cpp @@ -884,8 +884,14 @@ else if (LibName == "platform") return GetDefaultRuntimeLibType(); - if (A) - getDriver().Diag(diag::err_drv_invalid_rtlib_name) << A->getAsString(Args); + if (A) { + static bool Warned = false; + if (!Warned) { + getDriver().Diag(diag::err_drv_invalid_rtlib_name) + << A->getAsString(Args); + Warned = true; + } + } return GetDefaultRuntimeLibType(); } @@ -910,9 +916,14 @@ } else if (LibName == "libgcc") return ToolChain::UNW_Libgcc; - if (A) - getDriver().Diag(diag::err_drv_invalid_unwindlib_name) - << A->getAsString(Args); + if (A) { + static bool Warned = false; + if (!Warned) { + getDriver().Diag(diag::err_drv_invalid_unwindlib_name) + << A->getAsString(Args); + Warned = true; + } + } return GetDefaultUnwindLibType(); } @@ -929,8 +940,14 @@ else if (LibName == "platform") return GetDefaultCXXStdlibType(); - if (A) - getDriver().Diag(diag::err_drv_invalid_stdlib_name) << A->getAsString(Args); + if (A) { + static bool Warned = false; + if (!Warned) { + getDriver().Diag(diag::err_drv_invalid_stdlib_name) + << A->getAsString(Args); + Warned = true; + } + } return GetDefaultCXXStdlibType(); }
Index: clang/lib/Driver/ToolChain.cpp =================================================================== --- clang/lib/Driver/ToolChain.cpp +++ clang/lib/Driver/ToolChain.cpp @@ -884,8 +884,14 @@ else if (LibName == "platform") return GetDefaultRuntimeLibType(); - if (A) - getDriver().Diag(diag::err_drv_invalid_rtlib_name) << A->getAsString(Args); + if (A) { + static bool Warned = false; + if (!Warned) { + getDriver().Diag(diag::err_drv_invalid_rtlib_name) + << A->getAsString(Args); + Warned = true; + } + } return GetDefaultRuntimeLibType(); } @@ -910,9 +916,14 @@ } else if (LibName == "libgcc") return ToolChain::UNW_Libgcc; - if (A) - getDriver().Diag(diag::err_drv_invalid_unwindlib_name) - << A->getAsString(Args); + if (A) { + static bool Warned = false; + if (!Warned) { + getDriver().Diag(diag::err_drv_invalid_unwindlib_name) + << A->getAsString(Args); + Warned = true; + } + } return GetDefaultUnwindLibType(); } @@ -929,8 +940,14 @@ else if (LibName == "platform") return GetDefaultCXXStdlibType(); - if (A) - getDriver().Diag(diag::err_drv_invalid_stdlib_name) << A->getAsString(Args); + if (A) { + static bool Warned = false; + if (!Warned) { + getDriver().Diag(diag::err_drv_invalid_stdlib_name) + << A->getAsString(Args); + Warned = true; + } + } return GetDefaultCXXStdlibType(); }
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits