authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-10-13 20:23:28+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-10-22 22:15:31+02:00
log7f5cd33fc45bc3002c3acbda0fdab3603d6edb77
tree7d3e6e54e7618a2e9e45592d15cc61ef15ab4db9
parent049a5804a309e0d202273a969768a7e83ec0b4a7
signature Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.c: fix LC enum for serenity


1 files changed, 28 insertions(+), 15 deletions(-)

lib/std/c.zig+28-15
......@@ -11287,21 +11287,34 @@ pub extern "c" fn setsid() pid_t;
1128711287/// These are implementation defined but share identical values in at least musl and glibc:
1128811288/// - https://git.musl-libc.org/cgit/musl/tree/include/locale.h?id=ab31e9d6a0fa7c5c408856c89df2dfb12c344039#n18
1128911289/// - https://sourceware.org/git/?p=glibc.git;a=blob;f=locale/bits/locale.h;h=0fcbb66114be5fef0577dc9047256eb508c45919;hb=c90cfce849d010474e8cccf3e5bff49a2c8b141f#l26
11290pub const LC = enum(c_int) {
11291 CTYPE = 0,
11292 NUMERIC = 1,
11293 TIME = 2,
11294 COLLATE = 3,
11295 MONETARY = 4,
11296 MESSAGES = 5,
11297 ALL = 6,
11298 PAPER = 7,
11299 NAME = 8,
11300 ADDRESS = 9,
11301 TELEPHONE = 10,
11302 MEASUREMENT = 11,
11303 IDENTIFICATION = 12,
11304 _,
11290pub const LC = switch (native_os) {
11291 // https://github.com/SerenityOS/serenity/blob/fe4f3879551f2fdd8a24de06b88f4450e2f3b93d/Userland/Libraries/LibC/locale.h#L14-L29
11292 .serenity => enum(c_int) {
11293 ALL = 0,
11294 NUMERIC = 1,
11295 CTYPE = 2,
11296 COLLATE = 3,
11297 TIME = 4,
11298 MONETARY = 5,
11299 MESSAGES = 6,
11300 _,
11301 },
11302 else => enum(c_int) {
11303 CTYPE = 0,
11304 NUMERIC = 1,
11305 TIME = 2,
11306 COLLATE = 3,
11307 MONETARY = 4,
11308 MESSAGES = 5,
11309 ALL = 6,
11310 PAPER = 7,
11311 NAME = 8,
11312 ADDRESS = 9,
11313 TELEPHONE = 10,
11314 MEASUREMENT = 11,
11315 IDENTIFICATION = 12,
11316 _,
11317 },
1130511318};
1130611319
1130711320pub extern "c" fn setlocale(category: LC, locale: ?[*:0]const u8) ?[*:0]const u8;