Commit b993728f10

Andrew Kelley <andrew@ziglang.org>
2025-07-14 19:02:37
make it a behavior test instead
It's important to check for correct runtime behavior, rather than only checking that the compiler does not crash.
1 parent 29ac68b
Changed files (2)
test/behavior/switch_loop.zig
@@ -216,3 +216,13 @@ test "switch loop with pointer capture" {
     try S.doTheTest();
     try comptime S.doTheTest();
 }
+
+test "unanalyzed continue with operand" {
+    if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
+
+    @setRuntimeSafety(false);
+    label: switch (false) {
+        false => if (false) continue :label true,
+        true => {},
+    }
+}
test/cases/discard_labeled_switch_tag.zig
@@ -1,12 +0,0 @@
-// https://github.com/ziglang/zig/issues/24323
-
-export fn f() void {
-    const x: u32 = 0;
-    sw: switch (x) {
-        else => if (false) continue :sw undefined,
-    }
-}
-
-// compile
-// backend=stage2,llvm
-// target=native