aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/c.zig
diff options
context:
space:
mode:
authorCody Tapscott <cody+topolarity@tapscott.me>2022-01-24 11:15:22 -0700
committerCody Tapscott <cody+topolarity@tapscott.me>2022-01-24 12:00:04 -0700
commit8c96c64fbbab83f14027963d0c4b4da5254a57a8 (patch)
treef6dd77761d3a0c76b3efbb8e91315a0d81861531 /src/codegen/c.zig
parent52517e86d6c56c3eb705f8de77e5ef3c81fae2a9 (diff)
downloadzig-8c96c64fbbab83f14027963d0c4b4da5254a57a8.tar.gz
zig-8c96c64fbbab83f14027963d0c4b4da5254a57a8.zip
Add support for rendering `.enum_numbered`
Diffstat (limited to 'src/codegen/c.zig')
-rw-r--r--src/codegen/c.zig9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/codegen/c.zig b/src/codegen/c.zig
index 19f98d216a..22f91feeaa 100644
--- a/src/codegen/c.zig
+++ b/src/codegen/c.zig
@@ -542,6 +542,15 @@ pub const DeclGen = struct {
return writer.print("{d}", .{field_index});
}
},
+ .enum_numbered => {
+ const enum_obj = ty.castTag(.enum_numbered).?.data;
+ if (enum_obj.values.count() != 0) {
+ const tag_val = enum_obj.values.keys()[field_index];
+ return dg.renderValue(writer, enum_obj.tag_ty, tag_val);
+ } else {
+ return writer.print("{d}", .{field_index});
+ }
+ },
else => unreachable,
}
},