From 525dcaecba43f9931aff69fd7dd0cd5b443c2859 Mon Sep 17 00:00:00 2001 From: Jacob Young Date: Thu, 6 Oct 2022 22:27:32 -0400 Subject: behavior: enable stage2_c tests that are currently passing Also fix C warnings triggered by these tests. --- src/codegen/c.zig | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/codegen/c.zig b/src/codegen/c.zig index 3e8398bb83..a973dd1fc5 100644 --- a/src/codegen/c.zig +++ b/src/codegen/c.zig @@ -1363,7 +1363,8 @@ pub const DeclGen = struct { } const name_end = buffer.items.len; - try bw.print("[{d}];\n", .{t.arrayLenIncludingSentinel()}); + const c_len = t.arrayLenIncludingSentinel(); + try bw.print("[{d}];\n", .{if (c_len > 0) c_len else 1}); const rendered = buffer.toOwnedSlice(); errdefer dg.typedefs.allocator.free(rendered); @@ -3514,7 +3515,7 @@ fn airOptionalPayloadPtr(f: *Function, inst: Air.Inst.Index) !CValue { const payload_ty = opt_ty.optionalChild(&buf); if (!payload_ty.hasRuntimeBitsIgnoreComptime()) { - return operand; + return CValue.undefined_ptr; } if (opt_ty.optionalReprIsPayload()) { -- cgit v1.2.3