This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libstdc++/60966] std::call_once sometime hangs


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60966

--- Comment #27 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Sat May 17 12:58:46 2014
New Revision: 210556

URL: http://gcc.gnu.org/viewcvs?rev=210556&root=gcc&view=rev
Log:
    PR libstdc++/60966
    * include/std/future (__future_base::_State_baseV2::_M_set_result):
    Pass lock into _M_do_set and hold it until the function returns.
    Signal condition variable after call_once completes.
    (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
    signal here.
    * testsuite/30_threads/promise/60966.cc: New.

Added:
    trunk/libstdc++-v3/testsuite/30_threads/promise/60966.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/std/future


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]