zig/test/behavior/bugs/10970.zig
2023-05-11 20:31:52 +02:00

21 lines
586 B
Zig

const builtin = @import("builtin");
fn retOpt() ?u32 {
return null;
}
test "breaking from a loop in an if statement" {
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
var cond = true;
const opt = while (cond) {
if (retOpt()) |opt| {
break opt;
}
break 1;
} else 2;
_ = opt;
}