diff --git a/libcxx/include/__math/abs.h b/libcxx/include/__math/abs.h --- a/libcxx/include/__math/abs.h +++ b/libcxx/include/__math/abs.h @@ -34,7 +34,7 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type fabs(_A1 __x) _NOEXCEPT {return __builtin_fabs((double)__x);} } // namespace __math diff --git a/libcxx/include/__math/copysign.h b/libcxx/include/__math/copysign.h --- a/libcxx/include/__math/copysign.h +++ b/libcxx/include/__math/copysign.h @@ -35,11 +35,11 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type copysign(_A1 __x, _A2 __y) _NOEXCEPT { return ::__builtin_copysign(__x, __y); diff --git a/libcxx/include/__math/error_functions.h b/libcxx/include/__math/error_functions.h --- a/libcxx/include/__math/error_functions.h +++ b/libcxx/include/__math/error_functions.h @@ -34,7 +34,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type erf(_A1 __x) _NOEXCEPT {return __builtin_erf((double)__x);} // erfc @@ -50,7 +50,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type erfc(_A1 __x) _NOEXCEPT {return __builtin_erfc((double)__x);} } // namespace __math diff --git a/libcxx/include/__math/exponential_functions.h b/libcxx/include/__math/exponential_functions.h --- a/libcxx/include/__math/exponential_functions.h +++ b/libcxx/include/__math/exponential_functions.h @@ -37,7 +37,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type exp(_A1 __x) _NOEXCEPT {return __builtin_exp((double)__x);} // frexp @@ -53,7 +53,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type frexp(_A1 __x, int* __e) _NOEXCEPT {return __builtin_frexp((double)__x, __e);} // ldexp @@ -69,7 +69,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type ldexp(_A1 __x, int __e) _NOEXCEPT {return __builtin_ldexp((double)__x, __e);} // exp2 @@ -85,7 +85,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type exp2(_A1 __x) _NOEXCEPT {return __builtin_exp2((double)__x);} // expm1 @@ -101,7 +101,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type expm1(_A1 __x) _NOEXCEPT {return __builtin_expm1((double)__x);} // scalbln @@ -117,7 +117,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type scalbln(_A1 __x, long __y) _NOEXCEPT {return __builtin_scalbln((double)__x, __y);} // scalbn @@ -133,7 +133,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type scalbn(_A1 __x, int __y) _NOEXCEPT {return __builtin_scalbn((double)__x, __y);} // pow @@ -149,17 +149,17 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type pow(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::pow((__result_type)__x, (__result_type)__y); } diff --git a/libcxx/include/__math/fdim.h b/libcxx/include/__math/fdim.h --- a/libcxx/include/__math/fdim.h +++ b/libcxx/include/__math/fdim.h @@ -34,17 +34,17 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type fdim(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::fdim((__result_type)__x, (__result_type)__y); } diff --git a/libcxx/include/__math/fma.h b/libcxx/include/__math/fma.h --- a/libcxx/include/__math/fma.h +++ b/libcxx/include/__math/fma.h @@ -41,19 +41,19 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value && - std::is_arithmetic<_A3>::value, - std::__promote<_A1, _A2, _A3> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value && + is_arithmetic<_A3>::value, + __promote<_A1, _A2, _A3> >::type fma(_A1 __x, _A2 __y, _A3 __z) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2, _A3>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value && - std::_IsSame<_A3, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2, _A3>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value && + _IsSame<_A3, __result_type>::value)), ""); return __builtin_fma((__result_type)__x, (__result_type)__y, (__result_type)__z); } diff --git a/libcxx/include/__math/gamma.h b/libcxx/include/__math/gamma.h --- a/libcxx/include/__math/gamma.h +++ b/libcxx/include/__math/gamma.h @@ -34,7 +34,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type lgamma(_A1 __x) _NOEXCEPT {return __builtin_lgamma((double)__x);} // nan @@ -52,7 +52,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type tgamma(_A1 __x) _NOEXCEPT {return __builtin_tgamma((double)__x);} } // namespace __math diff --git a/libcxx/include/__math/hyperbolic_functions.h b/libcxx/include/__math/hyperbolic_functions.h --- a/libcxx/include/__math/hyperbolic_functions.h +++ b/libcxx/include/__math/hyperbolic_functions.h @@ -34,7 +34,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type cosh(_A1 __x) _NOEXCEPT {return __builtin_cosh((double)__x);} // sinh @@ -50,7 +50,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type sinh(_A1 __x) _NOEXCEPT {return __builtin_sinh((double)__x);} // tanh @@ -66,7 +66,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type tanh(_A1 __x) _NOEXCEPT {return __builtin_tanh((double)__x);} } // namespace __math diff --git a/libcxx/include/__math/hypot.h b/libcxx/include/__math/hypot.h --- a/libcxx/include/__math/hypot.h +++ b/libcxx/include/__math/hypot.h @@ -34,17 +34,17 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type hypot(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::hypot((__result_type)__x, (__result_type)__y); } diff --git a/libcxx/include/__math/inverse_hyperbolic_functions.h b/libcxx/include/__math/inverse_hyperbolic_functions.h --- a/libcxx/include/__math/inverse_hyperbolic_functions.h +++ b/libcxx/include/__math/inverse_hyperbolic_functions.h @@ -34,7 +34,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type acosh(_A1 __x) _NOEXCEPT {return __builtin_acosh((double)__x);} // asinh @@ -50,7 +50,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type asinh(_A1 __x) _NOEXCEPT {return __builtin_asinh((double)__x);} // atanh @@ -66,7 +66,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type atanh(_A1 __x) _NOEXCEPT {return __builtin_atanh((double)__x);} } // namespace __math diff --git a/libcxx/include/__math/inverse_trigonometric_functions.h b/libcxx/include/__math/inverse_trigonometric_functions.h --- a/libcxx/include/__math/inverse_trigonometric_functions.h +++ b/libcxx/include/__math/inverse_trigonometric_functions.h @@ -37,7 +37,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type acos(_A1 __x) _NOEXCEPT {return __builtin_acos((double)__x);} // asin @@ -53,7 +53,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type asin(_A1 __x) _NOEXCEPT {return __builtin_asin((double)__x);} // atan @@ -69,7 +69,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type atan(_A1 __x) _NOEXCEPT {return __builtin_atan((double)__x);} // atan2 @@ -85,17 +85,17 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type atan2(_A1 __y, _A2 __x) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::atan2((__result_type)__y, (__result_type)__x); } diff --git a/libcxx/include/__math/logarithms.h b/libcxx/include/__math/logarithms.h --- a/libcxx/include/__math/logarithms.h +++ b/libcxx/include/__math/logarithms.h @@ -34,7 +34,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type log(_A1 __x) _NOEXCEPT {return __builtin_log((double)__x);} // log10 @@ -51,7 +51,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type log10(_A1 __x) _NOEXCEPT {return __builtin_log10((double)__x);} // ilogb @@ -67,7 +67,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, int>::type +typename enable_if::value, int>::type ilogb(_A1 __x) _NOEXCEPT {return __builtin_ilogb((double)__x);} // log1p @@ -83,7 +83,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type log1p(_A1 __x) _NOEXCEPT {return __builtin_log1p((double)__x);} // log2 @@ -99,7 +99,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type log2(_A1 __x) _NOEXCEPT {return __builtin_log2((double)__x);} // logb @@ -115,7 +115,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type logb(_A1 __x) _NOEXCEPT {return __builtin_logb((double)__x);} } // namespace __math diff --git a/libcxx/include/__math/min_max.h b/libcxx/include/__math/min_max.h --- a/libcxx/include/__math/min_max.h +++ b/libcxx/include/__math/min_max.h @@ -36,17 +36,17 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type fmax(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::fmax((__result_type)__x, (__result_type)__y); } @@ -63,17 +63,17 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type fmin(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::fmin((__result_type)__x, (__result_type)__y); } diff --git a/libcxx/include/__math/modulo.h b/libcxx/include/__math/modulo.h --- a/libcxx/include/__math/modulo.h +++ b/libcxx/include/__math/modulo.h @@ -36,17 +36,17 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type fmod(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::fmod((__result_type)__x, (__result_type)__y); } diff --git a/libcxx/include/__math/remainder.h b/libcxx/include/__math/remainder.h --- a/libcxx/include/__math/remainder.h +++ b/libcxx/include/__math/remainder.h @@ -37,17 +37,17 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type remainder(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::remainder((__result_type)__x, (__result_type)__y); } @@ -64,17 +64,17 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type remquo(_A1 __x, _A2 __y, int* __z) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::remquo((__result_type)__x, (__result_type)__y, __z); } diff --git a/libcxx/include/__math/roots.h b/libcxx/include/__math/roots.h --- a/libcxx/include/__math/roots.h +++ b/libcxx/include/__math/roots.h @@ -34,7 +34,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type sqrt(_A1 __x) _NOEXCEPT {return __builtin_sqrt((double)__x);} // cbrt @@ -50,7 +50,7 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type cbrt(_A1 __x) _NOEXCEPT {return __builtin_cbrt((double)__x);} } // namespace __math diff --git a/libcxx/include/__math/rounding_functions.h b/libcxx/include/__math/rounding_functions.h --- a/libcxx/include/__math/rounding_functions.h +++ b/libcxx/include/__math/rounding_functions.h @@ -37,7 +37,7 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type ceil(_A1 __x) _NOEXCEPT {return __builtin_ceil((double)__x);} // floor @@ -53,7 +53,7 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type floor(_A1 __x) _NOEXCEPT {return __builtin_floor((double)__x);} // llrint @@ -75,7 +75,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, long long>::type +typename enable_if::value, long long>::type llrint(_A1 __x) _NOEXCEPT { return __builtin_llrint((double)__x); @@ -100,7 +100,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, long long>::type +typename enable_if::value, long long>::type llround(_A1 __x) _NOEXCEPT { return __builtin_llround((double)__x); @@ -125,7 +125,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, long>::type +typename enable_if::value, long>::type lrint(_A1 __x) _NOEXCEPT { return __builtin_lrint((double)__x); @@ -150,7 +150,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, long>::type +typename enable_if::value, long>::type lround(_A1 __x) _NOEXCEPT { return __builtin_lround((double)__x); @@ -169,7 +169,7 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type nearbyint(_A1 __x) _NOEXCEPT {return __builtin_nearbyint((double)__x);} // nextafter @@ -185,17 +185,17 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::__enable_if_t +typename __enable_if_t < - std::is_arithmetic<_A1>::value && - std::is_arithmetic<_A2>::value, - std::__promote<_A1, _A2> + is_arithmetic<_A1>::value && + is_arithmetic<_A2>::value, + __promote<_A1, _A2> >::type nextafter(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type __result_type; - static_assert((!(std::_IsSame<_A1, __result_type>::value && - std::_IsSame<_A2, __result_type>::value)), ""); + typedef typename __promote<_A1, _A2>::type __result_type; + static_assert((!(_IsSame<_A1, __result_type>::value && + _IsSame<_A2, __result_type>::value)), ""); return __math::nextafter((__result_type)__x, (__result_type)__y); } @@ -212,7 +212,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type nexttoward(_A1 __x, long double __y) _NOEXCEPT {return __builtin_nexttoward((double)__x, __y);} // rint @@ -234,7 +234,7 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type rint(_A1 __x) _NOEXCEPT { return __builtin_rint((double)__x); @@ -259,7 +259,7 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type round(_A1 __x) _NOEXCEPT { return __builtin_round((double)__x); @@ -284,7 +284,7 @@ template _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type trunc(_A1 __x) _NOEXCEPT { return __builtin_trunc((double)__x); diff --git a/libcxx/include/__math/traits.h b/libcxx/include/__math/traits.h --- a/libcxx/include/__math/traits.h +++ b/libcxx/include/__math/traits.h @@ -28,17 +28,17 @@ // signbit -template ::value, int> = 0> +template ::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool signbit(_A1 __x) _NOEXCEPT { return __builtin_signbit(__x); } -template ::value && std::is_signed<_A1>::value, int> = 0> +template ::value && is_signed<_A1>::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool signbit(_A1 __x) _NOEXCEPT { return __x < 0; } -template ::value && !std::is_signed<_A1>::value, int> = 0> +template ::value && !is_signed<_A1>::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool signbit(_A1) _NOEXCEPT { return false; } @@ -46,13 +46,13 @@ // isfinite template ::value && std::numeric_limits<_A1>::has_infinity, int> = 0> + __enable_if_t::value && numeric_limits<_A1>::has_infinity, int> = 0> _LIBCPP_NODISCARD_EXT _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI bool isfinite(_A1 __x) _NOEXCEPT { - return __builtin_isfinite((typename std::__promote<_A1>::type)__x); + return __builtin_isfinite((typename __promote<_A1>::type)__x); } template ::value && !std::numeric_limits<_A1>::has_infinity, int> = 0> + __enable_if_t::value && !numeric_limits<_A1>::has_infinity, int> = 0> _LIBCPP_NODISCARD_EXT _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI bool isfinite(_A1) _NOEXCEPT { return true; } @@ -60,14 +60,14 @@ // isinf template ::value && std::numeric_limits<_A1>::has_infinity, int> = 0> + __enable_if_t::value && numeric_limits<_A1>::has_infinity, int> = 0> _LIBCPP_NODISCARD_EXT _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI bool isinf(_A1 __x) _NOEXCEPT { - return __builtin_isinf((typename std::__promote<_A1>::type)__x); + return __builtin_isinf((typename __promote<_A1>::type)__x); } template _LIBCPP_NODISCARD_EXT _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI - typename std::enable_if< std::is_arithmetic<_A1>::value && !std::numeric_limits<_A1>::has_infinity, bool>::type + typename enable_if< is_arithmetic<_A1>::value && !numeric_limits<_A1>::has_infinity, bool>::type isinf(_A1) _NOEXCEPT { return false; } @@ -88,12 +88,12 @@ // isnan -template ::value, int> = 0> +template ::value, int> = 0> _LIBCPP_NODISCARD_EXT _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI bool isnan(_A1 __x) _NOEXCEPT { return __builtin_isnan(__x); } -template ::value, int> = 0> +template ::value, int> = 0> _LIBCPP_NODISCARD_EXT _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI bool isnan(_A1) _NOEXCEPT { return false; } @@ -114,12 +114,12 @@ // isnormal -template ::value, int> = 0> +template ::value, int> = 0> _LIBCPP_NODISCARD_EXT _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI bool isnormal(_A1 __x) _NOEXCEPT { return __builtin_isnormal(__x); } -template ::value, int> = 0> +template ::value, int> = 0> _LIBCPP_NODISCARD_EXT _LIBCPP_CONSTEXPR_SINCE_CXX23 _LIBCPP_HIDE_FROM_ABI bool isnormal(_A1 __x) _NOEXCEPT { return __x != 0; } @@ -128,9 +128,9 @@ template ::value && std::is_arithmetic<_A2>::value, int> = 0> + __enable_if_t::value && is_arithmetic<_A2>::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool isgreater(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type type; + typedef typename __promote<_A1, _A2>::type type; return __builtin_isgreater((type)__x, (type)__y); } @@ -138,9 +138,9 @@ template ::value && std::is_arithmetic<_A2>::value, int> = 0> + __enable_if_t::value && is_arithmetic<_A2>::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool isgreaterequal(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type type; + typedef typename __promote<_A1, _A2>::type type; return __builtin_isgreaterequal((type)__x, (type)__y); } @@ -148,9 +148,9 @@ template ::value && std::is_arithmetic<_A2>::value, int> = 0> + __enable_if_t::value && is_arithmetic<_A2>::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool isless(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type type; + typedef typename __promote<_A1, _A2>::type type; return __builtin_isless((type)__x, (type)__y); } @@ -158,9 +158,9 @@ template ::value && std::is_arithmetic<_A2>::value, int> = 0> + __enable_if_t::value && is_arithmetic<_A2>::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool islessequal(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type type; + typedef typename __promote<_A1, _A2>::type type; return __builtin_islessequal((type)__x, (type)__y); } @@ -168,9 +168,9 @@ template ::value && std::is_arithmetic<_A2>::value, int> = 0> + __enable_if_t::value && is_arithmetic<_A2>::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool islessgreater(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type type; + typedef typename __promote<_A1, _A2>::type type; return __builtin_islessgreater((type)__x, (type)__y); } @@ -178,9 +178,9 @@ template ::value && std::is_arithmetic<_A2>::value, int> = 0> + __enable_if_t::value && is_arithmetic<_A2>::value, int> = 0> _LIBCPP_NODISCARD_EXT inline _LIBCPP_HIDE_FROM_ABI bool isunordered(_A1 __x, _A2 __y) _NOEXCEPT { - typedef typename std::__promote<_A1, _A2>::type type; + typedef typename __promote<_A1, _A2>::type type; return __builtin_isunordered((type)__x, (type)__y); } diff --git a/libcxx/include/__math/trigonometric_functions.h b/libcxx/include/__math/trigonometric_functions.h --- a/libcxx/include/__math/trigonometric_functions.h +++ b/libcxx/include/__math/trigonometric_functions.h @@ -34,7 +34,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type cos(_A1 __x) _NOEXCEPT {return __builtin_cos((double)__x);} // sin @@ -50,7 +50,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type sin(_A1 __x) _NOEXCEPT {return __builtin_sin((double)__x);} // tan @@ -66,7 +66,7 @@ template inline _LIBCPP_HIDE_FROM_ABI -typename std::enable_if::value, double>::type +typename enable_if::value, double>::type tan(_A1 __x) _NOEXCEPT {return __builtin_tan((double)__x);} } // namespace __math diff --git a/libcxx/test/std/depr/depr.c.headers/math_h.pass.cpp b/libcxx/test/std/depr/depr.c.headers/math_h.pass.cpp --- a/libcxx/test/std/depr/depr.c.headers/math_h.pass.cpp +++ b/libcxx/test/std/depr/depr.c.headers/math_h.pass.cpp @@ -6,6 +6,9 @@ // //===----------------------------------------------------------------------===// +// Clang complains that fabs is called with an integer +// ADDITIONAL_COMPILE_FLAGS: -Wno-absolute-value + // #include