aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/c.zig
diff options
context:
space:
mode:
authorJacob Young <jacobly0@users.noreply.github.com>2022-12-24 02:39:56 -0500
committerJacob Young <jacobly0@users.noreply.github.com>2022-12-24 02:40:33 -0500
commitbc913295b52ae0368c1a0fb33678ec6ac3408c9b (patch)
treea2be4582a3d9f0446f929cff1759e5b590b6f31d /src/codegen/c.zig
parent6cd80042133c28d37bb30eba49d022a4fb23c058 (diff)
downloadzig-bc913295b52ae0368c1a0fb33678ec6ac3408c9b.tar.gz
zig-bc913295b52ae0368c1a0fb33678ec6ac3408c9b.zip
CBE: fix emitting a partially undefined string literal
Diffstat (limited to 'src/codegen/c.zig')
-rw-r--r--src/codegen/c.zig5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/codegen/c.zig b/src/codegen/c.zig
index 51b2f30cae..fe6e245716 100644
--- a/src/codegen/c.zig
+++ b/src/codegen/c.zig
@@ -1066,7 +1066,10 @@ pub const DeclGen = struct {
var index: usize = 0;
while (index < ai.len) : (index += 1) {
const elem_val = try val.elemValue(dg.module, arena_allocator, index);
- const elem_val_u8 = @intCast(u8, elem_val.toUnsignedInt(target));
+ const elem_val_u8 = if (elem_val.isUndef())
+ undefPattern(u8)
+ else
+ @intCast(u8, elem_val.toUnsignedInt(target));
try writeStringLiteralChar(writer, elem_val_u8);
}
if (ai.sentinel) |s| {