| ... | ... | @@ -116,10 +116,10 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 116 | 116 | \\pub export fn foo() void { |
| 117 | 117 | \\ while (true) if (true) { |
| 118 | 118 | \\ var a: c_int = 1; |
| 119 | | \\ _ = a; |
| 119 | \\ _ = @TypeOf(a); |
| 120 | 120 | \\ } else { |
| 121 | 121 | \\ var b: c_int = 2; |
| 122 | | \\ _ = b; |
| 122 | \\ _ = @TypeOf(b); |
| 123 | 123 | \\ }; |
| 124 | 124 | \\ if (true) if (true) {}; |
| 125 | 125 | \\} |
| ... | ... | @@ -192,7 +192,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 192 | 192 | \\ .B = 0, |
| 193 | 193 | \\ .C = 0, |
| 194 | 194 | \\ }; |
| 195 | | \\ _ = a; |
| 195 | \\ _ = @TypeOf(a); |
| 196 | 196 | \\ { |
| 197 | 197 | \\ const struct_Foo_1 = extern struct { |
| 198 | 198 | \\ A: c_int, |
| ... | ... | @@ -204,7 +204,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 204 | 204 | \\ .B = 0, |
| 205 | 205 | \\ .C = 0, |
| 206 | 206 | \\ }; |
| 207 | | \\ _ = a_2; |
| 207 | \\ _ = @TypeOf(a_2); |
| 208 | 208 | \\ } |
| 209 | 209 | \\} |
| 210 | 210 | }); |
| ... | ... | @@ -233,24 +233,24 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 233 | 233 | \\ B: c_int, |
| 234 | 234 | \\ C: c_int, |
| 235 | 235 | \\ }; |
| 236 | | \\ _ = union_unnamed_1; |
| 236 | \\ _ = @TypeOf(union_unnamed_1); |
| 237 | 237 | \\ const Foo = union_unnamed_1; |
| 238 | 238 | \\ var a: Foo = Foo{ |
| 239 | 239 | \\ .A = @as(c_int, 0), |
| 240 | 240 | \\ }; |
| 241 | | \\ _ = a; |
| 241 | \\ _ = @TypeOf(a); |
| 242 | 242 | \\ { |
| 243 | 243 | \\ const union_unnamed_2 = extern union { |
| 244 | 244 | \\ A: c_int, |
| 245 | 245 | \\ B: c_int, |
| 246 | 246 | \\ C: c_int, |
| 247 | 247 | \\ }; |
| 248 | | \\ _ = union_unnamed_2; |
| 248 | \\ _ = @TypeOf(union_unnamed_2); |
| 249 | 249 | \\ const Foo_1 = union_unnamed_2; |
| 250 | 250 | \\ var a_2: Foo_1 = Foo_1{ |
| 251 | 251 | \\ .A = @as(c_int, 0), |
| 252 | 252 | \\ }; |
| 253 | | \\ _ = a_2; |
| 253 | \\ _ = @TypeOf(a_2); |
| 254 | 254 | \\ } |
| 255 | 255 | \\} |
| 256 | 256 | }); |
| ... | ... | @@ -318,7 +318,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 318 | 318 | \\ const bar_1 = struct { |
| 319 | 319 | \\ threadlocal var static: c_int = 2; |
| 320 | 320 | \\ }; |
| 321 | | \\ _ = bar_1; |
| 321 | \\ _ = @TypeOf(bar_1); |
| 322 | 322 | \\ return 0; |
| 323 | 323 | \\} |
| 324 | 324 | }); |
| ... | ... | @@ -337,7 +337,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 337 | 337 | \\} |
| 338 | 338 | \\pub export fn bar() c_int { |
| 339 | 339 | \\ var a: c_int = 2; |
| 340 | | \\ _ = a; |
| 340 | \\ _ = @TypeOf(a); |
| 341 | 341 | \\ return 0; |
| 342 | 342 | \\} |
| 343 | 343 | \\pub export fn baz() c_int { |
| ... | ... | @@ -352,7 +352,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 352 | 352 | , &[_][]const u8{ |
| 353 | 353 | \\pub export fn main() void { |
| 354 | 354 | \\ var a: c_int = @bitCast(c_int, @truncate(c_uint, @alignOf(c_int))); |
| 355 | | \\ _ = a; |
| 355 | \\ _ = @TypeOf(a); |
| 356 | 356 | \\} |
| 357 | 357 | }); |
| 358 | 358 | |
| ... | ... | @@ -500,7 +500,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 500 | 500 | \\#define bar(x) (&x, +3, 4 == 4, 5 * 6, baz(1, 2), 2 % 2, baz(1,2)) |
| 501 | 501 | , &[_][]const u8{ |
| 502 | 502 | \\pub const foo = blk: { |
| 503 | | \\ _ = foo; |
| 503 | \\ _ = @TypeOf(foo); |
| 504 | 504 | \\ break :blk bar; |
| 505 | 505 | \\}; |
| 506 | 506 | , |
| ... | ... | @@ -724,7 +724,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 724 | 724 | \\pub export fn function(arg_opaque_1: ?*struct_opaque) void { |
| 725 | 725 | \\ var opaque_1 = arg_opaque_1; |
| 726 | 726 | \\ var cast: ?*struct_opaque_2 = @ptrCast(?*struct_opaque_2, opaque_1); |
| 727 | | \\ _ = cast; |
| 727 | \\ _ = @TypeOf(cast); |
| 728 | 728 | \\} |
| 729 | 729 | }); |
| 730 | 730 | |
| ... | ... | @@ -761,7 +761,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 761 | 761 | \\pub export fn my_fn() align(128) void {} |
| 762 | 762 | \\pub export fn other_fn() void { |
| 763 | 763 | \\ var ARR: [16]u8 align(16) = undefined; |
| 764 | | \\ _ = ARR; |
| 764 | \\ _ = @TypeOf(ARR); |
| 765 | 765 | \\} |
| 766 | 766 | }); |
| 767 | 767 | } |
| ... | ... | @@ -798,17 +798,17 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 798 | 798 | , &[_][]const u8{ |
| 799 | 799 | \\pub export fn foo() void { |
| 800 | 800 | \\ var a: c_int = undefined; |
| 801 | | \\ _ = a; |
| 801 | \\ _ = @TypeOf(a); |
| 802 | 802 | \\ var b: u8 = 123; |
| 803 | | \\ _ = b; |
| 803 | \\ _ = @TypeOf(b); |
| 804 | 804 | \\ const c: c_int = undefined; |
| 805 | | \\ _ = c; |
| 805 | \\ _ = @TypeOf(c); |
| 806 | 806 | \\ const d: c_uint = @bitCast(c_uint, @as(c_int, 440)); |
| 807 | | \\ _ = d; |
| 807 | \\ _ = @TypeOf(d); |
| 808 | 808 | \\ var e: c_int = 10; |
| 809 | | \\ _ = e; |
| 809 | \\ _ = @TypeOf(e); |
| 810 | 810 | \\ var f: c_uint = 10; |
| 811 | | \\ _ = f; |
| 811 | \\ _ = @TypeOf(f); |
| 812 | 812 | \\} |
| 813 | 813 | }); |
| 814 | 814 | |
| ... | ... | @@ -867,7 +867,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 867 | 867 | \\ const v2 = struct { |
| 868 | 868 | \\ const static: [5:0]u8 = "2.2.2".*; |
| 869 | 869 | \\ }; |
| 870 | | \\ _ = v2; |
| 870 | \\ _ = @TypeOf(v2); |
| 871 | 871 | \\} |
| 872 | 872 | }); |
| 873 | 873 | |
| ... | ... | @@ -911,7 +911,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 911 | 911 | \\pub export fn bar() void { |
| 912 | 912 | \\ var func_ptr: ?*anyopaque = @ptrCast(?*anyopaque, foo); |
| 913 | 913 | \\ var typed_func_ptr: ?*const fn () callconv(.C) void = @intToPtr(?*const fn () callconv(.C) void, @intCast(c_ulong, @ptrToInt(func_ptr))); |
| 914 | | \\ _ = typed_func_ptr; |
| 914 | \\ _ = @TypeOf(typed_func_ptr); |
| 915 | 915 | \\} |
| 916 | 916 | }); |
| 917 | 917 | } |
| ... | ... | @@ -1353,7 +1353,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 1353 | 1353 | , &[_][]const u8{ |
| 1354 | 1354 | \\pub export fn foo() void { |
| 1355 | 1355 | \\ var a: c_int = undefined; |
| 1356 | | \\ _ = a; |
| 1356 | \\ _ = @TypeOf(a); |
| 1357 | 1357 | \\} |
| 1358 | 1358 | }); |
| 1359 | 1359 | |
| ... | ... | @@ -1524,23 +1524,23 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 1524 | 1524 | \\ var p: ?*anyopaque = undefined; |
| 1525 | 1525 | \\ { |
| 1526 | 1526 | \\ var to_char: [*c]u8 = @ptrCast([*c]u8, @alignCast(@import("std").meta.alignment([*c]u8), p)); |
| 1527 | | \\ _ = to_char; |
| 1527 | \\ _ = @TypeOf(to_char); |
| 1528 | 1528 | \\ var to_short: [*c]c_short = @ptrCast([*c]c_short, @alignCast(@import("std").meta.alignment([*c]c_short), p)); |
| 1529 | | \\ _ = to_short; |
| 1529 | \\ _ = @TypeOf(to_short); |
| 1530 | 1530 | \\ var to_int: [*c]c_int = @ptrCast([*c]c_int, @alignCast(@import("std").meta.alignment([*c]c_int), p)); |
| 1531 | | \\ _ = to_int; |
| 1531 | \\ _ = @TypeOf(to_int); |
| 1532 | 1532 | \\ var to_longlong: [*c]c_longlong = @ptrCast([*c]c_longlong, @alignCast(@import("std").meta.alignment([*c]c_longlong), p)); |
| 1533 | | \\ _ = to_longlong; |
| 1533 | \\ _ = @TypeOf(to_longlong); |
| 1534 | 1534 | \\ } |
| 1535 | 1535 | \\ { |
| 1536 | 1536 | \\ var to_char: [*c]u8 = @ptrCast([*c]u8, @alignCast(@import("std").meta.alignment([*c]u8), p)); |
| 1537 | | \\ _ = to_char; |
| 1537 | \\ _ = @TypeOf(to_char); |
| 1538 | 1538 | \\ var to_short: [*c]c_short = @ptrCast([*c]c_short, @alignCast(@import("std").meta.alignment([*c]c_short), p)); |
| 1539 | | \\ _ = to_short; |
| 1539 | \\ _ = @TypeOf(to_short); |
| 1540 | 1540 | \\ var to_int: [*c]c_int = @ptrCast([*c]c_int, @alignCast(@import("std").meta.alignment([*c]c_int), p)); |
| 1541 | | \\ _ = to_int; |
| 1541 | \\ _ = @TypeOf(to_int); |
| 1542 | 1542 | \\ var to_longlong: [*c]c_longlong = @ptrCast([*c]c_longlong, @alignCast(@import("std").meta.alignment([*c]c_longlong), p)); |
| 1543 | | \\ _ = to_longlong; |
| 1543 | \\ _ = @TypeOf(to_longlong); |
| 1544 | 1544 | \\ } |
| 1545 | 1545 | \\} |
| 1546 | 1546 | }); |
| ... | ... | @@ -1786,11 +1786,11 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 1786 | 1786 | \\ var arr: [10]u8 = [1]u8{ |
| 1787 | 1787 | \\ 1, |
| 1788 | 1788 | \\ } ++ [1]u8{0} ** 9; |
| 1789 | | \\ _ = arr; |
| 1789 | \\ _ = @TypeOf(arr); |
| 1790 | 1790 | \\ var arr1: [10][*c]u8 = [1][*c]u8{ |
| 1791 | 1791 | \\ null, |
| 1792 | 1792 | \\ } ++ [1][*c]u8{null} ** 9; |
| 1793 | | \\ _ = arr1; |
| 1793 | \\ _ = @TypeOf(arr1); |
| 1794 | 1794 | \\} |
| 1795 | 1795 | }); |
| 1796 | 1796 | |
| ... | ... | @@ -2038,16 +2038,16 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2038 | 2038 | \\pub var c: c_int = 4; |
| 2039 | 2039 | \\pub export fn foo(arg_c_1: u8) void { |
| 2040 | 2040 | \\ var c_1 = arg_c_1; |
| 2041 | | \\ _ = c_1; |
| 2041 | \\ _ = @TypeOf(c_1); |
| 2042 | 2042 | \\ var a_2: c_int = undefined; |
| 2043 | 2043 | \\ var b_3: u8 = 123; |
| 2044 | 2044 | \\ b_3 = @bitCast(u8, @truncate(i8, a_2)); |
| 2045 | 2045 | \\ { |
| 2046 | 2046 | \\ var d: c_int = 5; |
| 2047 | | \\ _ = d; |
| 2047 | \\ _ = @TypeOf(d); |
| 2048 | 2048 | \\ } |
| 2049 | 2049 | \\ var d: c_uint = @bitCast(c_uint, @as(c_int, 440)); |
| 2050 | | \\ _ = d; |
| 2050 | \\ _ = @TypeOf(d); |
| 2051 | 2051 | \\} |
| 2052 | 2052 | }); |
| 2053 | 2053 | |
| ... | ... | @@ -2146,7 +2146,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2146 | 2146 | \\ { |
| 2147 | 2147 | \\ var i: c_int = 2; |
| 2148 | 2148 | \\ var b: c_int = 4; |
| 2149 | | \\ _ = b; |
| 2149 | \\ _ = @TypeOf(b); |
| 2150 | 2150 | \\ while ((i + @as(c_int, 2)) != 0) : (i = 2) { |
| 2151 | 2151 | \\ var a: c_int = 2; |
| 2152 | 2152 | \\ _ = blk: { |
| ... | ... | @@ -2159,7 +2159,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2159 | 2159 | \\ } |
| 2160 | 2160 | \\ } |
| 2161 | 2161 | \\ var i: u8 = 2; |
| 2162 | | \\ _ = i; |
| 2162 | \\ _ = @TypeOf(i); |
| 2163 | 2163 | \\} |
| 2164 | 2164 | }); |
| 2165 | 2165 | |
| ... | ... | @@ -2396,27 +2396,27 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2396 | 2396 | , &[_][]const u8{ |
| 2397 | 2397 | \\pub export fn escapes() [*c]const u8 { |
| 2398 | 2398 | \\ var a: u8 = '\''; |
| 2399 | | \\ _ = a; |
| 2399 | \\ _ = @TypeOf(a); |
| 2400 | 2400 | \\ var b: u8 = '\\'; |
| 2401 | | \\ _ = b; |
| 2401 | \\ _ = @TypeOf(b); |
| 2402 | 2402 | \\ var c: u8 = '\x07'; |
| 2403 | | \\ _ = c; |
| 2403 | \\ _ = @TypeOf(c); |
| 2404 | 2404 | \\ var d: u8 = '\x08'; |
| 2405 | | \\ _ = d; |
| 2405 | \\ _ = @TypeOf(d); |
| 2406 | 2406 | \\ var e: u8 = '\x0c'; |
| 2407 | | \\ _ = e; |
| 2407 | \\ _ = @TypeOf(e); |
| 2408 | 2408 | \\ var f: u8 = '\n'; |
| 2409 | | \\ _ = f; |
| 2409 | \\ _ = @TypeOf(f); |
| 2410 | 2410 | \\ var g: u8 = '\r'; |
| 2411 | | \\ _ = g; |
| 2411 | \\ _ = @TypeOf(g); |
| 2412 | 2412 | \\ var h: u8 = '\t'; |
| 2413 | | \\ _ = h; |
| 2413 | \\ _ = @TypeOf(h); |
| 2414 | 2414 | \\ var i: u8 = '\x0b'; |
| 2415 | | \\ _ = i; |
| 2415 | \\ _ = @TypeOf(i); |
| 2416 | 2416 | \\ var j: u8 = '\x00'; |
| 2417 | | \\ _ = j; |
| 2417 | \\ _ = @TypeOf(j); |
| 2418 | 2418 | \\ var k: u8 = '"'; |
| 2419 | | \\ _ = k; |
| 2419 | \\ _ = @TypeOf(k); |
| 2420 | 2420 | \\ return "'\\\x07\x08\x0c\n\r\t\x0b\x00\""; |
| 2421 | 2421 | \\} |
| 2422 | 2422 | }); |
| ... | ... | @@ -2612,7 +2612,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2612 | 2612 | \\pub export fn foo() c_int { |
| 2613 | 2613 | \\ return blk: { |
| 2614 | 2614 | \\ var a: c_int = 1; |
| 2615 | | \\ _ = a; |
| 2615 | \\ _ = @TypeOf(a); |
| 2616 | 2616 | \\ break :blk a; |
| 2617 | 2617 | \\ }; |
| 2618 | 2618 | \\} |
| ... | ... | @@ -2716,7 +2716,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2716 | 2716 | \\int bar(void) { return 0; } |
| 2717 | 2717 | , &[_][]const u8{ |
| 2718 | 2718 | \\pub inline fn CALL(arg: anytype) @TypeOf(bar()) { |
| 2719 | | \\ _ = arg; |
| 2719 | \\ _ = @TypeOf(arg); |
| 2720 | 2720 | \\ return bar(); |
| 2721 | 2721 | \\} |
| 2722 | 2722 | }); |
| ... | ... | @@ -2775,14 +2775,14 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 2775 | 2775 | \\pub export fn foo() void { |
| 2776 | 2776 | \\ if (true) { |
| 2777 | 2777 | \\ var a: c_int = 2; |
| 2778 | | \\ _ = a; |
| 2778 | \\ _ = @TypeOf(a); |
| 2779 | 2779 | \\ } |
| 2780 | 2780 | \\ if ((blk: { |
| 2781 | 2781 | \\ _ = @as(c_int, 2); |
| 2782 | 2782 | \\ break :blk @as(c_int, 5); |
| 2783 | 2783 | \\ }) != 0) { |
| 2784 | 2784 | \\ var a: c_int = 2; |
| 2785 | | \\ _ = a; |
| 2785 | \\ _ = @TypeOf(a); |
| 2786 | 2786 | \\ } |
| 2787 | 2787 | \\} |
| 2788 | 2788 | }); |
| ... | ... | @@ -3285,7 +3285,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 3285 | 3285 | \\#define a 2 |
| 3286 | 3286 | , &[_][]const u8{ |
| 3287 | 3287 | \\pub inline fn FOO(bar: anytype) @TypeOf(baz(@import("std").zig.c_translation.cast(?*anyopaque, baz))) { |
| 3288 | | \\ _ = bar; |
| 3288 | \\ _ = @TypeOf(bar); |
| 3289 | 3289 | \\ return baz(@import("std").zig.c_translation.cast(?*anyopaque, baz)); |
| 3290 | 3290 | \\} |
| 3291 | 3291 | , |
| ... | ... | @@ -3425,7 +3425,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 3425 | 3425 | , &[_][]const u8{ |
| 3426 | 3426 | \\pub export fn foo(arg_a: [*c]c_int) void { |
| 3427 | 3427 | \\ var a = arg_a; |
| 3428 | | \\ _ = a; |
| 3428 | \\ _ = @TypeOf(a); |
| 3429 | 3429 | \\} |
| 3430 | 3430 | \\pub export fn bar(arg_a: [*c]const c_int) void { |
| 3431 | 3431 | \\ var a = arg_a; |
| ... | ... | @@ -3785,12 +3785,12 @@ pub fn addCases(cases: *tests.TranslateCContext) void { |
| 3785 | 3785 | \\pub export fn bar(arg_x: c_int, arg_y: c_int) c_int { |
| 3786 | 3786 | \\ var x = arg_x; |
| 3787 | 3787 | \\ var y = arg_y; |
| 3788 | | \\ _ = y; |
| 3788 | \\ _ = @TypeOf(y); |
| 3789 | 3789 | \\ return x; |
| 3790 | 3790 | \\} |
| 3791 | 3791 | , |
| 3792 | 3792 | \\pub inline fn FOO(A: anytype, B: anytype) @TypeOf(A) { |
| 3793 | | \\ _ = B; |
| 3793 | \\ _ = @TypeOf(B); |
| 3794 | 3794 | \\ return A; |
| 3795 | 3795 | \\} |
| 3796 | 3796 | }); |