From 83e2d3fb3701d77c8177f7b2b164cbd7c790a3ed Mon Sep 17 00:00:00 2001 From: Cody Tapscott Date: Sat, 8 Oct 2022 11:29:49 -0700 Subject: [PATCH] stage1: Skip new tests that never passed in stage1 This gets the behavior tests passing for stage1 again. --- test/behavior.zig | 3 ++- test/behavior/align.zig | 2 ++ test/behavior/bugs/11816.zig | 1 + test/behavior/bugs/12723.zig | 11 +++++++++++ test/behavior/bugs/12801-1.zig | 1 + test/behavior/bugs/12801-2.zig | 1 + test/behavior/enum.zig | 7 ------- test/behavior/eval.zig | 2 ++ test/behavior/packed-struct.zig | 1 + 9 files changed, 21 insertions(+), 8 deletions(-) create mode 100644 test/behavior/bugs/12723.zig diff --git a/test/behavior.zig b/test/behavior.zig index 4e1c2ba35a8fd1950a53ab99b09b94c0a92a0ea9..44559d45d6716d2b868ab6467d49fa5e15145e8b 100644 --- a/test/behavior.zig +++ b/test/behavior.zig @@ -89,7 +89,6 @@ test { _ = @import("behavior/bugs/12551.zig"); _ = @import("behavior/bugs/12644.zig"); _ = @import("behavior/bugs/12680.zig"); - _ = @import("behavior/bugs/12776.zig"); _ = @import("behavior/bugs/12786.zig"); _ = @import("behavior/bugs/12794.zig"); _ = @import("behavior/bugs/12801-1.zig"); @@ -187,6 +186,8 @@ test { _ = @import("behavior/packed_struct_explicit_backing_int.zig"); _ = @import("behavior/empty_union.zig"); _ = @import("behavior/inline_switch.zig"); + _ = @import("behavior/bugs/12723.zig"); + _ = @import("behavior/bugs/12776.zig"); } if (builtin.os.tag != .wasi) { diff --git a/test/behavior/align.zig b/test/behavior/align.zig index a131cc8df73ba6b9ddb7344829c7c1123f062b08..2ebdda341ac08f4b3eb0124289e2391c46a34252 100644 --- a/test/behavior/align.zig +++ b/test/behavior/align.zig @@ -566,6 +566,8 @@ test "@alignCast null" { } test "alignment of slice element" { + if (builtin.zig_backend == .stage1) return error.SkipZigTest; + const a: []align(1024) const u8 = undefined; try expect(@TypeOf(&a[0]) == *align(1024) const u8); } diff --git a/test/behavior/bugs/11816.zig b/test/behavior/bugs/11816.zig index 639212e098e3fa9eccf9be8e3731ec1541975b56..5b6c9bd31962d6c397e6d2f375d1966709bd6d9b 100644 --- a/test/behavior/bugs/11816.zig +++ b/test/behavior/bugs/11816.zig @@ -3,6 +3,7 @@ const builtin = @import("builtin"); test { if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage1) return error.SkipZigTest; var x: u32 = 3; const val: usize = while (true) switch (x) { diff --git a/test/behavior/bugs/12723.zig b/test/behavior/bugs/12723.zig new file mode 100644 index 0000000000000000000000000000000000000000..6768444545cb8c801c0f1304927d4e67463d95f8 --- /dev/null +++ b/test/behavior/bugs/12723.zig @@ -0,0 +1,11 @@ +const expect = @import("std").testing.expect; + +// This test causes a compile error on stage1 regardless of whether +// the body of the test is comptime-gated or not. To workaround this, +// we gate the inclusion of the test file. +test "Non-exhaustive enum backed by comptime_int" { + const E = enum(comptime_int) { a, b, c, _ }; + comptime var e: E = .a; + e = @intToEnum(E, 378089457309184723749); + try expect(@enumToInt(e) == 378089457309184723749); +} diff --git a/test/behavior/bugs/12801-1.zig b/test/behavior/bugs/12801-1.zig index ff94382d1fcb3d5b3826072a23cb3a9e1c430bd2..b1f565e47fee69e952d2b3e9c3e45ea283519ccb 100644 --- a/test/behavior/bugs/12801-1.zig +++ b/test/behavior/bugs/12801-1.zig @@ -8,6 +8,7 @@ fn capacity_() u64 { test { if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage1) return error.SkipZigTest; try std.testing.expect((@This(){}).capacity() == 64); } diff --git a/test/behavior/bugs/12801-2.zig b/test/behavior/bugs/12801-2.zig index f98fcfbcff131e483f2efc8f68aa4a11b5fb37e8..298e4f96c16ec430974e7d42e8eb9434e5706896 100644 --- a/test/behavior/bugs/12801-2.zig +++ b/test/behavior/bugs/12801-2.zig @@ -14,6 +14,7 @@ const Auto = struct { } }; test { + if (builtin.zig_backend == .stage1) return error.SkipZigTest; if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO diff --git a/test/behavior/enum.zig b/test/behavior/enum.zig index 114090c78ed11376bf74f810c57c65c588861e94..5cb89ffa32bbfec07a0a66c7083ab527a1cde883 100644 --- a/test/behavior/enum.zig +++ b/test/behavior/enum.zig @@ -1169,10 +1169,3 @@ test "Non-exhaustive enum with nonstandard int size behaves correctly" { const E = enum(u15) { _ }; try expect(@sizeOf(E) == @sizeOf(u15)); } - -test "Non-exhaustive enum backed by comptime_int" { - const E = enum(comptime_int) { a, b, c, _ }; - comptime var e: E = .a; - e = @intToEnum(E, 378089457309184723749); - try expect(@enumToInt(e) == 378089457309184723749); -} diff --git a/test/behavior/eval.zig b/test/behavior/eval.zig index da93ebc83194e60bd986121873a0d04a0aea7372..c2d3162919af155b38f0d6f50f7417968f1c1e4f 100644 --- a/test/behavior/eval.zig +++ b/test/behavior/eval.zig @@ -1339,6 +1339,8 @@ test "lazy value is resolved as slice operand" { } test "break from inline loop depends on runtime condition" { + if (builtin.zig_backend == .stage1) return error.SkipZigTest; + const S = struct { fn foo(a: u8) bool { return a == 4; diff --git a/test/behavior/packed-struct.zig b/test/behavior/packed-struct.zig index 46adee083d76b31011ad89db259ded92e86c0de8..5a878112b552905d7e2110c2b5bc37156332197d 100644 --- a/test/behavior/packed-struct.zig +++ b/test/behavior/packed-struct.zig @@ -585,6 +585,7 @@ test "runtime init of unnamed packed struct type" { } test "packed struct passed to callconv(.C) function" { + if (builtin.zig_backend == .stage1) return error.SkipZigTest; if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; -- 2.54.0