Commit 8238d4b335
src/codegen/c.zig
@@ -433,7 +433,6 @@ pub const DeclGen = struct {
if (is_signed) try writer.writeAll("(int128_t)");
if (is_neg) try writer.writeByte('-');
- assert(high > 0);
try writer.print("(((uint128_t)0x{x}u<<64)", .{high});
if (low > 0)
@@ -572,6 +571,11 @@ pub const DeclGen = struct {
64 => return writer.writeAll("(void *)0xaaaaaaaaaaaaaaaa"),
else => unreachable,
},
+ .Struct => {
+ try writer.writeByte('(');
+ try dg.renderTypecast(writer, ty);
+ return writer.writeAll("){0xaa}");
+ },
else => {
// This should lower to 0xaa bytes in safe modes, and for unsafe modes should
// lower to leaving variables uninitialized (that might need to be implemented
test/behavior/eval.zig
@@ -443,7 +443,6 @@ fn copyWithPartialInline(s: []u32, b: []u8) void {
test "binary math operator in partially inlined function" {
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
- if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
var s: [4]u32 = undefined;
var b: [16]u8 = undefined;
test/behavior/fn.zig
@@ -75,7 +75,6 @@ test "return inner function which references comptime variable of outer function
}
test "discard the result of a function that returns a struct" {
- if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
test/behavior/for.zig
@@ -69,7 +69,6 @@ test "basic for loop" {
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
- if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
const expected_result = [_]u8{ 9, 8, 7, 6, 0, 1, 2, 3 } ** 3;
test/behavior/int128.zig
@@ -46,7 +46,6 @@ test "int128" {
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
- if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
var buff: i128 = -1;
try expect(buff < 0 and (buff + 1) == 0);
test/behavior/slice.zig
@@ -74,8 +74,6 @@ fn assertLenIsZero(msg: []const u8) !void {
}
test "access len index of sentinel-terminated slice" {
- if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
-
const S = struct {
fn doTheTest() !void {
var slice: [:0]const u8 = "hello";