re PR c++/49813 ([C++0x] sinh vs asinh vs constexpr)
authorPaolo Carlini <paolo.carlini@oracle.com>
Mon, 1 Aug 2011 19:26:39 +0000 (19:26 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Mon, 1 Aug 2011 19:26:39 +0000 (19:26 +0000)
2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/49813
* include/c_global/cmath (isinf): Remove workaround.

From-SVN: r177070

libstdc++-v3/ChangeLog
libstdc++-v3/include/c_global/cmath

index c8ac5d10ea77edfc2dd7641f8b4da571d1899901..3a832f7ddecfe1373d068d54fda3b2a8be66472c 100644 (file)
@@ -1,3 +1,8 @@
+2011-08-01  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/49813
+       * include/c_global/cmath (isinf): Remove workaround.
+
 2011-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR libstdc++/49925
index 4a75d0e613b57f056a5f962f976284c16fc66ae7..1eeded8efe18b277b4815ba51cdf2ca9923f7efa 100644 (file)
@@ -547,18 +547,17 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
     isfinite(_Tp __x)
     { return true; }
 
-  // Workaround the isinf issue discussed in PR 49813.
   constexpr bool
   isinf(float __x)
-  { return fpclassify(__x) == FP_INFINITE; }
+  { return __builtin_isinf(__x); }
 
   constexpr bool
   isinf(double __x)
-  { return fpclassify(__x) == FP_INFINITE; }
+  { return __builtin_isinf(__x); }
 
   constexpr bool
   isinf(long double __x)
-  { return fpclassify(__x) == FP_INFINITE; }
+  { return __builtin_isinf(__x); }
 
   template<typename _Tp>
     constexpr typename __gnu_cxx::__enable_if<__is_integer<_Tp>::__value,