[clang] [clang] [Sema] Suggest [[noreturn]] for void functions that always throw (PR #146234)

Timm Baeder via cfe-commits cfe-commits at lists.llvm.org
Sun Jun 29 07:17:40 PDT 2025


================
@@ -1979,6 +1979,13 @@ void clang::inferNoReturnAttr(Sema &S, const Decl *D) {
   if (!FD->hasAttr<NoReturnAttr>() && !FD->hasAttr<InferredNoReturnAttr>() &&
       isKnownToAlwaysThrow(FD)) {
     NonConstFD->addAttr(InferredNoReturnAttr::CreateImplicit(S.Context));
+
+    // Conditionally, emit the suggestion warning.
+    if (!Diags.isIgnored(diag::warn_suggest_noreturn_function,
----------------
tbaederr wrote:

Why the `isIgnored` check?

https://github.com/llvm/llvm-project/pull/146234


More information about the cfe-commits mailing list