diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2023-02-18 15:58:27 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2023-02-18 19:20:19 -0700 |
| commit | 8b05205bb71fca55569a9ff4cab89ec9e09640ba (patch) | |
| tree | 1bcc329a4a2d79b35f6ab5b6e8e6fcf8bc986f72 /test/behavior | |
| parent | e89bfedd8d68a731cb227327a325e16fc7812df9 (diff) | |
| download | zig-8b05205bb71fca55569a9ff4cab89ec9e09640ba.tar.gz zig-8b05205bb71fca55569a9ff4cab89ec9e09640ba.zip | |
implement error for unbounded for loops
Diffstat (limited to 'test/behavior')
| -rw-r--r-- | test/behavior/for.zig | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/behavior/for.zig b/test/behavior/for.zig index 20d43c6ff2..0c5ab392f4 100644 --- a/test/behavior/for.zig +++ b/test/behavior/for.zig @@ -378,3 +378,22 @@ test "raw pointer and slice" { try expect(buf[2] == 'a'); try expect(buf[3] == 'h'); } + +test "raw pointer and counter" { + if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + + var buf: [10]u8 = undefined; + const ptr: [*]u8 = &buf; + + for (ptr, 0..4) |*a, b| { + a.* = @intCast(u8, 'A' + b); + } + + try expect(buf[0] == 'A'); + try expect(buf[1] == 'B'); + try expect(buf[2] == 'C'); + try expect(buf[3] == 'D'); +} |
