authorgravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2022-10-06 22:27:32-04:00
committergravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2022-10-25 05:11:28-04:00
log525dcaecba43f9931aff69fd7dd0cd5b443c2859
tree75990c8d6e4948cb35f1993a156de477357fb54a
parent45c667eb21b1edde991435871523ece82793b449

behavior: enable stage2_c tests that are currently passing

Also fix C warnings triggered by these tests.

42 files changed, 3 insertions(+), 132 deletions(-)

src/codegen/c.zig+3-2
......@@ -1363,7 +1363,8 @@ pub const DeclGen = struct {
13631363 }
13641364 const name_end = buffer.items.len;
13651365
1366 try bw.print("[{d}];\n", .{t.arrayLenIncludingSentinel()});
1366 const c_len = t.arrayLenIncludingSentinel();
1367 try bw.print("[{d}];\n", .{if (c_len > 0) c_len else 1});
13671368
13681369 const rendered = buffer.toOwnedSlice();
13691370 errdefer dg.typedefs.allocator.free(rendered);
......@@ -3514,7 +3515,7 @@ fn airOptionalPayloadPtr(f: *Function, inst: Air.Inst.Index) !CValue {
35143515 const payload_ty = opt_ty.optionalChild(&buf);
35153516
35163517 if (!payload_ty.hasRuntimeBitsIgnoreComptime()) {
3517 return operand;
3518 return CValue.undefined_ptr;
35183519 }
35193520
35203521 if (opt_ty.optionalReprIsPayload()) {
test/behavior/align.zig-7
......@@ -7,8 +7,6 @@ const assert = std.debug.assert;
77var foo: u8 align(4) = 100;
88
99test "global variable alignment" {
10 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
11
1210 comptime try expect(@typeInfo(@TypeOf(&foo)).Pointer.alignment == 4);
1311 comptime try expect(@TypeOf(&foo) == *align(4) u8);
1412 {
......@@ -235,7 +233,6 @@ fn addUnalignedSlice(a: []align(1) const u32, b: []align(1) const u32) u32 {
235233}
236234
237235test "specifying alignment allows pointer cast" {
238 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
239236 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
240237
241238 try testBytesAlign(0x33);
......@@ -301,7 +298,6 @@ fn noop4() align(4) void {}
301298
302299test "function alignment" {
303300 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
304 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
305301 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
306302
307303 // function alignment is a compile error on wasm32/wasm64
......@@ -316,7 +312,6 @@ test "function alignment" {
316312
317313test "implicitly decreasing fn alignment" {
318314 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
319 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
320315 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
321316 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
322317
......@@ -341,7 +336,6 @@ fn alignedBig() align(16) i32 {
341336test "@alignCast functions" {
342337 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
343338 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
344 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
345339 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
346340
347341 // function alignment is a compile error on wasm32/wasm64
......@@ -546,7 +540,6 @@ test "comptime alloc alignment" {
546540 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
547541 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
548542 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
549 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
550543 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
551544
552545 comptime var bytes1 = [_]u8{0};
test/behavior/alignof.zig-2
......@@ -12,7 +12,6 @@ const Foo = struct {
1212
1313test "@alignOf(T) before referencing T" {
1414 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
15 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
1615 comptime try expect(@alignOf(Foo) != maxInt(usize));
1716 if (native_arch == .x86_64) {
1817 comptime try expect(@alignOf(Foo) == 4);
......@@ -20,7 +19,6 @@ test "@alignOf(T) before referencing T" {
2019}
2120
2221test "comparison of @alignOf(T) against zero" {
23 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
2422 {
2523 const T = struct { x: u32 };
2624 try expect(!(@alignOf(T) == 0));
test/behavior/array.zig-5
......@@ -6,8 +6,6 @@ const expect = testing.expect;
66const expectEqual = testing.expectEqual;
77
88test "array to slice" {
9 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
10
119 const a: u32 align(4) = 3;
1210 const b: u32 align(8) = 4;
1311 const a_slice: []align(1) const u32 = @as(*const [1]u32, &a)[0..];
......@@ -160,7 +158,6 @@ test "nested arrays of strings" {
160158
161159test "nested arrays of integers" {
162160 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
163 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
164161
165162 const array_of_numbers = [_][2]u8{
166163 [2]u8{ 1, 2 },
......@@ -479,7 +476,6 @@ test "sentinel element count towards the ABI size calculation" {
479476
480477test "zero-sized array with recursive type definition" {
481478 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
482 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
483479
484480 const U = struct {
485481 fn foo(comptime T: type, comptime n: usize) type {
......@@ -501,7 +497,6 @@ test "zero-sized array with recursive type definition" {
501497test "type coercion of anon struct literal to array" {
502498 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
503499 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
504 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
505500 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
506501
507502 const S = struct {
test/behavior/basic.zig-4
......@@ -333,7 +333,6 @@ test "call result of if else expression" {
333333 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
334334 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
335335 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
336 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
337336
338337 try expect(mem.eql(u8, f2(true), "a"));
339338 try expect(mem.eql(u8, f2(false), "b"));
......@@ -364,8 +363,6 @@ fn testMemcpyMemset() !void {
364363}
365364
366365test "variable is allowed to be a pointer to an opaque type" {
367 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
368
369366 var x: i32 = 1234;
370367 _ = hereIsAnOpaqueType(@ptrCast(*OpaqueA, &x));
371368}
......@@ -881,7 +878,6 @@ test "labeled block implicitly ends in a break" {
881878}
882879
883880test "catch in block has correct result location" {
884 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
885881 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
886882
887883 const S = struct {
test/behavior/bitcast.zig-6
......@@ -136,7 +136,6 @@ test "@bitCast packed structs at runtime and comptime" {
136136
137137test "@bitCast extern structs at runtime and comptime" {
138138 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest;
139 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
140139 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
141140
142141 const Full = extern struct {
......@@ -208,7 +207,6 @@ test "implicit cast to error union by returning" {
208207
209208test "bitcast packed struct literal to byte" {
210209 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest;
211 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
212210
213211 const Foo = packed struct {
214212 value: u8,
......@@ -218,8 +216,6 @@ test "bitcast packed struct literal to byte" {
218216}
219217
220218test "comptime bitcast used in expression has the correct type" {
221 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
222
223219 const Foo = packed struct {
224220 value: u8,
225221 };
......@@ -237,8 +233,6 @@ test "bitcast passed as tuple element" {
237233}
238234
239235test "triple level result location with bitcast sandwich passed as tuple element" {
240 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
241
242236 const S = struct {
243237 fn foo(args: anytype) !void {
244238 comptime try expect(@TypeOf(args[0]) == f64);
test/behavior/bugs/10970.zig-1
......@@ -7,7 +7,6 @@ test "breaking from a loop in an if statement" {
77 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
88 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
99 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
10 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
1110
1211 var cond = true;
1312 const opt = while (cond) {
test/behavior/bugs/11159.zig-1
......@@ -9,7 +9,6 @@ test {
99
1010test {
1111 if (builtin.zig_backend == .stage1) return error.SkipZigTest; // TODO
12 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
1312
1413 const S = struct {
1514 comptime x: i32 = 0,
test/behavior/bugs/11181.zig-4
......@@ -1,8 +1,6 @@
11const builtin = @import("builtin");
22
33test "const inferred array of slices" {
4 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
5
64 const T = struct { v: bool };
75
86 const decls = [_][]const T{
......@@ -14,8 +12,6 @@ test "const inferred array of slices" {
1412}
1513
1614test "var inferred array of slices" {
17 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
18
1915 const T = struct { v: bool };
2016
2117 var decls = [_][]const T{
test/behavior/bugs/11213.zig-2
......@@ -3,8 +3,6 @@ const builtin = @import("builtin");
33const testing = std.testing;
44
55test {
6 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
7
86 const g: error{Test}!void = error.Test;
97
108 var v: u32 = 0;
test/behavior/bugs/12776.zig-1
......@@ -31,7 +31,6 @@ const CPU = packed struct {
3131test {
3232 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
3333 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
34 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
3534 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest;
3635 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
3736
test/behavior/bugs/1421.zig-1
......@@ -10,7 +10,6 @@ const S = struct {
1010
1111test "functions with return type required to be comptime are generic" {
1212 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
13 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
1413 const ti = S.method();
1514 try expect(@as(std.builtin.TypeId, ti) == std.builtin.TypeId.Struct);
1615}
test/behavior/bugs/1442.zig-1
......@@ -10,7 +10,6 @@ test "const error union field alignment" {
1010 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
1111 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1212 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
13 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
1413 var union_or_err: anyerror!Union = Union{ .Color = 1234 };
1514 try std.testing.expect((union_or_err catch unreachable).Color == 1234);
1615}
test/behavior/bugs/1607.zig-1
......@@ -14,7 +14,6 @@ test "slices pointing at the same address as global array." {
1414 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
1515 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1616 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
17 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
1817 try checkAddress(&a);
1918 comptime try checkAddress(&a);
2019}
test/behavior/bugs/2692.zig-1
......@@ -5,7 +5,6 @@ fn foo(a: []u8) void {
55}
66
77test "address of 0 length array" {
8 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
98 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
109
1110 var pt: [0]u8 = undefined;
test/behavior/bugs/3007.zig-1
......@@ -22,7 +22,6 @@ test "fixed" {
2222 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
2323 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
2424 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
25 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
2625
2726 default_foo = get_foo() catch null; // This Line
2827 try std.testing.expect(!default_foo.?.free);
test/behavior/bugs/3046.zig-1
......@@ -15,7 +15,6 @@ var some_struct: SomeStruct = undefined;
1515test "fixed" {
1616 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
1717 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
18 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
1918
2019 some_struct = SomeStruct{
2120 .field = couldFail() catch @as(i32, 0),
test/behavior/bugs/3367.zig-1
......@@ -10,7 +10,6 @@ const Mixin = struct {
1010};
1111
1212test "container member access usingnamespace decls" {
13 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
1413 var foo = Foo{};
1514 foo.two();
1615}
test/behavior/bugs/4954.zig-1
......@@ -5,7 +5,6 @@ fn f(buf: []u8) void {
55}
66
77test "crash" {
8 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
98 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
109 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1110
test/behavior/bugs/5398.zig-1
......@@ -22,7 +22,6 @@ test "assignment of field with padding" {
2222 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
2323 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
2424 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
25 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
2625
2726 renderable = Renderable{
2827 .mesh = Mesh{ .id = 0 },
test/behavior/bugs/5487.zig-1
......@@ -13,6 +13,5 @@ test "crash" {
1313 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
1414 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1515 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
16 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
1716 _ = io.multiWriter(.{writer()});
1817}
test/behavior/bugs/726.zig-2
......@@ -5,7 +5,6 @@ test "@ptrCast from const to nullable" {
55 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
66 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
77 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
8 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
98
109 const c: u8 = 4;
1110 var x: ?*const u8 = @ptrCast(?*const u8, &c);
......@@ -16,7 +15,6 @@ test "@ptrCast from var in empty struct to nullable" {
1615 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
1716 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1817 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
19 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
2018
2119 const container = struct {
2220 var c: u8 = 4;
test/behavior/bugs/9584.zig-1
......@@ -49,7 +49,6 @@ test {
4949 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
5050 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
5151 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
52 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
5352
5453 var flags = A{
5554 .a = false,
test/behavior/call.zig-1
......@@ -58,7 +58,6 @@ test "basic invocations" {
5858test "tuple parameters" {
5959 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
6060 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
61 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
6261 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
6362
6463 const add = struct {
test/behavior/cast.zig-20
......@@ -839,8 +839,6 @@ test "peer cast *[0]T to []const T" {
839839}
840840
841841test "peer cast *[N]T to [*]T" {
842 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
843
844842 var array = [4:99]i32{ 1, 2, 3, 4 };
845843 var dest: [*]i32 = undefined;
846844 try expect(@TypeOf(&array, dest) == [*]i32);
......@@ -849,7 +847,6 @@ test "peer cast *[N]T to [*]T" {
849847
850848test "peer resolution of string literals" {
851849 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
852 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
853850 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
854851 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
855852
......@@ -872,7 +869,6 @@ test "peer resolution of string literals" {
872869
873870test "peer cast [:x]T to []T" {
874871 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
875 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
876872
877873 const S = struct {
878874 fn doTheTest() !void {
......@@ -888,7 +884,6 @@ test "peer cast [:x]T to []T" {
888884
889885test "peer cast [N:x]T to [N]T" {
890886 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
891 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
892887
893888 const S = struct {
894889 fn doTheTest() !void {
......@@ -903,7 +898,6 @@ test "peer cast [N:x]T to [N]T" {
903898
904899test "peer cast *[N:x]T to *[N]T" {
905900 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
906 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
907901
908902 const S = struct {
909903 fn doTheTest() !void {
......@@ -937,7 +931,6 @@ test "peer cast [*:x]T to [*]T" {
937931
938932test "peer cast [:x]T to [*:x]T" {
939933 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
940 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
941934 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
942935 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
943936
......@@ -1018,7 +1011,6 @@ test "cast between C pointer with different but compatible types" {
10181011
10191012test "peer type resolve string lit with sentinel-terminated mutable slice" {
10201013 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
1021 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
10221014
10231015 var array: [4:0]u8 = undefined;
10241016 array[4] = 0; // TODO remove this when #4372 is solved
......@@ -1035,8 +1027,6 @@ test "peer type resolve array pointers, one of them const" {
10351027}
10361028
10371029test "peer type resolve array pointer and unknown pointer" {
1038 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
1039
10401030 const const_array: [4]u8 = undefined;
10411031 var array: [4]u8 = undefined;
10421032 var const_ptr: [*]const u8 = undefined;
......@@ -1069,7 +1059,6 @@ test "comptime float casts" {
10691059
10701060test "pointer reinterpret const float to int" {
10711061 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1072 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
10731062
10741063 // The hex representation is 0x3fe3333333333303.
10751064 const float: f64 = 5.99999999999994648725e-01;
......@@ -1084,7 +1073,6 @@ test "pointer reinterpret const float to int" {
10841073
10851074test "implicit cast from [*]T to ?*anyopaque" {
10861075 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1087 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
10881076 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
10891077
10901078 var a = [_]u8{ 3, 2, 1 };
......@@ -1102,8 +1090,6 @@ fn incrementVoidPtrArray(array: ?*anyopaque, len: usize) void {
11021090
11031091test "compile time int to ptr of function" {
11041092 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
1105
1106 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
11071093 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
11081094
11091095 try foobar(FUNCTION_CONSTANT);
......@@ -1120,7 +1106,6 @@ fn foobar(func: PFN_void) !void {
11201106
11211107test "implicit ptr to *anyopaque" {
11221108 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1123 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
11241109 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
11251110
11261111 var a: u32 = 1;
......@@ -1168,7 +1153,6 @@ fn peerTypeEmptyArrayAndSlice(a: bool, slice: []const u8) []const u8 {
11681153
11691154test "implicitly cast from [N]T to ?[]const T" {
11701155 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1171 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
11721156 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
11731157
11741158 try expect(mem.eql(u8, castToOptionalSlice().?, "hi"));
......@@ -1220,7 +1204,6 @@ test "implicit cast from *[N]T to ?[*]T" {
12201204
12211205test "implicit cast from *T to ?*anyopaque" {
12221206 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1223 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
12241207 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
12251208
12261209 var a: u8 = 1;
......@@ -1246,8 +1229,6 @@ test "cast from array reference to fn: comptime fn ptr" {
12461229 try expect(@ptrToInt(f) == @ptrToInt(&global_array));
12471230}
12481231test "cast from array reference to fn: runtime fn ptr" {
1249 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
1250
12511232 var f = @ptrCast(*align(1) const fn () callconv(.C) void, &global_array);
12521233 try expect(@ptrToInt(f) == @ptrToInt(&global_array));
12531234}
......@@ -1354,7 +1335,6 @@ test "cast f128 to narrower types" {
13541335
13551336test "peer type resolution: unreachable, null, slice" {
13561337 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
1357 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
13581338 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
13591339 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
13601340
test/behavior/cast_int.zig-1
......@@ -8,7 +8,6 @@ test "@intCast i32 to u7" {
88 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
99 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
1010 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
11 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
1211
1312 var x: u128 = maxInt(u128);
1413 var y: i32 = 120;
test/behavior/empty_union.zig-2
......@@ -12,7 +12,6 @@ test "switch on empty enum" {
1212}
1313
1414test "switch on empty enum with a specified tag type" {
15 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
1615 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
1716
1817 const E = enum(u8) {};
......@@ -21,7 +20,6 @@ test "switch on empty enum with a specified tag type" {
2120}
2221
2322test "switch on empty auto numbered tagged union" {
24 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
2523 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
2624 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
2725
test/behavior/error.zig-2
......@@ -258,7 +258,6 @@ fn testComptimeTestErrorEmptySet(x: EmptyErrorSet!i32) !void {
258258}
259259
260260test "comptime err to int of error set with only 1 possible value" {
261 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
262261 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
263262 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
264263
......@@ -845,7 +844,6 @@ test "catch within a function that calls no errorable functions" {
845844test "error from comptime string" {
846845 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
847846 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
848 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
849847 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
850848
851849 const name = "Weird error name!";
test/behavior/eval.zig-3
......@@ -763,7 +763,6 @@ test "array concatenation peer resolves element types - value" {
763763
764764test "array concatenation peer resolves element types - pointer" {
765765 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
766 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
767766 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
768767 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
769768
......@@ -801,7 +800,6 @@ test "array concatenation sets the sentinel - value" {
801800
802801test "array concatenation sets the sentinel - pointer" {
803802 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
804 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
805803 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
806804
807805 var a = [2]u3{ 1, 7 };
......@@ -838,7 +836,6 @@ test "array multiplication sets the sentinel - value" {
838836
839837test "array multiplication sets the sentinel - pointer" {
840838 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
841 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
842839 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
843840 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
844841
test/behavior/fn.zig-5
......@@ -146,7 +146,6 @@ fn fnWithUnreachable() noreturn {
146146}
147147
148148test "extern struct with stdcallcc fn pointer" {
149 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
150149 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
151150 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
152151 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
......@@ -286,7 +285,6 @@ fn voidFun(a: i32, b: void, c: i32, d: void) !void {
286285}
287286
288287test "call function with empty string" {
289 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
290288 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
291289
292290 acceptsString("");
......@@ -305,7 +303,6 @@ test "function pointers" {
305303 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
306304 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
307305 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
308 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
309306
310307 const fns = [_]*const @TypeOf(fn1){
311308 &fn1,
......@@ -399,8 +396,6 @@ test "ability to give comptime types and non comptime types to same parameter" {
399396}
400397
401398test "function with inferred error set but returning no error" {
402 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
403
404399 const S = struct {
405400 fn foo() !void {}
406401 };
test/behavior/math.zig-8
......@@ -616,8 +616,6 @@ test "128-bit multiplication" {
616616}
617617
618618test "@addWithOverflow" {
619 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
620
621619 {
622620 var result: u8 = undefined;
623621 try expect(@addWithOverflow(u8, 250, 100, &result));
......@@ -673,8 +671,6 @@ test "small int addition" {
673671}
674672
675673test "basic @mulWithOverflow" {
676 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
677
678674 var result: u8 = undefined;
679675 try expect(@mulWithOverflow(u8, 86, 3, &result));
680676 try expect(result == 2);
......@@ -897,8 +893,6 @@ test "@mulWithOverflow bitsize > 32" {
897893}
898894
899895test "@subWithOverflow" {
900 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
901
902896 {
903897 var result: u8 = undefined;
904898 try expect(@subWithOverflow(u8, 1, 2, &result));
......@@ -977,8 +971,6 @@ test "@shlWithOverflow" {
977971}
978972
979973test "overflow arithmetic with u0 values" {
980 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
981
982974 var result: u0 = undefined;
983975 try expect(!@addWithOverflow(u0, 0, 0, &result));
984976 try expect(result == 0);
test/behavior/optional.zig-3
......@@ -65,7 +65,6 @@ test "optional with void type" {
6565}
6666
6767test "address of unwrap optional" {
68 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
6968 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
7069 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
7170 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
......@@ -269,7 +268,6 @@ test "0-bit child type coerced to optional return ptr result location" {
269268}
270269
271270test "0-bit child type coerced to optional" {
272 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
273271 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
274272 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
275273
......@@ -332,7 +330,6 @@ test "array of optional unaligned types" {
332330}
333331
334332test "optional pointer to zero bit optional payload" {
335 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
336333 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
337334 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
338335 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
test/behavior/pointers.zig-1
......@@ -205,7 +205,6 @@ test "allowzero pointer and slice" {
205205}
206206
207207test "assign null directly to C pointer and test null equality" {
208 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
209208 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
210209 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
211210 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
test/behavior/slice.zig-5
......@@ -229,7 +229,6 @@ fn sliceFromLenToLen(a_slice: []u8, start: usize, end: usize) []u8 {
229229
230230test "C pointer" {
231231 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
232 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
233232
234233 var buf: [*c]const u8 = "kjdhfkjdhfdkjhfkfjhdfkjdhfkdjhfdkjhf";
235234 var len: u32 = 10;
......@@ -477,7 +476,6 @@ test "slice syntax resulting in pointer-to-array" {
477476}
478477
479478test "slice pointer-to-array null terminated" {
480 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
481479 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
482480 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
483481
......@@ -503,7 +501,6 @@ test "slice pointer-to-array null terminated" {
503501}
504502
505503test "slice pointer-to-array zero length" {
506 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
507504 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
508505
509506 comptime {
......@@ -637,7 +634,6 @@ test "slice sentinel access at comptime" {
637634test "slicing array with sentinel as end index" {
638635 // Doesn't work in stage1
639636 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
640 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
641637 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
642638
643639 const S = struct {
......@@ -657,7 +653,6 @@ test "slicing array with sentinel as end index" {
657653test "slicing slice with sentinel as end index" {
658654 // Doesn't work in stage1
659655 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
660 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
661656 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
662657
663658 const S = struct {
test/behavior/struct.zig-19
......@@ -319,7 +319,6 @@ const VoidStructFieldsFoo = struct {
319319
320320test "return empty struct from fn" {
321321 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
322 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
323322 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
324323
325324 _ = testReturnEmptyStructFromFn();
......@@ -421,7 +420,6 @@ const Foo96Bits = packed struct {
421420test "packed struct 24bits" {
422421 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
423422 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
424 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
425423 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
426424 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
427425 if (builtin.cpu.arch == .wasm32) return error.SkipZigTest; // TODO
......@@ -470,7 +468,6 @@ test "packed struct 24bits" {
470468test "runtime struct initialization of bitfield" {
471469 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
472470 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
473 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
474471 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
475472 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
476473 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
......@@ -537,7 +534,6 @@ test "packed struct fields are ordered from LSB to MSB" {
537534test "implicit cast packed struct field to const ptr" {
538535 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
539536 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
540 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
541537 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
542538 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
543539 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
......@@ -559,7 +555,6 @@ test "implicit cast packed struct field to const ptr" {
559555
560556test "zero-bit field in packed struct" {
561557 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
562 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
563558 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
564559 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
565560
......@@ -605,7 +600,6 @@ const bit_field_1 = BitField1{
605600test "bit field access" {
606601 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
607602 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
608 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
609603 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
610604 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
611605 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
......@@ -638,7 +632,6 @@ fn getC(data: *const BitField1) u2 {
638632
639633test "default struct initialization fields" {
640634 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
641 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
642635 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
643636
644637 const S = struct {
......@@ -771,7 +764,6 @@ test "pointer to packed struct member in a stack variable" {
771764test "packed struct with u0 field access" {
772765 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
773766 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
774 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
775767 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
776768
777769 const S = packed struct {
......@@ -783,7 +775,6 @@ test "packed struct with u0 field access" {
783775
784776test "access to global struct fields" {
785777 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
786 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
787778 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
788779
789780 g_foo.bar.value = 42;
......@@ -810,7 +801,6 @@ test "packed struct with fp fields" {
810801 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
811802 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
812803 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
813 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
814804
815805 const S = packed struct {
816806 data0: f32,
......@@ -886,7 +876,6 @@ test "packed struct field passed to generic function" {
886876 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
887877 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
888878 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
889 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
890879 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
891880
892881 const S = struct {
......@@ -910,7 +899,6 @@ test "packed struct field passed to generic function" {
910899
911900test "anonymous struct literal syntax" {
912901 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
913 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
914902
915903 const S = struct {
916904 const Point = struct {
......@@ -932,8 +920,6 @@ test "anonymous struct literal syntax" {
932920}
933921
934922test "fully anonymous struct" {
935 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
936
937923 const S = struct {
938924 fn doTheTest() !void {
939925 try dump(.{
......@@ -956,8 +942,6 @@ test "fully anonymous struct" {
956942}
957943
958944test "fully anonymous list literal" {
959 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
960
961945 const S = struct {
962946 fn doTheTest() !void {
963947 try dump(.{ @as(u32, 1234), @as(f64, 12.34), true, "hi" });
......@@ -1118,7 +1102,6 @@ test "type coercion of pointer to anon struct literal to pointer to struct" {
11181102test "packed struct with undefined initializers" {
11191103 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
11201104 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
1121 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
11221105 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
11231106 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
11241107 if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
......@@ -1219,7 +1202,6 @@ test "anon init through error unions and optionals" {
12191202
12201203test "anon init through optional" {
12211204 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
1222 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
12231205 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
12241206 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
12251207 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
......@@ -1241,7 +1223,6 @@ test "anon init through optional" {
12411223
12421224test "anon init through error union" {
12431225 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
1244 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
12451226 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
12461227 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
12471228 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
test/behavior/switch_prong_err_enum.zig-1
......@@ -24,7 +24,6 @@ test "switch prong returns error enum" {
2424 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
2525 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
2626 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
27 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
2827 switch (doThing(17) catch unreachable) {
2928 FormValue.Address => |payload| {
3029 try expect(payload == 1);
test/behavior/translate_c_macros.zig-1
......@@ -75,7 +75,6 @@ test "casting to union with a macro" {
7575test "casting or calling a value with a paren-surrounded macro" {
7676 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
7777 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
78 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
7978 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
8079 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
8180
test/behavior/type.zig-4
......@@ -248,7 +248,6 @@ fn add(a: i32, b: i32) i32 {
248248
249249test "Type.ErrorSet" {
250250 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
251 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
252251
253252 try testing.expect(@Type(.{ .ErrorSet = null }) == anyerror);
254253
......@@ -462,7 +461,6 @@ test "Type.Union" {
462461}
463462
464463test "Type.Union from Type.Enum" {
465 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
466464 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
467465
468466 const Tag = @Type(.{
......@@ -490,7 +488,6 @@ test "Type.Union from Type.Enum" {
490488}
491489
492490test "Type.Union from regular enum" {
493 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
494491 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
495492
496493 const E = enum { working_as_expected };
......@@ -509,7 +506,6 @@ test "Type.Union from regular enum" {
509506
510507test "Type.Fn" {
511508 if (builtin.zig_backend == .stage1) return error.SkipZigTest;
512 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
513509
514510 if (true) {
515511 // https://github.com/ziglang/zig/issues/12360
test/behavior/type_info.zig-2
......@@ -376,8 +376,6 @@ extern fn typeInfoFoo(a: usize, b: bool, ...) callconv(.C) usize;
376376extern fn typeInfoFooAligned(a: usize, b: bool, ...) align(4) callconv(.C) usize;
377377
378378test "type info: generic function types" {
379 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
380
381379 if (builtin.zig_backend != .stage1) {
382380 // stage1 marks all args/return types as null if the function
383381 // is generic at all. stage2 is more specific.
test/behavior/union.zig-3
......@@ -431,7 +431,6 @@ const Foo1 = union(enum) {
431431var glbl: Foo1 = undefined;
432432
433433test "global union with single field is correctly initialized" {
434 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
435434 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
436435 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
437436 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
......@@ -476,7 +475,6 @@ test "update the tag value for zero-sized unions" {
476475}
477476
478477test "union initializer generates padding only if needed" {
479 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
480478 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
481479 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
482480 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
......@@ -753,7 +751,6 @@ fn Setter(comptime attr: Attribute) type {
753751}
754752
755753test "return union init with void payload" {
756 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
757754 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
758755 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
759756 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
test/behavior/union_with_members.zig-1
......@@ -19,7 +19,6 @@ const ET = union(enum) {
1919test "enum with members" {
2020 if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
2121 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
22 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
2322 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
2423 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
2524
test/behavior/widening.zig-2
......@@ -8,7 +8,6 @@ test "integer widening" {
88 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
99 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
1010 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
11 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
1211
1312 var a: u8 = 250;
1413 var b: u16 = a;
......@@ -30,7 +29,6 @@ test "integer widening u0 to u8" {
3029test "implicit unsigned integer to signed integer" {
3130 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
3231 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
33 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
3432
3533 var a: u8 = 250;
3634 var b: i16 = a;