From 481b7bf3f095488a89e20d88ada092529bc6e6f8 Mon Sep 17 00:00:00 2001 From: Alex Rønne Petersen Date: Fri, 24 Jan 2025 03:45:38 +0100 Subject: std.Target: Remove functions that just wrap component functions. Functions like isMinGW() and isGnuLibC() have a good reason to exist: They look at multiple components of the target. But functions like isWasm(), isDarwin(), isGnu(), etc only exist to save 4-8 characters. I don't think this is a good enough reason to keep them, especially given that: * It's not immediately obvious to a reader whether target.isDarwin() means the same thing as target.os.tag.isDarwin() precisely because isMinGW() and similar functions *do* look at multiple components. * It's not clear where we would draw the line. The logical conclusion before this commit would be to also wrap Arch.isX86(), Os.Tag.isSolarish(), Abi.isOpenHarmony(), etc... this obviously quickly gets out of hand. * It's nice to just have a single correct way of doing something. --- lib/std/Target/Query.zig | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'lib/std/Target/Query.zig') diff --git a/lib/std/Target/Query.zig b/lib/std/Target/Query.zig index 56387c27b3..2d5c734108 100644 --- a/lib/std/Target/Query.zig +++ b/lib/std/Target/Query.zig @@ -26,7 +26,7 @@ os_version_min: ?OsVersion = null, os_version_max: ?OsVersion = null, /// `null` means default when cross compiling, or native when `os_tag` is native. -/// If `isGnuLibC()` is `false`, this must be `null` and is ignored. +/// If `isGnu()` is `false`, this must be `null` and is ignored. glibc_version: ?SemanticVersion = null, /// `null` means default when cross compiling, or native when `os_tag` is native. @@ -235,8 +235,7 @@ pub fn parse(args: ParseOptions) !Query { const abi_ver_text = abi_it.rest(); if (abi_it.next() != null) { - const tag = result.os_tag orelse builtin.os.tag; - if (tag.isGnuLibC(abi)) { + if (abi.isGnu()) { result.glibc_version = parseVersion(abi_ver_text) catch |err| switch (err) { error.Overflow => return error.InvalidAbiVersion, error.InvalidVersion => return error.InvalidAbiVersion, -- cgit v1.2.3