components/gcc47/patches/008-cmath.patch
changeset 7012 cc470645fd82
parent 7011 10c58c99afd6
child 7013 9b20e919735b
equal deleted inserted replaced
7011:10c58c99afd6 7012:cc470645fd82
     1 # 2013-07-17 Stefan Teleman <[email protected]>
       
     2 # 1. DR550 is not normative. It is just a Defect Report.
       
     3 #
       
     4 # 2. The overloaded pow(3m) interfaces should not be removed from C++11,
       
     5 # there is no valid technical reason to do so.
       
     6 #
       
     7 # 3. GCC 4.8.1 re-introduces these pow(3m) interfaces in C++11 after
       
     8 # having removed them in 4.7.3.
       
     9 --- gcc-4.7.3/libstdc++-v3/include/c_global/cmath	2011-11-14 03:29:26.000000000 -0800
       
    10 +++ gcc-4.7.3/libstdc++-v3/include/c_global/cmath	2013-07-14 16:45:54.968913460 -0700
       
    11 @@ -414,9 +414,9 @@
       
    12    pow(long double __x, long double __y)
       
    13    { return __builtin_powl(__x, __y); }
       
    14  
       
    15 -#ifndef __GXX_EXPERIMENTAL_CXX0X__
       
    16    // _GLIBCXX_RESOLVE_LIB_DEFECTS
       
    17    // DR 550. What should the return type of pow(float,int) be?
       
    18 +  // http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#550
       
    19    inline double
       
    20    pow(double __x, int __i)
       
    21    { return __builtin_powi(__x, __i); }
       
    22 @@ -429,7 +429,6 @@
       
    23    pow(long double __x, int __n)
       
    24    { return __builtin_powil(__x, __n); }
       
    25  #endif
       
    26 -#endif
       
    27  
       
    28    template<typename _Tp, typename _Up>
       
    29      inline _GLIBCXX_CONSTEXPR