================
@@ -8461,8 +8461,10 @@ TreeTransform<Derived>::TransformSwitchStmt(SwitchStmt 
*S) {
 
   // Transform the body of the switch statement.
   StmtResult Body = getDerived().TransformStmt(S->getBody());
+  // Finish the switch even on error to pop it from Sema's switch stack.
   if (Body.isInvalid())
-    return StmtError();
+    return getDerived().RebuildSwitchStmtBody(S->getSwitchLoc(), Switch.get(),
+                                              nullptr);
----------------
Sirraide wrote:

```suggestion
```

Just delete all of this and fall through to the call to 
`RebuildSwitchStmtBody()` below that we already have (`Body.get()` below will 
be nullptr in this case)

(github messed up the formatting of this suggestion a bit but you can probably 
figure it out)

https://github.com/llvm/llvm-project/pull/211162
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to