[clang] [Clang] eliminate -Winvalid-noreturn false positive after throw + unreachable try/catch blocks (PR #175443)
Yanzuo Liu via cfe-commits
cfe-commits at lists.llvm.org
Sun Jan 11 21:01:46 PST 2026
================
@@ -4740,11 +4740,20 @@ CFGBlock *CFGBuilder::VisitCXXTryStmt(CXXTryStmt *Terminator) {
// Save the current "try" context.
SaveAndRestore SaveTry(TryTerminatedBlock, NewTryTerminatedBlock);
- cfg->addTryDispatchBlock(TryTerminatedBlock);
+ cfg->addTryDispatchBlock(NewTryTerminatedBlock);
assert(Terminator->getTryBlock() && "try must contain a non-NULL body");
Block = nullptr;
- return addStmt(Terminator->getTryBlock());
+
+ CFGBlock *TryBodyEntry = addStmt(Terminator->getTryBlock());
+ if (TryBodyEntry) {
----------------
zwuis wrote:
`if (CFGBlock *TryBodyEntry = ...) {`
https://github.com/llvm/llvm-project/pull/175443
More information about the cfe-commits
mailing list