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++/39909] non-TLS version of std::call_once causes terminate



------- Comment #7 from redi at gcc dot gnu dot org  2009-05-05 21:33 -------
Subject: Bug 39909

Author: redi
Date: Tue May  5 21:32:38 2009
New Revision: 147137

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=147137
Log:
2009-05-05  Jonathan Wakely  <jwakely.gcc@gmail.com>

        PR libstdc++/39909
        * include/std/mutex (__get_once_functor_lock, __get_once_mutex,
        __set_once_functor_lock_ptr): Replace global lock object with local
        locks on global mutex.
        * src/mutex.cc (__get_once_functor_lock, __get_once_mutex,
        __set_once_functor_lock_ptr): Likewise, keeping old function to
        preserve ABI.
        (__once_proxy): Use pointer to local lock if set, global lock
        otherwise.
        * config/abi/pre/gnu.ver: Add new symbols to new ABI version.
        * testsuite/util/testsuite_abi.cc: Add GLIBCX_3.4.12 version.
        * testsuite/30_threads/call_once/39909.cc: New.

Added:
    trunk/libstdc++-v3/testsuite/30_threads/call_once/39909.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/config/abi/pre/gnu.ver
    trunk/libstdc++-v3/include/std/mutex
    trunk/libstdc++-v3/src/mutex.cc
    trunk/libstdc++-v3/testsuite/util/testsuite_abi.cc


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39909


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