Patchwork libstdc++/56905 deprecate copy_exception

login
register
mail settings
Submitter Jonathan Wakely
Date April 24, 2013, 10:04 p.m.
Message ID <CAH6eHdSQ_AH+pK1k6JJC2TrdPYFkz4fdMKR9oTCnduGiLYxqrw@mail.gmail.com>
Download mbox | patch
Permalink /patch/239326/
State New
Headers show

Comments

Jonathan Wakely - April 24, 2013, 10:04 p.m.
On 24 April 2013 23:00, Jonathan Wakely wrote:
> The C++0x draft defined std::copy_exception but it was renamed to
> std::make_exception_ptr in the final C++11 standard.  This changes the
> library to use the new name and deprecates the old one, so we can
> remove it one day.
>
>         PR libstdc++/56905
>         * libsupc++/exception_ptr.h (copy_exception): Deprecate and
>         move implementation to make_exception_ptr.
>         * include/std/future (_State_base::_M_break_promise): Replace
>         copy_exception with make_exception_ptr.
>         * testsuite/18_support/exception_ptr/move.cc: Likewise.
>         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
>         * testsuite/30_threads/future/members/get2.cc: Likewise.
>         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
>         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
>         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
>         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
>
> Tested x86_64-linux, committed to trunk.

Here's the wwwdocs patch for the release notes.

Patch

Index: htdocs/gcc-4.9/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.9/changes.html,v
retrieving revision 1.7
diff -u -r1.7 changes.html
--- htdocs/gcc-4.9/changes.html	24 Apr 2013 16:21:39 -0000	1.7
+++ htdocs/gcc-4.9/changes.html	24 Apr 2013 22:03:37 -0000
@@ -88,6 +88,15 @@ 
   </li>
 </ul>
 
+  <h4>Runtime Library (libstdc++)</h4>
+
+  <ul>
+    <li>The non-standard function <code>std::copy_exception</code> has been deprecated
+        and will be removed in a future version. <code>std::make_exception_ptr</code>
+        should be used instead.
+    </li>
+  </ul>
+
 <h3 id="fortran">Fortran</h3>
   <ul>
     <li>Compatibility notice: