diff options
author | Richard Biener <rguenther@suse.de> | 2023-11-06 11:31:40 +0100 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2023-11-07 13:55:07 +0100 |
commit | 7562f089a190953b8ef615b90b7b0520e812a930 (patch) | |
tree | d49da9b72ebd5d337c375695579cc391662b0081 /gcc/ada/gcc-interface/utils.cc | |
parent | dd5c3ca98a86e04a316b3d90dadcfcb2b171760b (diff) | |
download | gcc-7562f089a190953b8ef615b90b7b0520e812a930.zip gcc-7562f089a190953b8ef615b90b7b0520e812a930.tar.gz gcc-7562f089a190953b8ef615b90b7b0520e812a930.tar.bz2 |
libstdc++/112351 - deal with __gthread_once failure during locale init
The following makes the C++98 locale init path follow the way the
C++11 performs initialization. This way we deal with pthread_once
failing, falling back to non-threadsafe initialization which, given we
initialize from the library, should be serialized by the dynamic
loader already.
PR libstdc++/112351
libstdc++-v3/
* src/c++98/locale.cc (locale::facet::_S_initialize_once):
Check whether _S_c_locale is already initialized.
(locale::facet::_S_get_c_locale): Always perform non-threadsafe
init when threadsafe init failed.
Diffstat (limited to 'gcc/ada/gcc-interface/utils.cc')
0 files changed, 0 insertions, 0 deletions