diff --git a/src/target.cpp b/src/target.cpp index b3150c5aba..5264184454 100644 --- a/src/target.cpp +++ b/src/target.cpp @@ -1088,8 +1088,24 @@ const char *target_dynamic_linker(const ZigTarget *target) { case OsTvOS: case OsWatchOS: case OsMacOSX: + case OsUefi: return nullptr; + case OsWindows: + switch (target->abi) { + case ZigLLVM_GNU: + case ZigLLVM_GNUABIN32: + case ZigLLVM_GNUABI64: + case ZigLLVM_GNUEABI: + case ZigLLVM_GNUEABIHF: + case ZigLLVM_GNUX32: + case ZigLLVM_Cygnus: + zig_panic("TODO implement target_dynamic_linker for mingw/cygwin"); + default: + return nullptr; + } + zig_unreachable(); + case OsAnanas: case OsCloudABI: case OsDragonFly: @@ -1098,7 +1114,6 @@ const char *target_dynamic_linker(const ZigTarget *target) { case OsLv2: case OsOpenBSD: case OsSolaris: - case OsWindows: case OsHaiku: case OsMinix: case OsRTEMS: @@ -1114,7 +1129,6 @@ const char *target_dynamic_linker(const ZigTarget *target) { case OsContiki: case OsAMDPAL: case OsZen: - case OsUefi: zig_panic("TODO implement target_dynamic_linker for this OS"); } zig_unreachable();