authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-09-24 15:13:38-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-09-24 15:14:20-04:00
log877036e7ef37432579233347b5b3cfce66040f83
tree83314e63282cb5f288a23a0b20c2b25b64b80180
parent32c91ad892f5dc0138828aea19b3c0e2b062d168

fix translate-c test expecting incorrect C ABI on windows


1 files changed, 57 insertions(+), 53 deletions(-)

test/translate_c.zig+57-53
...@@ -1,59 +1,63 @@...@@ -1,59 +1,63 @@
1const tests = @import("tests.zig");1const tests = @import("tests.zig");
2const builtin = @import("builtin");
23
3pub fn addCases(cases: *tests.TranslateCContext) void {4pub fn addCases(cases: *tests.TranslateCContext) void {
4 cases.add("negative enum init values",5 if (builtin.os != builtin.Os.windows) {
5 \\enum EnumWithInits {6 // Windows treats this as an enum with type c_int
6 \\ VAL01 = 0,7 cases.add("big negative enum init values when C ABI supports long long enums",
7 \\ VAL02 = 1,8 \\enum EnumWithInits {
8 \\ VAL03 = 2,9 \\ VAL01 = 0,
9 \\ VAL04 = 3,10 \\ VAL02 = 1,
10 \\ VAL05 = -1,11 \\ VAL03 = 2,
11 \\ VAL06 = -2,12 \\ VAL04 = 3,
12 \\ VAL07 = -3,13 \\ VAL05 = -1,
13 \\ VAL08 = -4,14 \\ VAL06 = -2,
14 \\ VAL09 = VAL02 + VAL08,15 \\ VAL07 = -3,
15 \\ VAL10 = -1000012000,16 \\ VAL08 = -4,
16 \\ VAL11 = -1000161000,17 \\ VAL09 = VAL02 + VAL08,
17 \\ VAL12 = -1000174001,18 \\ VAL10 = -1000012000,
18 \\ VAL13 = VAL09,19 \\ VAL11 = -1000161000,
19 \\ VAL14 = VAL10,20 \\ VAL12 = -1000174001,
20 \\ VAL15 = VAL11,21 \\ VAL13 = VAL09,
21 \\ VAL16 = VAL13,22 \\ VAL14 = VAL10,
22 \\ VAL17 = (VAL16 - VAL10 + 1),23 \\ VAL15 = VAL11,
23 \\ VAL18 = 0x1000000000000000L,24 \\ VAL16 = VAL13,
24 \\ VAL19 = VAL18 + VAL18 + VAL18 - 1,25 \\ VAL17 = (VAL16 - VAL10 + 1),
25 \\ VAL20 = VAL19 + VAL19,26 \\ VAL18 = 0x1000000000000000L,
26 \\ VAL21 = VAL20 + 0xFFFFFFFFFFFFFFFF,27 \\ VAL19 = VAL18 + VAL18 + VAL18 - 1,
27 \\ VAL22 = 0xFFFFFFFFFFFFFFFF + 1,28 \\ VAL20 = VAL19 + VAL19,
28 \\ VAL23 = 0xFFFFFFFFFFFFFFFF,29 \\ VAL21 = VAL20 + 0xFFFFFFFFFFFFFFFF,
29 \\};30 \\ VAL22 = 0xFFFFFFFFFFFFFFFF + 1,
30 ,31 \\ VAL23 = 0xFFFFFFFFFFFFFFFF,
31 \\pub const enum_EnumWithInits = extern enum(c_longlong) {32 \\};
32 \\ VAL01 = 0,33 ,
33 \\ VAL02 = 1,34 \\pub const enum_EnumWithInits = extern enum(c_longlong) {
34 \\ VAL03 = 2,35 \\ VAL01 = 0,
35 \\ VAL04 = 3,36 \\ VAL02 = 1,
36 \\ VAL05 = -1,37 \\ VAL03 = 2,
37 \\ VAL06 = -2,38 \\ VAL04 = 3,
38 \\ VAL07 = -3,39 \\ VAL05 = -1,
39 \\ VAL08 = -4,40 \\ VAL06 = -2,
40 \\ VAL09 = -3,41 \\ VAL07 = -3,
41 \\ VAL10 = -1000012000,42 \\ VAL08 = -4,
42 \\ VAL11 = -1000161000,43 \\ VAL09 = -3,
43 \\ VAL12 = -1000174001,44 \\ VAL10 = -1000012000,
44 \\ VAL13 = -3,45 \\ VAL11 = -1000161000,
45 \\ VAL14 = -1000012000,46 \\ VAL12 = -1000174001,
46 \\ VAL15 = -1000161000,47 \\ VAL13 = -3,
47 \\ VAL16 = -3,48 \\ VAL14 = -1000012000,
48 \\ VAL17 = 1000011998,49 \\ VAL15 = -1000161000,
49 \\ VAL18 = 1152921504606846976,50 \\ VAL16 = -3,
50 \\ VAL19 = 3458764513820540927,51 \\ VAL17 = 1000011998,
51 \\ VAL20 = 6917529027641081854,52 \\ VAL18 = 1152921504606846976,
52 \\ VAL21 = 6917529027641081853,53 \\ VAL19 = 3458764513820540927,
53 \\ VAL22 = 0,54 \\ VAL20 = 6917529027641081854,
54 \\ VAL23 = -1,55 \\ VAL21 = 6917529027641081853,
55 \\};56 \\ VAL22 = 0,
56 );57 \\ VAL23 = -1,
58 \\};
59 );
60 }
5761
58 cases.add("for loop with var init but empty body",62 cases.add("for loop with var init but empty body",
59 \\void foo(void) {63 \\void foo(void) {