diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-05-26 19:38:28 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-05-26 21:58:19 -0700 |
| commit | 4751356d7f1da157665d37e29216628e61ddf079 (patch) | |
| tree | 4d703caff2eec93161d5f37737b24fa87073053b /test/behavior/eval.zig | |
| parent | f2e8c79763723e394f57af84af977d91652568b5 (diff) | |
| download | zig-4751356d7f1da157665d37e29216628e61ddf079.tar.gz zig-4751356d7f1da157665d37e29216628e61ddf079.zip | |
clean up some behavior tests
* improve names
* properly categorize a couple of bug cases
* mark one as already passing
Diffstat (limited to 'test/behavior/eval.zig')
| -rw-r--r-- | test/behavior/eval.zig | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/behavior/eval.zig b/test/behavior/eval.zig index 63eef12207..4609b58ddb 100644 --- a/test/behavior/eval.zig +++ b/test/behavior/eval.zig @@ -1203,3 +1203,30 @@ test "equality of pointers to comptime const" { const a: i32 = undefined; comptime assert(&a == &a); } + +test "storing an array of type in a field" { + if (builtin.zig_backend != .stage1) return error.SkipZigTest; // TODO + + const S = struct { + fn doTheTest() void { + comptime var foobar = Foobar.foo(); + foo(foobar.str[0..10]); + } + const Foobar = struct { + myTypes: [128]type, + str: [1024]u8, + + fn foo() @This() { + comptime var foobar: Foobar = undefined; + foobar.str = [_]u8{'a'} ** 1024; + return foobar; + } + }; + + fn foo(arg: anytype) void { + _ = arg; + } + }; + + S.doTheTest(); +} |
