diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2021-09-24 17:33:06 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2021-09-24 17:33:06 -0700 |
| commit | 42aa1ea115eca3dcc704eddf020ce87271a41174 (patch) | |
| tree | 3242b53425c599af929446e6776a2f6b3a0c6966 /test | |
| parent | 87fd502fb68f8f488e6eba6b1f7d70902d6bfe5a (diff) | |
| download | zig-42aa1ea115eca3dcc704eddf020ce87271a41174.tar.gz zig-42aa1ea115eca3dcc704eddf020ce87271a41174.zip | |
stage2: implement `@memset` and `@memcpy` builtins
Diffstat (limited to 'test')
| -rw-r--r-- | test/behavior/basic.zig | 18 | ||||
| -rw-r--r-- | test/behavior/misc.zig | 10 |
2 files changed, 18 insertions, 10 deletions
diff --git a/test/behavior/basic.zig b/test/behavior/basic.zig index 517162c8d4..f6876e29ad 100644 --- a/test/behavior/basic.zig +++ b/test/behavior/basic.zig @@ -170,3 +170,21 @@ test "string concatenation" { test "array mult operator" { try expect(mem.eql(u8, "ab" ** 5, "ababababab")); } + +test "memcpy and memset intrinsics" { + try testMemcpyMemset(); + // TODO add comptime test coverage + //comptime try testMemcpyMemset(); +} + +fn testMemcpyMemset() !void { + var foo: [20]u8 = undefined; + var bar: [20]u8 = undefined; + + @memset(&foo, 'A', foo.len); + @memcpy(&bar, &foo, bar.len); + + try expect(bar[0] == 'A'); + try expect(bar[11] == 'A'); + try expect(bar[19] == 'A'); +} diff --git a/test/behavior/misc.zig b/test/behavior/misc.zig index 5394e6fd14..9b3bf48366 100644 --- a/test/behavior/misc.zig +++ b/test/behavior/misc.zig @@ -5,16 +5,6 @@ const expectEqualStrings = std.testing.expectEqualStrings; const mem = std.mem; const builtin = @import("builtin"); -test "memcpy and memset intrinsics" { - var foo: [20]u8 = undefined; - var bar: [20]u8 = undefined; - - @memset(&foo, 'A', foo.len); - @memcpy(&bar, &foo, bar.len); - - if (bar[11] != 'A') unreachable; -} - test "slicing" { var array: [20]i32 = undefined; |
