2007-11-07 Paolo Carlini <pcarlini@suse.de>
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Nov 2007 02:48:25 +0000 (02:48 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Nov 2007 02:48:25 +0000 (02:48 +0000)
* include/tr1_impl/complex (fabs): In C++0x mode adjust
return type per DR 595 [Ready].

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129983 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/include/tr1_impl/complex

index 78e5b2a..fd48059 100644 (file)
@@ -1,5 +1,10 @@
 2007-11-07  Paolo Carlini  <pcarlini@suse.de>
 
+       * include/tr1_impl/complex (fabs): In C++0x mode adjust
+       return type per DR 595 [Ready].
+
+2007-11-07  Paolo Carlini  <pcarlini@suse.de>
+
        * include/bits/stl_iterator.h (move_iterator<>::pointer): Adjust
        typedef per DR 680 [Ready].
 
index f763182..5c25cae 100644 (file)
@@ -44,7 +44,12 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
   template<typename _Tp> std::complex<_Tp> acosh(const std::complex<_Tp>&);
   template<typename _Tp> std::complex<_Tp> asinh(const std::complex<_Tp>&);
   template<typename _Tp> std::complex<_Tp> atanh(const std::complex<_Tp>&);
+#ifdef _GLIBCXX_INCLUDE_AS_CXX0X
+  // DR 595.
+  template<typename _Tp> _Tp               fabs(const std::complex<_Tp>&);
+#else
   template<typename _Tp> std::complex<_Tp> fabs(const std::complex<_Tp>&);
+#endif
 
   /// @brief acos(__z) [8.1.2].
   //  Effects:  Behaves the same as C99 function cacos, defined
@@ -288,7 +293,11 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
   //  Effects:  Behaves the same as C99 function cabs, defined
   //            in subclause 7.3.8.1.
   template<typename _Tp>
+#ifdef _GLIBCXX_INCLUDE_AS_CXX0X
+    inline _Tp
+#else
     inline std::complex<_Tp>
+#endif
     fabs(const std::complex<_Tp>& __z)
     { return std::abs(__z); }