[libcxx] r294696 - Fully qualify (preprend ::) calls to math functions from libc

Mehdi Amini via cfe-commits cfe-commits at lists.llvm.org
Thu Feb 9 18:56:55 PST 2017


Should we get this in 4.0?

— 
Mehdi


> On Feb 9, 2017, at 6:44 PM, Mehdi Amini via cfe-commits <cfe-commits at lists.llvm.org> wrote:
> 
> Author: mehdi_amini
> Date: Thu Feb  9 20:44:23 2017
> New Revision: 294696
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=294696&view=rev
> Log:
> Fully qualify (preprend ::) calls to math functions from libc
> 
> Summary:
> This can cause a compile failure in cases like:
> 
> double log(double);
> namespace foo {
>  namespace log {}
> }
> using namespace foo;
> void bar(int i) {
>  log((double)i);
> }
> 
> Reviewers: EricWF, mclow.lists
> 
> Subscribers: cfe-commits
> 
> Differential Revision: https://reviews.llvm.org/D29804
> 
> Modified:
>    libcxx/trunk/include/math.h
> 
> Modified: libcxx/trunk/include/math.h
> URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/math.h?rev=294696&r1=294695&r2=294696&view=diff
> ==============================================================================
> --- libcxx/trunk/include/math.h (original)
> +++ libcxx/trunk/include/math.h Thu Feb  9 20:44:23 2017
> @@ -637,58 +637,58 @@ isunordered(_A1 __lcpp_x, _A2 __lcpp_y)
> #if !(defined(_AIX) || defined(__sun__))
> inline _LIBCPP_INLINE_VISIBILITY
> float
> -abs(float __lcpp_x) _NOEXCEPT {return fabsf(__lcpp_x);}
> +abs(float __lcpp_x) _NOEXCEPT {return ::fabsf(__lcpp_x);}
> 
> inline _LIBCPP_INLINE_VISIBILITY
> double
> -abs(double __lcpp_x) _NOEXCEPT {return fabs(__lcpp_x);}
> +abs(double __lcpp_x) _NOEXCEPT {return ::fabs(__lcpp_x);}
> 
> inline _LIBCPP_INLINE_VISIBILITY
> long double
> -abs(long double __lcpp_x) _NOEXCEPT {return fabsl(__lcpp_x);}
> +abs(long double __lcpp_x) _NOEXCEPT {return ::fabsl(__lcpp_x);}
> #endif // !(defined(_AIX) || defined(__sun__))
> 
> // acos
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       acos(float __lcpp_x) _NOEXCEPT       {return acosf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double acos(long double __lcpp_x) _NOEXCEPT {return acosl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       acos(float __lcpp_x) _NOEXCEPT       {return ::acosf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double acos(long double __lcpp_x) _NOEXCEPT {return ::acosl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -acos(_A1 __lcpp_x) _NOEXCEPT {return acos((double)__lcpp_x);}
> +acos(_A1 __lcpp_x) _NOEXCEPT {return ::acos((double)__lcpp_x);}
> 
> // asin
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       asin(float __lcpp_x) _NOEXCEPT       {return asinf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double asin(long double __lcpp_x) _NOEXCEPT {return asinl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       asin(float __lcpp_x) _NOEXCEPT       {return ::asinf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double asin(long double __lcpp_x) _NOEXCEPT {return ::asinl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -asin(_A1 __lcpp_x) _NOEXCEPT {return asin((double)__lcpp_x);}
> +asin(_A1 __lcpp_x) _NOEXCEPT {return ::asin((double)__lcpp_x);}
> 
> // atan
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       atan(float __lcpp_x) _NOEXCEPT       {return atanf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double atan(long double __lcpp_x) _NOEXCEPT {return atanl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       atan(float __lcpp_x) _NOEXCEPT       {return ::atanf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double atan(long double __lcpp_x) _NOEXCEPT {return ::atanl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -atan(_A1 __lcpp_x) _NOEXCEPT {return atan((double)__lcpp_x);}
> +atan(_A1 __lcpp_x) _NOEXCEPT {return ::atan((double)__lcpp_x);}
> 
> // atan2
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       atan2(float __lcpp_y, float __lcpp_x) _NOEXCEPT             {return atan2f(__lcpp_y, __lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double atan2(long double __lcpp_y, long double __lcpp_x) _NOEXCEPT {return atan2l(__lcpp_y, __lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       atan2(float __lcpp_y, float __lcpp_x) _NOEXCEPT             {return ::atan2f(__lcpp_y, __lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double atan2(long double __lcpp_y, long double __lcpp_x) _NOEXCEPT {return ::atan2l(__lcpp_y, __lcpp_x);}
> #endif
> 
> template <class _A1, class _A2>
> @@ -704,86 +704,86 @@ atan2(_A1 __lcpp_y, _A2 __lcpp_x) _NOEXC
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return atan2((__result_type)__lcpp_y, (__result_type)__lcpp_x);
> +    return ::atan2((__result_type)__lcpp_y, (__result_type)__lcpp_x);
> }
> 
> // ceil
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       ceil(float __lcpp_x) _NOEXCEPT       {return ceilf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double ceil(long double __lcpp_x) _NOEXCEPT {return ceill(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       ceil(float __lcpp_x) _NOEXCEPT       {return ::ceilf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double ceil(long double __lcpp_x) _NOEXCEPT {return ::ceill(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -ceil(_A1 __lcpp_x) _NOEXCEPT {return ceil((double)__lcpp_x);}
> +ceil(_A1 __lcpp_x) _NOEXCEPT {return ::ceil((double)__lcpp_x);}
> 
> // cos
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       cos(float __lcpp_x) _NOEXCEPT       {return cosf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double cos(long double __lcpp_x) _NOEXCEPT {return cosl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       cos(float __lcpp_x) _NOEXCEPT       {return ::cosf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double cos(long double __lcpp_x) _NOEXCEPT {return ::cosl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -cos(_A1 __lcpp_x) _NOEXCEPT {return cos((double)__lcpp_x);}
> +cos(_A1 __lcpp_x) _NOEXCEPT {return ::cos((double)__lcpp_x);}
> 
> // cosh
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       cosh(float __lcpp_x) _NOEXCEPT       {return coshf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double cosh(long double __lcpp_x) _NOEXCEPT {return coshl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       cosh(float __lcpp_x) _NOEXCEPT       {return ::coshf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double cosh(long double __lcpp_x) _NOEXCEPT {return ::coshl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -cosh(_A1 __lcpp_x) _NOEXCEPT {return cosh((double)__lcpp_x);}
> +cosh(_A1 __lcpp_x) _NOEXCEPT {return ::cosh((double)__lcpp_x);}
> 
> // exp
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       exp(float __lcpp_x) _NOEXCEPT       {return expf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double exp(long double __lcpp_x) _NOEXCEPT {return expl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       exp(float __lcpp_x) _NOEXCEPT       {return ::expf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double exp(long double __lcpp_x) _NOEXCEPT {return ::expl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -exp(_A1 __lcpp_x) _NOEXCEPT {return exp((double)__lcpp_x);}
> +exp(_A1 __lcpp_x) _NOEXCEPT {return ::exp((double)__lcpp_x);}
> 
> // fabs
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       fabs(float __lcpp_x) _NOEXCEPT       {return fabsf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double fabs(long double __lcpp_x) _NOEXCEPT {return fabsl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       fabs(float __lcpp_x) _NOEXCEPT       {return ::fabsf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double fabs(long double __lcpp_x) _NOEXCEPT {return ::fabsl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -fabs(_A1 __lcpp_x) _NOEXCEPT {return fabs((double)__lcpp_x);}
> +fabs(_A1 __lcpp_x) _NOEXCEPT {return ::fabs((double)__lcpp_x);}
> 
> // floor
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       floor(float __lcpp_x) _NOEXCEPT       {return floorf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double floor(long double __lcpp_x) _NOEXCEPT {return floorl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       floor(float __lcpp_x) _NOEXCEPT       {return ::floorf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double floor(long double __lcpp_x) _NOEXCEPT {return ::floorl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -floor(_A1 __lcpp_x) _NOEXCEPT {return floor((double)__lcpp_x);}
> +floor(_A1 __lcpp_x) _NOEXCEPT {return ::floor((double)__lcpp_x);}
> 
> // fmod
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       fmod(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return fmodf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double fmod(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return fmodl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       fmod(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return ::fmodf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double fmod(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::fmodl(__lcpp_x, __lcpp_y);}
> #endif
> 
> template <class _A1, class _A2>
> @@ -799,69 +799,69 @@ fmod(_A1 __lcpp_x, _A2 __lcpp_y) _NOEXCE
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return fmod((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::fmod((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> // frexp
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       frexp(float __lcpp_x, int* __lcpp_e) _NOEXCEPT       {return frexpf(__lcpp_x, __lcpp_e);}
> -inline _LIBCPP_INLINE_VISIBILITY long double frexp(long double __lcpp_x, int* __lcpp_e) _NOEXCEPT {return frexpl(__lcpp_x, __lcpp_e);}
> +inline _LIBCPP_INLINE_VISIBILITY float       frexp(float __lcpp_x, int* __lcpp_e) _NOEXCEPT       {return ::frexpf(__lcpp_x, __lcpp_e);}
> +inline _LIBCPP_INLINE_VISIBILITY long double frexp(long double __lcpp_x, int* __lcpp_e) _NOEXCEPT {return ::frexpl(__lcpp_x, __lcpp_e);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -frexp(_A1 __lcpp_x, int* __lcpp_e) _NOEXCEPT {return frexp((double)__lcpp_x, __lcpp_e);}
> +frexp(_A1 __lcpp_x, int* __lcpp_e) _NOEXCEPT {return ::frexp((double)__lcpp_x, __lcpp_e);}
> 
> // ldexp
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       ldexp(float __lcpp_x, int __lcpp_e) _NOEXCEPT       {return ldexpf(__lcpp_x, __lcpp_e);}
> -inline _LIBCPP_INLINE_VISIBILITY long double ldexp(long double __lcpp_x, int __lcpp_e) _NOEXCEPT {return ldexpl(__lcpp_x, __lcpp_e);}
> +inline _LIBCPP_INLINE_VISIBILITY float       ldexp(float __lcpp_x, int __lcpp_e) _NOEXCEPT       {return ::ldexpf(__lcpp_x, __lcpp_e);}
> +inline _LIBCPP_INLINE_VISIBILITY long double ldexp(long double __lcpp_x, int __lcpp_e) _NOEXCEPT {return ::ldexpl(__lcpp_x, __lcpp_e);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -ldexp(_A1 __lcpp_x, int __lcpp_e) _NOEXCEPT {return ldexp((double)__lcpp_x, __lcpp_e);}
> +ldexp(_A1 __lcpp_x, int __lcpp_e) _NOEXCEPT {return ::ldexp((double)__lcpp_x, __lcpp_e);}
> 
> // log
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       log(float __lcpp_x) _NOEXCEPT       {return logf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double log(long double __lcpp_x) _NOEXCEPT {return logl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       log(float __lcpp_x) _NOEXCEPT       {return ::logf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double log(long double __lcpp_x) _NOEXCEPT {return ::logl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -log(_A1 __lcpp_x) _NOEXCEPT {return log((double)__lcpp_x);}
> +log(_A1 __lcpp_x) _NOEXCEPT {return ::log((double)__lcpp_x);}
> 
> // log10
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       log10(float __lcpp_x) _NOEXCEPT       {return log10f(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double log10(long double __lcpp_x) _NOEXCEPT {return log10l(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       log10(float __lcpp_x) _NOEXCEPT       {return ::log10f(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double log10(long double __lcpp_x) _NOEXCEPT {return ::log10l(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -log10(_A1 __lcpp_x) _NOEXCEPT {return log10((double)__lcpp_x);}
> +log10(_A1 __lcpp_x) _NOEXCEPT {return ::log10((double)__lcpp_x);}
> 
> // modf
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       modf(float __lcpp_x, float* __lcpp_y) _NOEXCEPT             {return modff(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double modf(long double __lcpp_x, long double* __lcpp_y) _NOEXCEPT {return modfl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       modf(float __lcpp_x, float* __lcpp_y) _NOEXCEPT             {return ::modff(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double modf(long double __lcpp_x, long double* __lcpp_y) _NOEXCEPT {return ::modfl(__lcpp_x, __lcpp_y);}
> #endif
> 
> // pow
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       pow(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return powf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double pow(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return powl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       pow(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return ::powf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double pow(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::powl(__lcpp_x, __lcpp_y);}
> #endif
> 
> template <class _A1, class _A2>
> @@ -877,115 +877,115 @@ pow(_A1 __lcpp_x, _A2 __lcpp_y) _NOEXCEP
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return pow((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::pow((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> // sin
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       sin(float __lcpp_x) _NOEXCEPT       {return sinf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double sin(long double __lcpp_x) _NOEXCEPT {return sinl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       sin(float __lcpp_x) _NOEXCEPT       {return ::sinf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double sin(long double __lcpp_x) _NOEXCEPT {return ::sinl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -sin(_A1 __lcpp_x) _NOEXCEPT {return sin((double)__lcpp_x);}
> +sin(_A1 __lcpp_x) _NOEXCEPT {return ::sin((double)__lcpp_x);}
> 
> // sinh
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       sinh(float __lcpp_x) _NOEXCEPT       {return sinhf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double sinh(long double __lcpp_x) _NOEXCEPT {return sinhl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       sinh(float __lcpp_x) _NOEXCEPT       {return ::sinhf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double sinh(long double __lcpp_x) _NOEXCEPT {return ::sinhl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -sinh(_A1 __lcpp_x) _NOEXCEPT {return sinh((double)__lcpp_x);}
> +sinh(_A1 __lcpp_x) _NOEXCEPT {return ::sinh((double)__lcpp_x);}
> 
> // sqrt
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       sqrt(float __lcpp_x) _NOEXCEPT       {return sqrtf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double sqrt(long double __lcpp_x) _NOEXCEPT {return sqrtl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       sqrt(float __lcpp_x) _NOEXCEPT       {return ::sqrtf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double sqrt(long double __lcpp_x) _NOEXCEPT {return ::sqrtl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -sqrt(_A1 __lcpp_x) _NOEXCEPT {return sqrt((double)__lcpp_x);}
> +sqrt(_A1 __lcpp_x) _NOEXCEPT {return ::sqrt((double)__lcpp_x);}
> 
> // tan
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       tan(float __lcpp_x) _NOEXCEPT       {return tanf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double tan(long double __lcpp_x) _NOEXCEPT {return tanl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       tan(float __lcpp_x) _NOEXCEPT       {return ::tanf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double tan(long double __lcpp_x) _NOEXCEPT {return ::tanl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -tan(_A1 __lcpp_x) _NOEXCEPT {return tan((double)__lcpp_x);}
> +tan(_A1 __lcpp_x) _NOEXCEPT {return ::tan((double)__lcpp_x);}
> 
> // tanh
> 
> #if !(defined(_LIBCPP_MSVCRT) || defined(_AIX) || defined(__sun__))
> -inline _LIBCPP_INLINE_VISIBILITY float       tanh(float __lcpp_x) _NOEXCEPT       {return tanhf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double tanh(long double __lcpp_x) _NOEXCEPT {return tanhl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       tanh(float __lcpp_x) _NOEXCEPT       {return ::tanhf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double tanh(long double __lcpp_x) _NOEXCEPT {return ::tanhl(__lcpp_x);}
> #endif
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -tanh(_A1 __lcpp_x) _NOEXCEPT {return tanh((double)__lcpp_x);}
> +tanh(_A1 __lcpp_x) _NOEXCEPT {return ::tanh((double)__lcpp_x);}
> 
> // acosh
> 
> #ifndef _LIBCPP_MSVCRT
> -inline _LIBCPP_INLINE_VISIBILITY float       acosh(float __lcpp_x) _NOEXCEPT       {return acoshf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double acosh(long double __lcpp_x) _NOEXCEPT {return acoshl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       acosh(float __lcpp_x) _NOEXCEPT       {return ::acoshf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double acosh(long double __lcpp_x) _NOEXCEPT {return ::acoshl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -acosh(_A1 __lcpp_x) _NOEXCEPT {return acosh((double)__lcpp_x);}
> +acosh(_A1 __lcpp_x) _NOEXCEPT {return ::acosh((double)__lcpp_x);}
> #endif
> 
> // asinh
> 
> #ifndef _LIBCPP_MSVCRT
> -inline _LIBCPP_INLINE_VISIBILITY float       asinh(float __lcpp_x) _NOEXCEPT       {return asinhf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double asinh(long double __lcpp_x) _NOEXCEPT {return asinhl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       asinh(float __lcpp_x) _NOEXCEPT       {return ::asinhf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double asinh(long double __lcpp_x) _NOEXCEPT {return ::asinhl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -asinh(_A1 __lcpp_x) _NOEXCEPT {return asinh((double)__lcpp_x);}
> +asinh(_A1 __lcpp_x) _NOEXCEPT {return ::asinh((double)__lcpp_x);}
> #endif
> 
> // atanh
> 
> #ifndef _LIBCPP_MSVCRT
> -inline _LIBCPP_INLINE_VISIBILITY float       atanh(float __lcpp_x) _NOEXCEPT       {return atanhf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double atanh(long double __lcpp_x) _NOEXCEPT {return atanhl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       atanh(float __lcpp_x) _NOEXCEPT       {return ::atanhf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double atanh(long double __lcpp_x) _NOEXCEPT {return ::atanhl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -atanh(_A1 __lcpp_x) _NOEXCEPT {return atanh((double)__lcpp_x);}
> +atanh(_A1 __lcpp_x) _NOEXCEPT {return ::atanh((double)__lcpp_x);}
> #endif
> 
> // cbrt
> 
> #ifndef _LIBCPP_MSVCRT
> -inline _LIBCPP_INLINE_VISIBILITY float       cbrt(float __lcpp_x) _NOEXCEPT       {return cbrtf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double cbrt(long double __lcpp_x) _NOEXCEPT {return cbrtl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       cbrt(float __lcpp_x) _NOEXCEPT       {return ::cbrtf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double cbrt(long double __lcpp_x) _NOEXCEPT {return ::cbrtl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -cbrt(_A1 __lcpp_x) _NOEXCEPT {return cbrt((double)__lcpp_x);}
> +cbrt(_A1 __lcpp_x) _NOEXCEPT {return ::cbrt((double)__lcpp_x);}
> #endif
> 
> // copysign
> @@ -993,11 +993,11 @@ cbrt(_A1 __lcpp_x) _NOEXCEPT {return cbr
> #if !defined(_VC_CRT_MAJOR_VERSION) || (_VC_CRT_MAJOR_VERSION < 12)
> inline _LIBCPP_INLINE_VISIBILITY float copysign(float __lcpp_x,
>                                                 float __lcpp_y) _NOEXCEPT {
> -  return copysignf(__lcpp_x, __lcpp_y);
> +  return ::copysignf(__lcpp_x, __lcpp_y);
> }
> inline _LIBCPP_INLINE_VISIBILITY long double
> copysign(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {
> -  return copysignl(__lcpp_x, __lcpp_y);
> +  return ::copysignl(__lcpp_x, __lcpp_y);
> }
> #endif
> 
> @@ -1014,55 +1014,55 @@ copysign(_A1 __lcpp_x, _A2 __lcpp_y) _NO
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return copysign((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::copysign((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> #ifndef _LIBCPP_MSVCRT
> 
> // erf
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       erf(float __lcpp_x) _NOEXCEPT       {return erff(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double erf(long double __lcpp_x) _NOEXCEPT {return erfl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       erf(float __lcpp_x) _NOEXCEPT       {return ::erff(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double erf(long double __lcpp_x) _NOEXCEPT {return ::erfl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -erf(_A1 __lcpp_x) _NOEXCEPT {return erf((double)__lcpp_x);}
> +erf(_A1 __lcpp_x) _NOEXCEPT {return ::erf((double)__lcpp_x);}
> 
> // erfc
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       erfc(float __lcpp_x) _NOEXCEPT       {return erfcf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double erfc(long double __lcpp_x) _NOEXCEPT {return erfcl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       erfc(float __lcpp_x) _NOEXCEPT       {return ::erfcf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double erfc(long double __lcpp_x) _NOEXCEPT {return ::erfcl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -erfc(_A1 __lcpp_x) _NOEXCEPT {return erfc((double)__lcpp_x);}
> +erfc(_A1 __lcpp_x) _NOEXCEPT {return ::erfc((double)__lcpp_x);}
> 
> // exp2
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       exp2(float __lcpp_x) _NOEXCEPT       {return exp2f(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double exp2(long double __lcpp_x) _NOEXCEPT {return exp2l(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       exp2(float __lcpp_x) _NOEXCEPT       {return ::exp2f(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double exp2(long double __lcpp_x) _NOEXCEPT {return ::exp2l(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -exp2(_A1 __lcpp_x) _NOEXCEPT {return exp2((double)__lcpp_x);}
> +exp2(_A1 __lcpp_x) _NOEXCEPT {return ::exp2((double)__lcpp_x);}
> 
> // expm1
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       expm1(float __lcpp_x) _NOEXCEPT       {return expm1f(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double expm1(long double __lcpp_x) _NOEXCEPT {return expm1l(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       expm1(float __lcpp_x) _NOEXCEPT       {return ::expm1f(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double expm1(long double __lcpp_x) _NOEXCEPT {return ::expm1l(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -expm1(_A1 __lcpp_x) _NOEXCEPT {return expm1((double)__lcpp_x);}
> +expm1(_A1 __lcpp_x) _NOEXCEPT {return ::expm1((double)__lcpp_x);}
> 
> // fdim
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       fdim(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return fdimf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double fdim(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return fdiml(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       fdim(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return ::fdimf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double fdim(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::fdiml(__lcpp_x, __lcpp_y);}
> 
> template <class _A1, class _A2>
> inline _LIBCPP_INLINE_VISIBILITY
> @@ -1077,13 +1077,13 @@ fdim(_A1 __lcpp_x, _A2 __lcpp_y) _NOEXCE
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return fdim((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::fdim((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> // fma
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       fma(float __lcpp_x, float __lcpp_y, float __lcpp_z) _NOEXCEPT                   {return fmaf(__lcpp_x, __lcpp_y, __lcpp_z);}
> -inline _LIBCPP_INLINE_VISIBILITY long double fma(long double __lcpp_x, long double __lcpp_y, long double __lcpp_z) _NOEXCEPT {return fmal(__lcpp_x, __lcpp_y, __lcpp_z);}
> +inline _LIBCPP_INLINE_VISIBILITY float       fma(float __lcpp_x, float __lcpp_y, float __lcpp_z) _NOEXCEPT                   {return ::fmaf(__lcpp_x, __lcpp_y, __lcpp_z);}
> +inline _LIBCPP_INLINE_VISIBILITY long double fma(long double __lcpp_x, long double __lcpp_y, long double __lcpp_z) _NOEXCEPT {return ::fmal(__lcpp_x, __lcpp_y, __lcpp_z);}
> 
> template <class _A1, class _A2, class _A3>
> inline _LIBCPP_INLINE_VISIBILITY
> @@ -1100,13 +1100,13 @@ fma(_A1 __lcpp_x, _A2 __lcpp_y, _A3 __lc
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value &&
>                      std::is_same<_A3, __result_type>::value)), "");
> -    return fma((__result_type)__lcpp_x, (__result_type)__lcpp_y, (__result_type)__lcpp_z);
> +    return ::fma((__result_type)__lcpp_x, (__result_type)__lcpp_y, (__result_type)__lcpp_z);
> }
> 
> // fmax
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       fmax(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return fmaxf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double fmax(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return fmaxl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       fmax(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return ::fmaxf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double fmax(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::fmaxl(__lcpp_x, __lcpp_y);}
> 
> template <class _A1, class _A2>
> inline _LIBCPP_INLINE_VISIBILITY
> @@ -1121,13 +1121,13 @@ fmax(_A1 __lcpp_x, _A2 __lcpp_y) _NOEXCE
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return fmax((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::fmax((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> // fmin
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       fmin(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return fminf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double fmin(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return fminl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       fmin(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return ::fminf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double fmin(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::fminl(__lcpp_x, __lcpp_y);}
> 
> template <class _A1, class _A2>
> inline _LIBCPP_INLINE_VISIBILITY
> @@ -1142,13 +1142,13 @@ fmin(_A1 __lcpp_x, _A2 __lcpp_y) _NOEXCE
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return fmin((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::fmin((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> // hypot
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       hypot(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return hypotf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double hypot(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return hypotl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       hypot(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return ::hypotf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double hypot(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::hypotl(__lcpp_x, __lcpp_y);}
> 
> template <class _A1, class _A2>
> inline _LIBCPP_INLINE_VISIBILITY
> @@ -1163,115 +1163,115 @@ hypot(_A1 __lcpp_x, _A2 __lcpp_y) _NOEXC
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return hypot((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::hypot((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> // ilogb
> 
> -inline _LIBCPP_INLINE_VISIBILITY int ilogb(float __lcpp_x) _NOEXCEPT       {return ilogbf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY int ilogb(long double __lcpp_x) _NOEXCEPT {return ilogbl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY int ilogb(float __lcpp_x) _NOEXCEPT       {return ::ilogbf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY int ilogb(long double __lcpp_x) _NOEXCEPT {return ::ilogbl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, int>::type
> -ilogb(_A1 __lcpp_x) _NOEXCEPT {return ilogb((double)__lcpp_x);}
> +ilogb(_A1 __lcpp_x) _NOEXCEPT {return ::ilogb((double)__lcpp_x);}
> 
> // lgamma
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       lgamma(float __lcpp_x) _NOEXCEPT       {return lgammaf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double lgamma(long double __lcpp_x) _NOEXCEPT {return lgammal(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       lgamma(float __lcpp_x) _NOEXCEPT       {return ::lgammaf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double lgamma(long double __lcpp_x) _NOEXCEPT {return ::lgammal(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -lgamma(_A1 __lcpp_x) _NOEXCEPT {return lgamma((double)__lcpp_x);}
> +lgamma(_A1 __lcpp_x) _NOEXCEPT {return ::lgamma((double)__lcpp_x);}
> 
> // llrint
> 
> -inline _LIBCPP_INLINE_VISIBILITY long long llrint(float __lcpp_x) _NOEXCEPT       {return llrintf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long long llrint(long double __lcpp_x) _NOEXCEPT {return llrintl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long long llrint(float __lcpp_x) _NOEXCEPT       {return ::llrintf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long long llrint(long double __lcpp_x) _NOEXCEPT {return ::llrintl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, long long>::type
> -llrint(_A1 __lcpp_x) _NOEXCEPT {return llrint((double)__lcpp_x);}
> +llrint(_A1 __lcpp_x) _NOEXCEPT {return ::llrint((double)__lcpp_x);}
> 
> // llround
> 
> -inline _LIBCPP_INLINE_VISIBILITY long long llround(float __lcpp_x) _NOEXCEPT       {return llroundf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long long llround(long double __lcpp_x) _NOEXCEPT {return llroundl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long long llround(float __lcpp_x) _NOEXCEPT       {return ::llroundf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long long llround(long double __lcpp_x) _NOEXCEPT {return ::llroundl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, long long>::type
> -llround(_A1 __lcpp_x) _NOEXCEPT {return llround((double)__lcpp_x);}
> +llround(_A1 __lcpp_x) _NOEXCEPT {return ::llround((double)__lcpp_x);}
> 
> // log1p
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       log1p(float __lcpp_x) _NOEXCEPT       {return log1pf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double log1p(long double __lcpp_x) _NOEXCEPT {return log1pl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       log1p(float __lcpp_x) _NOEXCEPT       {return ::log1pf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double log1p(long double __lcpp_x) _NOEXCEPT {return ::log1pl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -log1p(_A1 __lcpp_x) _NOEXCEPT {return log1p((double)__lcpp_x);}
> +log1p(_A1 __lcpp_x) _NOEXCEPT {return ::log1p((double)__lcpp_x);}
> 
> // log2
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       log2(float __lcpp_x) _NOEXCEPT       {return log2f(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double log2(long double __lcpp_x) _NOEXCEPT {return log2l(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       log2(float __lcpp_x) _NOEXCEPT       {return ::log2f(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double log2(long double __lcpp_x) _NOEXCEPT {return ::log2l(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -log2(_A1 __lcpp_x) _NOEXCEPT {return log2((double)__lcpp_x);}
> +log2(_A1 __lcpp_x) _NOEXCEPT {return ::log2((double)__lcpp_x);}
> 
> // logb
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       logb(float __lcpp_x) _NOEXCEPT       {return logbf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double logb(long double __lcpp_x) _NOEXCEPT {return logbl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       logb(float __lcpp_x) _NOEXCEPT       {return ::logbf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double logb(long double __lcpp_x) _NOEXCEPT {return ::logbl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -logb(_A1 __lcpp_x) _NOEXCEPT {return logb((double)__lcpp_x);}
> +logb(_A1 __lcpp_x) _NOEXCEPT {return ::logb((double)__lcpp_x);}
> 
> // lrint
> 
> -inline _LIBCPP_INLINE_VISIBILITY long lrint(float __lcpp_x) _NOEXCEPT       {return lrintf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long lrint(long double __lcpp_x) _NOEXCEPT {return lrintl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long lrint(float __lcpp_x) _NOEXCEPT       {return ::lrintf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long lrint(long double __lcpp_x) _NOEXCEPT {return ::lrintl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, long>::type
> -lrint(_A1 __lcpp_x) _NOEXCEPT {return lrint((double)__lcpp_x);}
> +lrint(_A1 __lcpp_x) _NOEXCEPT {return ::lrint((double)__lcpp_x);}
> 
> // lround
> 
> -inline _LIBCPP_INLINE_VISIBILITY long lround(float __lcpp_x) _NOEXCEPT       {return lroundf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long lround(long double __lcpp_x) _NOEXCEPT {return lroundl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long lround(float __lcpp_x) _NOEXCEPT       {return ::lroundf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long lround(long double __lcpp_x) _NOEXCEPT {return ::lroundl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, long>::type
> -lround(_A1 __lcpp_x) _NOEXCEPT {return lround((double)__lcpp_x);}
> +lround(_A1 __lcpp_x) _NOEXCEPT {return ::lround((double)__lcpp_x);}
> 
> // nan
> 
> // nearbyint
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       nearbyint(float __lcpp_x) _NOEXCEPT       {return nearbyintf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double nearbyint(long double __lcpp_x) _NOEXCEPT {return nearbyintl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       nearbyint(float __lcpp_x) _NOEXCEPT       {return ::nearbyintf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double nearbyint(long double __lcpp_x) _NOEXCEPT {return ::nearbyintl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -nearbyint(_A1 __lcpp_x) _NOEXCEPT {return nearbyint((double)__lcpp_x);}
> +nearbyint(_A1 __lcpp_x) _NOEXCEPT {return ::nearbyint((double)__lcpp_x);}
> 
> // nextafter
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       nextafter(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return nextafterf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double nextafter(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return nextafterl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       nextafter(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return ::nextafterf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double nextafter(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::nextafterl(__lcpp_x, __lcpp_y);}
> 
> template <class _A1, class _A2>
> inline _LIBCPP_INLINE_VISIBILITY
> @@ -1286,23 +1286,23 @@ nextafter(_A1 __lcpp_x, _A2 __lcpp_y) _N
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return nextafter((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::nextafter((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> // nexttoward
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       nexttoward(float __lcpp_x, long double __lcpp_y) _NOEXCEPT       {return nexttowardf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double nexttoward(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return nexttowardl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       nexttoward(float __lcpp_x, long double __lcpp_y) _NOEXCEPT       {return ::nexttowardf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double nexttoward(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::nexttowardl(__lcpp_x, __lcpp_y);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -nexttoward(_A1 __lcpp_x, long double __lcpp_y) _NOEXCEPT {return nexttoward((double)__lcpp_x, __lcpp_y);}
> +nexttoward(_A1 __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::nexttoward((double)__lcpp_x, __lcpp_y);}
> 
> // remainder
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       remainder(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return remainderf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double remainder(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return remainderl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       remainder(float __lcpp_x, float __lcpp_y) _NOEXCEPT             {return ::remainderf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double remainder(long double __lcpp_x, long double __lcpp_y) _NOEXCEPT {return ::remainderl(__lcpp_x, __lcpp_y);}
> 
> template <class _A1, class _A2>
> inline _LIBCPP_INLINE_VISIBILITY
> @@ -1317,13 +1317,13 @@ remainder(_A1 __lcpp_x, _A2 __lcpp_y) _N
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return remainder((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> +    return ::remainder((__result_type)__lcpp_x, (__result_type)__lcpp_y);
> }
> 
> // remquo
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       remquo(float __lcpp_x, float __lcpp_y, int* __lcpp_z) _NOEXCEPT             {return remquof(__lcpp_x, __lcpp_y, __lcpp_z);}
> -inline _LIBCPP_INLINE_VISIBILITY long double remquo(long double __lcpp_x, long double __lcpp_y, int* __lcpp_z) _NOEXCEPT {return remquol(__lcpp_x, __lcpp_y, __lcpp_z);}
> +inline _LIBCPP_INLINE_VISIBILITY float       remquo(float __lcpp_x, float __lcpp_y, int* __lcpp_z) _NOEXCEPT             {return ::remquof(__lcpp_x, __lcpp_y, __lcpp_z);}
> +inline _LIBCPP_INLINE_VISIBILITY long double remquo(long double __lcpp_x, long double __lcpp_y, int* __lcpp_z) _NOEXCEPT {return ::remquol(__lcpp_x, __lcpp_y, __lcpp_z);}
> 
> template <class _A1, class _A2>
> inline _LIBCPP_INLINE_VISIBILITY
> @@ -1338,68 +1338,68 @@ remquo(_A1 __lcpp_x, _A2 __lcpp_y, int*
>     typedef typename std::__promote<_A1, _A2>::type __result_type;
>     static_assert((!(std::is_same<_A1, __result_type>::value &&
>                      std::is_same<_A2, __result_type>::value)), "");
> -    return remquo((__result_type)__lcpp_x, (__result_type)__lcpp_y, __lcpp_z);
> +    return ::remquo((__result_type)__lcpp_x, (__result_type)__lcpp_y, __lcpp_z);
> }
> 
> // rint
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       rint(float __lcpp_x) _NOEXCEPT       {return rintf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double rint(long double __lcpp_x) _NOEXCEPT {return rintl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       rint(float __lcpp_x) _NOEXCEPT       {return ::rintf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double rint(long double __lcpp_x) _NOEXCEPT {return ::rintl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -rint(_A1 __lcpp_x) _NOEXCEPT {return rint((double)__lcpp_x);}
> +rint(_A1 __lcpp_x) _NOEXCEPT {return ::rint((double)__lcpp_x);}
> 
> // round
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       round(float __lcpp_x) _NOEXCEPT       {return roundf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double round(long double __lcpp_x) _NOEXCEPT {return roundl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       round(float __lcpp_x) _NOEXCEPT       {return ::roundf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double round(long double __lcpp_x) _NOEXCEPT {return ::roundl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -round(_A1 __lcpp_x) _NOEXCEPT {return round((double)__lcpp_x);}
> +round(_A1 __lcpp_x) _NOEXCEPT {return ::round((double)__lcpp_x);}
> 
> // scalbln
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       scalbln(float __lcpp_x, long __lcpp_y) _NOEXCEPT       {return scalblnf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double scalbln(long double __lcpp_x, long __lcpp_y) _NOEXCEPT {return scalblnl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       scalbln(float __lcpp_x, long __lcpp_y) _NOEXCEPT       {return ::scalblnf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double scalbln(long double __lcpp_x, long __lcpp_y) _NOEXCEPT {return ::scalblnl(__lcpp_x, __lcpp_y);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -scalbln(_A1 __lcpp_x, long __lcpp_y) _NOEXCEPT {return scalbln((double)__lcpp_x, __lcpp_y);}
> +scalbln(_A1 __lcpp_x, long __lcpp_y) _NOEXCEPT {return ::scalbln((double)__lcpp_x, __lcpp_y);}
> 
> // scalbn
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       scalbn(float __lcpp_x, int __lcpp_y) _NOEXCEPT       {return scalbnf(__lcpp_x, __lcpp_y);}
> -inline _LIBCPP_INLINE_VISIBILITY long double scalbn(long double __lcpp_x, int __lcpp_y) _NOEXCEPT {return scalbnl(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY float       scalbn(float __lcpp_x, int __lcpp_y) _NOEXCEPT       {return ::scalbnf(__lcpp_x, __lcpp_y);}
> +inline _LIBCPP_INLINE_VISIBILITY long double scalbn(long double __lcpp_x, int __lcpp_y) _NOEXCEPT {return ::scalbnl(__lcpp_x, __lcpp_y);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -scalbn(_A1 __lcpp_x, int __lcpp_y) _NOEXCEPT {return scalbn((double)__lcpp_x, __lcpp_y);}
> +scalbn(_A1 __lcpp_x, int __lcpp_y) _NOEXCEPT {return ::scalbn((double)__lcpp_x, __lcpp_y);}
> 
> // tgamma
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       tgamma(float __lcpp_x) _NOEXCEPT       {return tgammaf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double tgamma(long double __lcpp_x) _NOEXCEPT {return tgammal(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       tgamma(float __lcpp_x) _NOEXCEPT       {return ::tgammaf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double tgamma(long double __lcpp_x) _NOEXCEPT {return ::tgammal(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -tgamma(_A1 __lcpp_x) _NOEXCEPT {return tgamma((double)__lcpp_x);}
> +tgamma(_A1 __lcpp_x) _NOEXCEPT {return ::tgamma((double)__lcpp_x);}
> 
> // trunc
> 
> -inline _LIBCPP_INLINE_VISIBILITY float       trunc(float __lcpp_x) _NOEXCEPT       {return truncf(__lcpp_x);}
> -inline _LIBCPP_INLINE_VISIBILITY long double trunc(long double __lcpp_x) _NOEXCEPT {return truncl(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY float       trunc(float __lcpp_x) _NOEXCEPT       {return ::truncf(__lcpp_x);}
> +inline _LIBCPP_INLINE_VISIBILITY long double trunc(long double __lcpp_x) _NOEXCEPT {return ::truncl(__lcpp_x);}
> 
> template <class _A1>
> inline _LIBCPP_INLINE_VISIBILITY
> typename std::enable_if<std::is_integral<_A1>::value, double>::type
> -trunc(_A1 __lcpp_x) _NOEXCEPT {return trunc((double)__lcpp_x);}
> +trunc(_A1 __lcpp_x) _NOEXCEPT {return ::trunc((double)__lcpp_x);}
> 
> #endif // !_LIBCPP_MSVCRT
> 
> 
> 
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits



More information about the cfe-commits mailing list