categorize behavior/bugs/<issueno>.zig tests

This commit is contained in:
Veikka Tuominen
2024-01-02 17:33:41 +02:00
committed by Andrew Kelley
parent 282ff8d3bd
commit 804cee3b93
172 changed files with 2080 additions and 3268 deletions
+34
View File
@@ -367,3 +367,37 @@ test "while loop with comptime true condition needs no else block to return valu
};
try expect(x == 69);
}
test "int returned from switch in while" {
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
var x: u32 = 3;
const val: usize = while (true) switch (x) {
1 => break 2,
else => x -= 1,
};
try std.testing.expect(val == 2);
}
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
const S = struct {
fn retOpt() ?u32 {
return null;
}
};
var cond = true;
_ = &cond;
const opt = while (cond) {
if (S.retOpt()) |opt| {
break opt;
}
break 1;
} else 2;
_ = opt;
}