Commit 9a4a74eb65

Andrew Kelley <andrew@ziglang.org>
2024-01-08 19:53:06
mingw: remove pow.c from aarch64-windows mingw builds
I observed a duplicate symbol linker error; pow was defined both by mingwex.lib and ucrtbase.dll.
1 parent 046f755
Changed files (2)
lib
libc
mingw
math
arm-common
src
lib/libc/mingw/math/arm-common/pow.c
@@ -1,21 +0,0 @@
-/**
- * This file has no copyright assigned and is placed in the Public Domain.
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER.PD within this package.
- */
-
-#include <math.h>
-#include <limits.h>
-
-extern double (* __MINGW_IMP_SYMBOL(pow))(double, double);
-
-double pow(double x, double y)
-{
-  if (x == 1.0)
-    return 1.0;
-  if (y == 0.0)
-    return 1.0;
-  if (x == -1.0 && isinf(y))
-    return 1.0;
-  return __MINGW_IMP_SYMBOL(pow)(x, y);
-}
src/mingw.zig
@@ -954,7 +954,6 @@ const arm_common = [_][]const u8{
     "math" ++ path.sep_str ++ "arm-common" ++ path.sep_str ++ "logb.c",
     "math" ++ path.sep_str ++ "arm-common" ++ path.sep_str ++ "logbf.c",
     "math" ++ path.sep_str ++ "arm-common" ++ path.sep_str ++ "logbl.c",
-    "math" ++ path.sep_str ++ "arm-common" ++ path.sep_str ++ "pow.c",
     "math" ++ path.sep_str ++ "arm-common" ++ path.sep_str ++ "powf.c",
     "math" ++ path.sep_str ++ "arm-common" ++ path.sep_str ++ "powl.c",
     "math" ++ path.sep_str ++ "arm-common" ++ path.sep_str ++ "remainder.c",