Index: src/thread.cpp =================================================================== --- src/thread.cpp +++ src/thread.cpp @@ -77,7 +77,10 @@ unsigned thread::hardware_concurrency() _NOEXCEPT { -#if defined(CTL_HW) && defined(HW_NCPU) +#if defined(_LIBCPP_HAS_THREAD_API_EXTERNAL) + // Defer to the external threading implementation + return __libcpp_thread_hw_concurrency(); +#elif defined(CTL_HW) && defined(HW_NCPU) unsigned n; int mib[2] = {CTL_HW, HW_NCPU}; std::size_t s = sizeof(n);