diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2022-04-27 12:41:05 +0200 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2022-04-28 18:35:01 +0200 |
| commit | c1a98cd65d48693c9cfce5fbc5e5f5a1dbf4c1b7 (patch) | |
| tree | 198ff979342674e87ae14d1e2bf67cb833c42f33 /test/incremental/assert_function.8.zig | |
| parent | 46db5e2a44b38c92e97a438c4b6a67627cc12d16 (diff) | |
| download | zig-c1a98cd65d48693c9cfce5fbc5e5f5a1dbf4c1b7.tar.gz zig-c1a98cd65d48693c9cfce5fbc5e5f5a1dbf4c1b7.zip | |
test: set case name from initial filename for a sequence
Port more incremental tests.
Diffstat (limited to 'test/incremental/assert_function.8.zig')
| -rw-r--r-- | test/incremental/assert_function.8.zig | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/test/incremental/assert_function.8.zig b/test/incremental/assert_function.8.zig new file mode 100644 index 0000000000..c8c30cfac6 --- /dev/null +++ b/test/incremental/assert_function.8.zig @@ -0,0 +1,36 @@ +const builtin = @import("builtin"); + +extern "c" fn write(usize, usize, usize) usize; + +pub fn main() void { + var i: u32 = 0; + inline while (i < 4) : (i += 1) print(); + assert(i == 4); +} + +fn print() void { + switch (builtin.os.tag) { + .linux => { + asm volatile ("syscall" + : + : [number] "{rax}" (1), + [arg1] "{rdi}" (1), + [arg2] "{rsi}" (@ptrToInt("hello\n")), + [arg3] "{rdx}" (6), + : "rcx", "r11", "memory" + ); + }, + .macos => { + _ = write(1, @ptrToInt("hello\n"), 6); + }, + else => unreachable, + } +} + +pub fn assert(ok: bool) void { + if (!ok) unreachable; // assertion failure +} + +// error +// +// :3:21: error: unable to resolve comptime value |
