@@ -313,22 +313,22 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
313
313
, &[_ ][]const u8 {
314
314
\\pub const uuid_t = [16]u8;
315
315
\\pub const UUID_NULL: uuid_t = [16]u8{
316
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
317
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
318
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
319
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
320
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
321
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
322
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
323
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
324
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
325
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
326
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
327
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
328
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
329
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
330
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
331
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 0))) ,
316
+ \\ 0 ,
317
+ \\ 0 ,
318
+ \\ 0 ,
319
+ \\ 0 ,
320
+ \\ 0 ,
321
+ \\ 0 ,
322
+ \\ 0 ,
323
+ \\ 0 ,
324
+ \\ 0 ,
325
+ \\ 0 ,
326
+ \\ 0 ,
327
+ \\ 0 ,
328
+ \\ 0 ,
329
+ \\ 0 ,
330
+ \\ 0 ,
331
+ \\ 0 ,
332
332
\\};
333
333
});
334
334
@@ -382,10 +382,10 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
382
382
\\};
383
383
\\pub export var ub: union_unnamed_1 = union_unnamed_1{
384
384
\\ .c = [4]u8{
385
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 'a'))) ,
386
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 'b'))) ,
387
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 'b'))) ,
388
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 'a'))) ,
385
+ \\ 'a',
386
+ \\ 'b',
387
+ \\ 'b',
388
+ \\ 'a',
389
389
\\ },
390
390
\\};
391
391
});
@@ -512,7 +512,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
512
512
, &[_ ][]const u8 {
513
513
\\pub export fn foo() void {
514
514
\\ var a: c_int = undefined;
515
- \\ var b: u8 = @bitCast(u8, @truncate(i8, @as(c_int, 123))) ;
515
+ \\ var b: u8 = 123;
516
516
\\ const c: c_int = undefined;
517
517
\\ const d: c_uint = @bitCast(c_uint, @as(c_int, 440));
518
518
\\ var e: c_int = 10;
@@ -1468,7 +1468,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1468
1468
, &[_ ][]const u8 {
1469
1469
\\pub fn foo() callconv(.C) void {
1470
1470
\\ var arr: [10]u8 = [1]u8{
1471
- \\ @bitCast(u8, @truncate(i8, @as(c_int, 1))) ,
1471
+ \\ 1 ,
1472
1472
\\ } ++ [1]u8{0} ** 9;
1473
1473
\\ var arr1: [10][*c]u8 = [1][*c]u8{
1474
1474
\\ null,
@@ -1721,13 +1721,13 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1721
1721
\\ unsigned d = 440;
1722
1722
\\}
1723
1723
, &[_ ][]const u8 {
1724
- \\pub var a: c_long = @bitCast(c_long, @as(c_long, @as(c_int, 2))) ;
1725
- \\pub var b: c_long = @bitCast(c_long, @as(c_long, @as(c_int, 2))) ;
1724
+ \\pub var a: c_long = 2 ;
1725
+ \\pub var b: c_long = 2 ;
1726
1726
\\pub var c: c_int = 4;
1727
1727
\\pub export fn foo(arg_c_1: u8) void {
1728
1728
\\ var c_1 = arg_c_1;
1729
1729
\\ var a_2: c_int = undefined;
1730
- \\ var b_3: u8 = @bitCast(u8, @truncate(i8, @as(c_int, 123))) ;
1730
+ \\ var b_3: u8 = 123;
1731
1731
\\ b_3 = @bitCast(u8, @truncate(i8, a_2));
1732
1732
\\ {
1733
1733
\\ var d: c_int = 5;
@@ -1838,15 +1838,15 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1838
1838
\\ };
1839
1839
\\ }
1840
1840
\\ }
1841
- \\ var i: u8 = @bitCast(u8, @truncate(i8, @as(c_int, 2))) ;
1841
+ \\ var i: u8 = 2 ;
1842
1842
\\}
1843
1843
});
1844
1844
1845
1845
cases .add ("shadowing primitive types" ,
1846
1846
\\unsigned anyerror = 2;
1847
1847
\\#define noreturn _Noreturn
1848
1848
, &[_ ][]const u8 {
1849
- \\pub export var anyerror_1: c_uint = @bitCast(c_uint, @as(c_int, 2)) ;
1849
+ \\pub export var anyerror_1: c_uint = 2 ;
1850
1850
,
1851
1851
\\pub const noreturn_2 = @compileError("unable to translate C expr: unexpected token .Keyword_noreturn");
1852
1852
});
@@ -1860,7 +1860,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1860
1860
\\pub export var a: f32 = @floatCast(f32, 3.1415);
1861
1861
\\pub export var b: f64 = 3.1415;
1862
1862
\\pub export var c: c_int = @floatToInt(c_int, 3.1415);
1863
- \\pub export var d: f64 = @intToFloat(f64, @as(c_int, 3)) ;
1863
+ \\pub export var d: f64 = 3 ;
1864
1864
});
1865
1865
1866
1866
cases .add ("conditional operator" ,
@@ -2009,7 +2009,6 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2009
2009
\\}
2010
2010
});
2011
2011
2012
- // TODO translate-c should in theory be able to figure out to drop all these casts
2013
2012
cases .add ("escape sequences" ,
2014
2013
\\const char *escapes() {
2015
2014
\\char a = '\'',
@@ -2028,17 +2027,17 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2028
2027
\\
2029
2028
, &[_ ][]const u8 {
2030
2029
\\pub export fn escapes() [*c]const u8 {
2031
- \\ var a: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\''))) ;
2032
- \\ var b: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\\'))) ;
2033
- \\ var c: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\x07'))) ;
2034
- \\ var d: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\x08'))) ;
2035
- \\ var e: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\x0c'))) ;
2036
- \\ var f: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\n'))) ;
2037
- \\ var g: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\r'))) ;
2038
- \\ var h: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\t'))) ;
2039
- \\ var i: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\x0b'))) ;
2040
- \\ var j: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\x00'))) ;
2041
- \\ var k: u8 = @bitCast(u8, @truncate(i8, @as(c_int, '\"'))) ;
2030
+ \\ var a: u8 = '\'';
2031
+ \\ var b: u8 = '\\';
2032
+ \\ var c: u8 = '\x07';
2033
+ \\ var d: u8 = '\x08';
2034
+ \\ var e: u8 = '\x0c';
2035
+ \\ var f: u8 = '\n';
2036
+ \\ var g: u8 = '\r';
2037
+ \\ var h: u8 = '\t';
2038
+ \\ var i: u8 = '\x0b';
2039
+ \\ var j: u8 = '\x00';
2040
+ \\ var k: u8 = '\"';
2042
2041
\\ return "\'\\\x07\x08\x0c\n\r\t\x0b\x00\"";
2043
2042
\\}
2044
2043
});
@@ -2308,8 +2307,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2308
2307
, &[_ ][]const u8 {
2309
2308
\\pub export fn foo() void {
2310
2309
\\ var a: [10]c_longlong = undefined;
2311
- \\ var i: c_longlong = @bitCast(c_longlong, @as(c_longlong, @as(c_int, 0))) ;
2312
- \\ a[@intCast(usize, i)] = @bitCast(c_longlong, @as(c_longlong, @as(c_int, 0))) ;
2310
+ \\ var i: c_longlong = 0 ;
2311
+ \\ a[@intCast(usize, i)] = 0 ;
2313
2312
\\}
2314
2313
});
2315
2314
@@ -2321,8 +2320,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2321
2320
, &[_ ][]const u8 {
2322
2321
\\pub export fn foo() void {
2323
2322
\\ var a: [10]c_uint = undefined;
2324
- \\ var i: c_uint = @bitCast(c_uint, @as(c_int, 0)) ;
2325
- \\ a[i] = @bitCast(c_uint, @as(c_int, 0)) ;
2323
+ \\ var i: c_uint = 0 ;
2324
+ \\ a[i] = 0 ;
2326
2325
\\}
2327
2326
});
2328
2327
@@ -2527,7 +2526,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2527
2526
, &[_ ][]const u8 {
2528
2527
\\pub export fn foo() void {
2529
2528
\\ var i: c_int = 0;
2530
- \\ var u: c_uint = @bitCast(c_uint, @as(c_int, 0)) ;
2529
+ \\ var u: c_uint = 0 ;
2531
2530
\\ i += 1;
2532
2531
\\ i -= 1;
2533
2532
\\ u +%= 1;
@@ -2614,7 +2613,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2614
2613
, &[_ ][]const u8 {
2615
2614
\\pub export fn foo() void {
2616
2615
\\ var a: c_int = 0;
2617
- \\ var b: c_uint = @bitCast(c_uint, @as(c_int, 0)) ;
2616
+ \\ var b: c_uint = 0 ;
2618
2617
\\ a += blk: {
2619
2618
\\ const ref = &a;
2620
2619
\\ ref.* += @as(c_int, 1);
@@ -2692,7 +2691,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2692
2691
\\}
2693
2692
, &[_ ][]const u8 {
2694
2693
\\pub export fn foo() void {
2695
- \\ var a: c_uint = @bitCast(c_uint, @as(c_int, 0)) ;
2694
+ \\ var a: c_uint = 0 ;
2696
2695
\\ a +%= blk: {
2697
2696
\\ const ref = &a;
2698
2697
\\ ref.* +%= @bitCast(c_uint, @as(c_int, 1));
@@ -2752,7 +2751,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2752
2751
, &[_ ][]const u8 {
2753
2752
\\pub export fn foo() void {
2754
2753
\\ var i: c_int = 0;
2755
- \\ var u: c_uint = @bitCast(c_uint, @as(c_int, 0)) ;
2754
+ \\ var u: c_uint = 0 ;
2756
2755
\\ i += 1;
2757
2756
\\ i -= 1;
2758
2757
\\ u +%= 1;
0 commit comments