aboutsummaryrefslogtreecommitdiff
path: root/src/codegen
diff options
context:
space:
mode:
Diffstat (limited to 'src/codegen')
-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,
}
},