diff --git a/src/main/java/com/android/tools/r8/cf/code/CfSwitch.java b/src/main/java/com/android/tools/r8/cf/code/CfSwitch.java
index 9e883cf..e644be0 100644
--- a/src/main/java/com/android/tools/r8/cf/code/CfSwitch.java
+++ b/src/main/java/com/android/tools/r8/cf/code/CfSwitch.java
@@ -155,5 +155,6 @@
     for (CfLabel target : targets) {
       frameBuilder.verifyTarget(target);
     }
+    frameBuilder.setNoFrame();
   }
 }
diff --git a/src/test/java/com/android/tools/r8/cf/stackmap/SwitchStackFrameFallThroughTest.java b/src/test/java/com/android/tools/r8/cf/stackmap/SwitchStackFrameFallThroughTest.java
index 826005c..e552c0a 100644
--- a/src/test/java/com/android/tools/r8/cf/stackmap/SwitchStackFrameFallThroughTest.java
+++ b/src/test/java/com/android/tools/r8/cf/stackmap/SwitchStackFrameFallThroughTest.java
@@ -4,13 +4,11 @@
 
 package com.android.tools.r8.cf.stackmap;
 
-import static com.android.tools.r8.DiagnosticsMatcher.diagnosticType;
 import static org.junit.Assume.assumeTrue;
 
 import com.android.tools.r8.TestBase;
 import com.android.tools.r8.TestParameters;
 import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.graph.CfCodeDiagnostics;
 import java.io.IOException;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -51,10 +49,8 @@
         .addProgramClassFileData(SwitchStackFrameFallThroughTest$MainDump.dump())
         .setMinApi(parameters.getApiLevel())
         .addOptionsModification(options -> options.testing.readInputStackMaps = true)
-        .compileWithExpectedDiagnostics(
-            diagnostics -> {
-              diagnostics.assertWarningsMatch(diagnosticType(CfCodeDiagnostics.class));
-            });
+        .run(parameters.getRuntime(), Main.class)
+        .assertSuccessWithOutputLines("java.io.IOException");
   }
 
   public static class Main {
