mirror of
https://gcc.gnu.org/git/gcc.git
synced 2025-01-04 18:13:44 +08:00
PR libstdc++/78552 only construct std::locale for C locale once
PR libstdc++/78552 * src/c++98/locale_init.cc (locale::classic()): Do not construct a new locale object for every call. (locale::_S_initialize_once()): Construct C locale here. From-SVN: r276758
This commit is contained in:
parent
6bbead0c5a
commit
531b0a3172
@ -1,3 +1,10 @@
|
|||||||
|
2019-10-09 Jonathan Wakely <jwakely@redhat.com>
|
||||||
|
|
||||||
|
PR libstdc++/78552
|
||||||
|
* src/c++98/locale_init.cc (locale::classic()): Do not construct a new
|
||||||
|
locale object for every call.
|
||||||
|
(locale::_S_initialize_once()): Construct C locale here.
|
||||||
|
|
||||||
2019-10-08 Jonathan Wakely <jwakely@redhat.com>
|
2019-10-08 Jonathan Wakely <jwakely@redhat.com>
|
||||||
|
|
||||||
* doc/Makefile.am (doc-html-docbook-regenerate): New target.
|
* doc/Makefile.am (doc-html-docbook-regenerate): New target.
|
||||||
|
@ -303,7 +303,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||||||
locale::classic()
|
locale::classic()
|
||||||
{
|
{
|
||||||
_S_initialize();
|
_S_initialize();
|
||||||
return *(new (&c_locale) locale(_S_classic));
|
return *(const locale*)c_locale;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -313,6 +313,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||||||
// One reference for _S_classic, one for _S_global
|
// One reference for _S_classic, one for _S_global
|
||||||
_S_classic = new (&c_locale_impl) _Impl(2);
|
_S_classic = new (&c_locale_impl) _Impl(2);
|
||||||
_S_global = _S_classic;
|
_S_global = _S_classic;
|
||||||
|
new (&c_locale) locale(_S_classic);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
Loading…
Reference in New Issue
Block a user