mirror of
https://github.com/ziglang/zig.git
synced 2024-11-28 08:02:32 +00:00
21 lines
357 B
Zig
21 lines
357 B
Zig
|
pub fn main() void {
|
||
|
assert(foo(false) == @as(i32, 20));
|
||
|
assert(foo(true) == @as(i32, 30));
|
||
|
}
|
||
|
|
||
|
fn assert(ok: bool) void {
|
||
|
if (!ok) unreachable;
|
||
|
}
|
||
|
|
||
|
fn foo(ok: bool) i32 {
|
||
|
const val: i32 = blk: {
|
||
|
var x: i32 = 1;
|
||
|
if (!ok) break :blk x + @as(i32, 9);
|
||
|
break :blk x + @as(i32, 19);
|
||
|
};
|
||
|
return val + 10;
|
||
|
}
|
||
|
|
||
|
// run
|
||
|
//
|