[Bug libstdc++/54297] [C++11] Segmentation fault with std::async and released shared state
redi at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Aug 25 23:02:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54297
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-08-25 23:01:44 UTC ---
Author: redi
Date: Sat Aug 25 23:01:40 2012
New Revision: 190672
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190672
Log:
PR libstdc++/54297
* include/std/future (~_Async_state_impl): Join thread before
derived class members are destroyed.
(~_Async_state_common): Only define non-trivial destructor when
included from future.cc for ABI compatibility reasons.
* src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
* testsuite/30_threads/async/54297.cc: New.
Added:
trunk/libstdc++-v3/testsuite/30_threads/async/54297.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/std/future
trunk/libstdc++-v3/src/c++11/future.cc
More information about the Gcc-bugs
mailing list