Index: src/utils/NumberUtils.h
--- src/utils/NumberUtils.h.orig
+++ src/utils/NumberUtils.h
@@ -67,8 +67,10 @@ really_inline from_chars_result from_chars(const char 
     double
 #ifdef _WIN32
     tempval = _strtod_l(first, &endptr, loc.local);
-#else
+#elif defined(__GLIBC__) || defined(_LIBCPP_VERSION)
     tempval = ::strtod_l(first, &endptr, loc.local);
+#else
+    tempval = ::strtod(first, &endptr);
 #endif
 
     if (errno != 0 && errno != EINVAL)
@@ -111,8 +113,10 @@ really_inline from_chars_result from_chars(const char 
 #elif __APPLE__
     // On OSX, strtod_l is for some reason drastically faster than strtof_l.
     tempval = static_cast<float>(::strtod_l(first, &endptr, loc.local));
-#else
+#elif defined(__GLIBC__) || defined(_LIBCPP_VERSION)
     tempval = ::strtof_l(first, &endptr, loc.local);
+#else
+    tempval = ::strtof(first, &endptr);
 #endif
 
     if (errno != 0)
@@ -147,7 +151,7 @@ really_inline from_chars_result from_chars(const char 
     long int
 #ifdef _WIN32
     tempval = _strtol_l(first, &endptr, 0, loc.local);
-#elif defined(__GLIBC__)
+#elif defined(__GLIBC__) || defined(_LIBCPP_VERSION)
     tempval = ::strtol_l(first, &endptr, 0, loc.local);
 #else
     tempval = ::strtol(first, &endptr, 0);
