author | Stefan Teleman <stefan.teleman@oracle.com> |
Wed, 07 Aug 2013 11:25:39 -0700 | |
branch | s11-update |
changeset 2720 | ce63a14b34c3 |
permissions | -rw-r--r-- |
2720
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
1 |
# 2013-07-17 Stefan Teleman <[email protected]> |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
2 |
# 1. DR550 is not normative. It is just a Defect Report. |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
3 |
# |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
4 |
# 2. The overloaded pow(3m) interfaces should not be removed from C++11, |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
5 |
# there is no valid technical reason to do so. |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
6 |
# |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
7 |
# 3. GCC 4.8.1 re-introduces these pow(3m) interfaces in C++11 after |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
8 |
# having removed them in 4.7.3. |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
9 |
--- gcc-4.7.3/libstdc++-v3/include/c_global/cmath 2011-11-14 03:29:26.000000000 -0800 |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
10 |
+++ gcc-4.7.3/libstdc++-v3/include/c_global/cmath 2013-07-14 16:45:54.968913460 -0700 |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
11 |
@@ -414,9 +414,9 @@ |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
12 |
pow(long double __x, long double __y) |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
13 |
{ return __builtin_powl(__x, __y); } |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
14 |
|
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
15 |
-#ifndef __GXX_EXPERIMENTAL_CXX0X__ |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
16 |
// _GLIBCXX_RESOLVE_LIB_DEFECTS |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
17 |
// DR 550. What should the return type of pow(float,int) be? |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
18 |
+ // http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#550 |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
19 |
inline double |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
20 |
pow(double __x, int __i) |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
21 |
{ return __builtin_powi(__x, __i); } |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
22 |
@@ -429,7 +429,6 @@ |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
23 |
pow(long double __x, int __n) |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
24 |
{ return __builtin_powil(__x, __n); } |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
25 |
#endif |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
26 |
-#endif |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
27 |
|
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
28 |
template<typename _Tp, typename _Up> |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
29 |
inline _GLIBCXX_CONSTEXPR |