aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJacob Young <jacobly0@users.noreply.github.com>2022-10-06 22:27:32 -0400
committerJacob Young <jacobly0@users.noreply.github.com>2022-10-25 05:11:28 -0400
commit525dcaecba43f9931aff69fd7dd0cd5b443c2859 (patch)
tree75990c8d6e4948cb35f1993a156de477357fb54a /src
parent45c667eb21b1edde991435871523ece82793b449 (diff)
downloadzig-525dcaecba43f9931aff69fd7dd0cd5b443c2859.tar.gz
zig-525dcaecba43f9931aff69fd7dd0cd5b443c2859.zip
behavior: enable stage2_c tests that are currently passing
Also fix C warnings triggered by these tests.
Diffstat (limited to 'src')
-rw-r--r--src/codegen/c.zig5
1 files changed, 3 insertions, 2 deletions
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()) {