authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-10-17 03:16:09+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-10-17 04:29:45+02:00
logbc92241eb7a6d8ea23a4800435d4a5f85fcf1bd1
treeeee6de284dd91e59da39223bf58ad0b2880a38de
parente4069c6c5f8dc084dd64de5023ed8e95e34badab
signature Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.Target: refactor cCharSignedness() a tiny bit


1 files changed, 33 insertions(+), 33 deletions(-)

lib/std/Target.zig+33-33
...@@ -3137,39 +3137,39 @@ pub fn stackGrowth(target: *const Target) StackGrowth {...@@ -3137,39 +3137,39 @@ pub fn stackGrowth(target: *const Target) StackGrowth {
3137/// an option to override the default signedness e.g. GCC's -funsigned-char / -fsigned-char3137/// an option to override the default signedness e.g. GCC's -funsigned-char / -fsigned-char
3138/// Returns `null` if no C ABI is defined for this target.3138/// Returns `null` if no C ABI is defined for this target.
3139pub fn cCharSignedness(target: *const Target) ?std.builtin.Signedness {3139pub fn cCharSignedness(target: *const Target) ?std.builtin.Signedness {
3140 switch (target.os.tag) {3140 return switch (target.os.tag) {
3141 .ps3 => return .signed,3141 .driverkit, .ios, .maccatalyst, .macos, .tvos, .visionos, .watchos => .signed,
3142 .opengl => return null,3142 .windows, .uefi => .signed,
3143 else => {},3143 .ps3 => .signed,
3144 }3144 .opengl => null,
3145 if (target.os.tag.isDarwin() or target.os.tag == .windows or target.os.tag == .uefi) return .signed;3145 else => switch (target.cpu.arch) {
3146 return switch (target.cpu.arch) {3146 .aarch64,
3147 .aarch64,3147 .aarch64_be,
3148 .aarch64_be,3148 .arm,
3149 .arm,3149 .armeb,
3150 .armeb,3150 .arc,
3151 .arc,3151 .arceb,
3152 .arceb,3152 .csky,
3153 .csky,3153 .ez80,
3154 .ez80,3154 .hexagon,
3155 .hexagon,3155 .msp430,
3156 .msp430,3156 .powerpc,
3157 .powerpc,3157 .powerpcle,
3158 .powerpcle,3158 .powerpc64,
3159 .powerpc64,3159 .powerpc64le,
3160 .powerpc64le,3160 .s390x,
3161 .s390x,3161 .riscv32,
3162 .riscv32,3162 .riscv32be,
3163 .riscv32be,3163 .riscv64,
3164 .riscv64,3164 .riscv64be,
3165 .riscv64be,3165 .thumb,
3166 .thumb,3166 .thumbeb,
3167 .thumbeb,3167 .xcore,
3168 .xcore,3168 .xtensa,
3169 .xtensa,3169 .xtensaeb,
3170 .xtensaeb,3170 => .unsigned,
3171 => .unsigned,3171 else => .signed,
3172 else => .signed,3172 },
3173 };3173 };
3174}3174}
31753175