[clang] [clang][Sema] Combine fallout warnings to just one warning (PR #127546)
via cfe-commits
cfe-commits at lists.llvm.org
Tue Feb 18 13:50:26 PST 2025
================
@@ -696,12 +661,12 @@ static void CheckFallThroughForBody(Sema &S, const Decl *D, const Stmt *Body,
if (CD.checkDiagnostics(Diags, ReturnsVoid, HasNoReturn))
return;
SourceLocation LBrace = Body->getBeginLoc(), RBrace = Body->getEndLoc();
- auto EmitDiag = [&](SourceLocation Loc, unsigned DiagID) {
+ auto EmitDiag = [&](SourceLocation Loc, unsigned DiagID, unsigned FunMode) {
----------------
Sirraide wrote:
Hmm, looking at how this has turned out, I think the entire lambda body can just be
```c++
if (DiagID)
S.Diag(Loc, DiagID) << CD.FunMode;
```
and then use `EmitDiag` instead of `S.Diag` everywhere in the `switch` statement below. That way we don’t have to think too hard about when a diag id might or might not be `0`. That also should allow us to remove the `IsCoroutine`-related checks again.
https://github.com/llvm/llvm-project/pull/127546
More information about the cfe-commits
mailing list