authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-02-08 21:12:50-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-02-08 21:12:50-07:00
log08808701d2b70de41535bb35e4724c8279ea07b7
tree231bc2706c44ec01ed94a656e09c2e610bf181b9
parenta35eb9fe8ae95353155423901089cbc03d036bf3

C ABI tests: give a clue in addition to "test failure"


1 files changed, 36 insertions(+), 36 deletions(-)

test/stage1/c_abi/main.zig+36-36
...@@ -29,11 +29,11 @@ extern fn c_struct_i128(I128) void;...@@ -29,11 +29,11 @@ extern fn c_struct_i128(I128) void;
29extern fn c_five_integers(i32, i32, i32, i32, i32) void;29extern fn c_five_integers(i32, i32, i32, i32, i32) void;
3030
31export fn zig_five_integers(a: i32, b: i32, c: i32, d: i32, e: i32) void {31export fn zig_five_integers(a: i32, b: i32, c: i32, d: i32, e: i32) void {
32 expect(a == 12) catch @panic("test failure");32 expect(a == 12) catch @panic("test failure: zig_five_integers 12");
33 expect(b == 34) catch @panic("test failure");33 expect(b == 34) catch @panic("test failure: zig_five_integers 34");
34 expect(c == 56) catch @panic("test failure");34 expect(c == 56) catch @panic("test failure: zig_five_integers 56");
35 expect(d == 78) catch @panic("test failure");35 expect(d == 78) catch @panic("test failure: zig_five_integers 78");
36 expect(e == 90) catch @panic("test failure");36 expect(e == 90) catch @panic("test failure: zig_five_integers 90");
37}37}
3838
39test "C ABI integers" {39test "C ABI integers" {
...@@ -54,34 +54,34 @@ test "C ABI integers" {...@@ -54,34 +54,34 @@ test "C ABI integers" {
54}54}
5555
56export fn zig_u8(x: u8) void {56export fn zig_u8(x: u8) void {
57 expect(x == 0xff) catch @panic("test failure");57 expect(x == 0xff) catch @panic("test failure: zig_u8");
58}58}
59export fn zig_u16(x: u16) void {59export fn zig_u16(x: u16) void {
60 expect(x == 0xfffe) catch @panic("test failure");60 expect(x == 0xfffe) catch @panic("test failure: zig_u16");
61}61}
62export fn zig_u32(x: u32) void {62export fn zig_u32(x: u32) void {
63 expect(x == 0xfffffffd) catch @panic("test failure");63 expect(x == 0xfffffffd) catch @panic("test failure: zig_u32");
64}64}
65export fn zig_u64(x: u64) void {65export fn zig_u64(x: u64) void {
66 expect(x == 0xfffffffffffffffc) catch @panic("test failure");66 expect(x == 0xfffffffffffffffc) catch @panic("test failure: zig_u64");
67}67}
68export fn zig_u128(x: u128) void {68export fn zig_u128(x: u128) void {
69 expect(x == 0xfffffffffffffffc) catch @panic("test failure");69 expect(x == 0xfffffffffffffffc) catch @panic("test failure: zig_u128");
70}70}
71export fn zig_i8(x: i8) void {71export fn zig_i8(x: i8) void {
72 expect(x == -1) catch @panic("test failure");72 expect(x == -1) catch @panic("test failure: zig_i8");
73}73}
74export fn zig_i16(x: i16) void {74export fn zig_i16(x: i16) void {
75 expect(x == -2) catch @panic("test failure");75 expect(x == -2) catch @panic("test failure: zig_i16");
76}76}
77export fn zig_i32(x: i32) void {77export fn zig_i32(x: i32) void {
78 expect(x == -3) catch @panic("test failure");78 expect(x == -3) catch @panic("test failure: zig_i32");
79}79}
80export fn zig_i64(x: i64) void {80export fn zig_i64(x: i64) void {
81 expect(x == -4) catch @panic("test failure");81 expect(x == -4) catch @panic("test failure: zig_i64");
82}82}
83export fn zig_i128(x: i128) void {83export fn zig_i128(x: i128) void {
84 expect(x == -5) catch @panic("test failure");84 expect(x == -5) catch @panic("test failure: zig_i128");
85}85}
8686
87const I128 = extern struct {87const I128 = extern struct {
...@@ -91,10 +91,10 @@ const U128 = extern struct {...@@ -91,10 +91,10 @@ const U128 = extern struct {
91 value: u128,91 value: u128,
92};92};
93export fn zig_struct_i128(a: I128) void {93export fn zig_struct_i128(a: I128) void {
94 expect(a.value == -6) catch @panic("test failure");94 expect(a.value == -6) catch @panic("test failure: zig_struct_i128");
95}95}
96export fn zig_struct_u128(a: U128) void {96export fn zig_struct_u128(a: U128) void {
97 expect(a.value == 0xfffffffffffffffc) catch @panic("test failure");97 expect(a.value == 0xfffffffffffffffc) catch @panic("test failure: zig_struct_u128");
98}98}
9999
100extern fn c_f32(f32) void;100extern fn c_f32(f32) void;
...@@ -104,11 +104,11 @@ extern fn c_f64(f64) void;...@@ -104,11 +104,11 @@ extern fn c_f64(f64) void;
104extern fn c_five_floats(f32, f32, f32, f32, f32) void;104extern fn c_five_floats(f32, f32, f32, f32, f32) void;
105105
106export fn zig_five_floats(a: f32, b: f32, c: f32, d: f32, e: f32) void {106export fn zig_five_floats(a: f32, b: f32, c: f32, d: f32, e: f32) void {
107 expect(a == 1.0) catch @panic("test failure");107 expect(a == 1.0) catch @panic("test failure: zig_five_floats 1.0");
108 expect(b == 2.0) catch @panic("test failure");108 expect(b == 2.0) catch @panic("test failure: zig_five_floats 2.0");
109 expect(c == 3.0) catch @panic("test failure");109 expect(c == 3.0) catch @panic("test failure: zig_five_floats 3.0");
110 expect(d == 4.0) catch @panic("test failure");110 expect(d == 4.0) catch @panic("test failure: zig_five_floats 4.0");
111 expect(e == 5.0) catch @panic("test failure");111 expect(e == 5.0) catch @panic("test failure: zig_five_floats 5.0");
112}112}
113113
114test "C ABI floats" {114test "C ABI floats" {
...@@ -118,10 +118,10 @@ test "C ABI floats" {...@@ -118,10 +118,10 @@ test "C ABI floats" {
118}118}
119119
120export fn zig_f32(x: f32) void {120export fn zig_f32(x: f32) void {
121 expect(x == 12.34) catch @panic("test failure");121 expect(x == 12.34) catch @panic("test failure: zig_f32");
122}122}
123export fn zig_f64(x: f64) void {123export fn zig_f64(x: f64) void {
124 expect(x == 56.78) catch @panic("test failure");124 expect(x == 56.78) catch @panic("test failure: zig_f64");
125}125}
126126
127extern fn c_ptr(*anyopaque) void;127extern fn c_ptr(*anyopaque) void;
...@@ -131,7 +131,7 @@ test "C ABI pointer" {...@@ -131,7 +131,7 @@ test "C ABI pointer" {
131}131}
132132
133export fn zig_ptr(x: *anyopaque) void {133export fn zig_ptr(x: *anyopaque) void {
134 expect(@ptrToInt(x) == 0xdeadbeef) catch @panic("test failure");134 expect(@ptrToInt(x) == 0xdeadbeef) catch @panic("test failure: zig_ptr");
135}135}
136136
137extern fn c_bool(bool) void;137extern fn c_bool(bool) void;
...@@ -141,7 +141,7 @@ test "C ABI bool" {...@@ -141,7 +141,7 @@ test "C ABI bool" {
141}141}
142142
143export fn zig_bool(x: bool) void {143export fn zig_bool(x: bool) void {
144 expect(x) catch @panic("test failure");144 expect(x) catch @panic("test failure: zig_bool");
145}145}
146146
147const BigStruct = extern struct {147const BigStruct = extern struct {
...@@ -165,11 +165,11 @@ test "C ABI big struct" {...@@ -165,11 +165,11 @@ test "C ABI big struct" {
165}165}
166166
167export fn zig_big_struct(x: BigStruct) void {167export fn zig_big_struct(x: BigStruct) void {
168 expect(x.a == 1) catch @panic("test failure");168 expect(x.a == 1) catch @panic("test failure: zig_big_struct 1");
169 expect(x.b == 2) catch @panic("test failure");169 expect(x.b == 2) catch @panic("test failure: zig_big_struct 2");
170 expect(x.c == 3) catch @panic("test failure");170 expect(x.c == 3) catch @panic("test failure: zig_big_struct 3");
171 expect(x.d == 4) catch @panic("test failure");171 expect(x.d == 4) catch @panic("test failure: zig_big_struct 4");
172 expect(x.e == 5) catch @panic("test failure");172 expect(x.e == 5) catch @panic("test failure: zig_big_struct 5");
173}173}
174174
175const BigUnion = extern union {175const BigUnion = extern union {
...@@ -191,11 +191,11 @@ test "C ABI big union" {...@@ -191,11 +191,11 @@ test "C ABI big union" {
191}191}
192192
193export fn zig_big_union(x: BigUnion) void {193export fn zig_big_union(x: BigUnion) void {
194 expect(x.a.a == 1) catch @panic("test failure");194 expect(x.a.a == 1) catch @panic("test failure: zig_big_union a");
195 expect(x.a.b == 2) catch @panic("test failure");195 expect(x.a.b == 2) catch @panic("test failure: zig_big_union b");
196 expect(x.a.c == 3) catch @panic("test failure");196 expect(x.a.c == 3) catch @panic("test failure: zig_big_union c");
197 expect(x.a.d == 4) catch @panic("test failure");197 expect(x.a.d == 4) catch @panic("test failure: zig_big_union d");
198 expect(x.a.e == 5) catch @panic("test failure");198 expect(x.a.e == 5) catch @panic("test failure: zig_big_union e");
199}199}
200200
201const MedStructMixed = extern struct {201const MedStructMixed = extern struct {