Commit c1c6f08296

Techatrix <techatrix@mailbox.org>
2025-02-19 09:33:56
std.Build.Step.ConfigHeader: permit inserting enum values
1 parent 344db9e
Changed files (4)
lib
std
Build
test
standalone
lib/std/Build/Step/ConfigHeader.zig
@@ -131,7 +131,7 @@ fn putValue(config_header: *ConfigHeader, field_name: []const u8, comptime T: ty
         .comptime_int => {
             try config_header.values.put(field_name, .{ .int = v });
         },
-        .enum_literal => {
+        .@"enum", .enum_literal => {
             try config_header.values.put(field_name, .{ .ident = @tagName(v) });
         },
         .optional => {
test/standalone/config_header/build.zig
@@ -10,6 +10,7 @@ pub fn build(b: *std.Build) void {
             .SOME_ZERO = 0,
             .SOME_ONE = 1,
             .SOME_TEN = 10,
+            .SOME_ENUM = @as(enum { foo, bar }, .foo),
             .SOME_ENUM_LITERAL = .@"test",
             .SOME_STRING = "test",
 
test/standalone/config_header/config.h
@@ -9,6 +9,7 @@ int foo();
 #define SOME_ZERO 0
 #define SOME_ONE 1
 #define SOME_TEN 10
+#define SOME_ENUM foo
 #define SOME_ENUM_LITERAL test
 #define SOME_STRING "test"
 
test/standalone/config_header/config.h.in
@@ -8,6 +8,7 @@ int foo();
 #undef SOME_ZERO
 #undef SOME_ONE
 #undef SOME_TEN
+#undef SOME_ENUM
 #undef SOME_ENUM_LITERAL
 #undef SOME_STRING