gcc/libstdc++-v3/src
Benjamin Kosnik def9790d51 Clean up initialization and simplfy caching of underlying "C" locale objects.
2001-12-14  Benjamin Kosnik  <bkoz@redhat.com>

	Clean up initialization and simplfy caching of underlying "C"
	locale objects.
	* src/localename.cc (locale::_Impl::_Impl(string, size_t):
	Unconditionally create __clocale object for all named locales,
	including "C" and "POSIX".
	* config/locale/c_locale_generic.cc
	(locale::facet::_S_create_c_locale): Always set __cloc to zero.
	* config/locale/c_locale_gnu.cc: Always delete.
	* include/bits/localefwd.h (locale::facet::_S_c_locale): New.
	* src/locale.cc (locale::classic()): Initialize
	locale::facet::_S_c_locale.
	(locale::facet::_S_c_locale): Define.

	* include/bits/locale_facets.h: Add ctype_byname<wchar_t> ctor
	specialization.
	* src/locale.cc: Add definition here.
	* config/os/gnu-linux/bits/ctype_inline.h: Tweak.
	* config/os/gnu-linux/bits/ctype_noninline.h: Adjust initializations.
	* include/bits/locale_facets.h (ctype<char>::_M_c_locale_ctype): Add.
	Adjust ctors, dtors.
	(ctype<char>::_M_toupper): Remove const&.
	(ctype<char>::_M_tolower): Remove const&.
	(ctype<char>::_M_ctable): Remove const&.

	* include/bits/locale_facets.h (collate): Clean up initialization
	of _M_c_locale_collate in ctors and dtors.
	* config/locale/collate_members_gnu.cc: Always use extended
	functions.

	* include/bits/locale_facets.h (messages): Clean up inits in ctor/dtor.
	(messages_byname): Same.
	* config/locale/messages_members_generic.h (messages::~messages):
	Remove.
	* config/locale/messages_members_gnu.h: Same.

	* include/bits/localefwd.h: Clean. Move dtor definitions to
	* src/locale.cc: Here.
	* testsuite/22_locale/facet.cc: Fix spelling.

	Named locale support for ctype<wchar_t>.
        * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add variable
        ctype_members_* bits.
        * aclocal.m4: Regenerate.
        * configure: Regenerate.
        * src/Makefile.am (sources): Add ctype.cc.
        * src/Makefile.in: Regenerate.
        * config/locale/ctype_members_generic.cc: New file.
        * config/locale/ctype_members_gnu.cc: New file.
        * src/locale.cc: Remove ctype<wchart_t> definitions.

From-SVN: r48034
2001-12-15 07:05:04 +00:00
..
bitset.cc algo.h: Add "GPL plus runtime exception" comment block, this time for real. 2001-06-27 17:09:53 +00:00
cmath.cc re PR libstdc++/3377 (missing std::__cmath_power<double>(double,unsigned)) 2001-06-25 20:57:51 +00:00
codecvt.cc codecvt.h: Add virtual member function declarations. 2001-10-31 20:05:33 +00:00
complex_io.cc acconfig.h (_GLIBCPP_BUGGY_FLOAT_COMPLEX): Remove. 2001-05-31 12:14:56 +00:00
concept-inst.cc acconfig.h: Update comments. 2001-11-02 22:31:03 +00:00
ext-inst.cc [multiple changes] 2001-12-04 20:13:41 +00:00
functexcept.cc Make -fno-exceptions work. 2001-10-24 02:37:56 +00:00
globals.cc globals.cc: Remove __GTHREADS guard. 2001-12-07 23:13:23 +00:00
ios.cc Numeric facets cleanup. 2001-11-28 04:07:11 +00:00
limits.cc acconfig.h: Update comments. 2001-11-02 22:31:03 +00:00
locale-inst.cc locale_facets.tcc (__pad): Add bool parameter to correctly pad internal-adjusted const char*-type objects. 2001-11-29 22:31:02 +00:00
locale.cc Clean up initialization and simplfy caching of underlying "C" locale objects. 2001-12-15 07:05:04 +00:00
localename.cc Clean up initialization and simplfy caching of underlying "C" locale objects. 2001-12-15 07:05:04 +00:00
Makefile.am Clean up initialization and simplfy caching of underlying "C" locale objects. 2001-12-15 07:05:04 +00:00
Makefile.in Clean up initialization and simplfy caching of underlying "C" locale objects. 2001-12-15 07:05:04 +00:00
misc-inst.cc Numeric facets cleanup. 2001-11-28 04:07:11 +00:00
stdexcept.cc algo.h: Use std not __STD. 2001-03-04 21:34:02 +00:00
stl-inst.cc howto.html: Update commentary. 2001-12-03 19:11:01 +00:00
string-inst.cc basic_string.tcc (_M_replace_safe): New function. 2001-12-10 13:42:01 +00:00
strstream.cc algo.h: Add "GPL plus runtime exception" comment block, this time for real. 2001-06-27 17:09:53 +00:00
valarray-inst.cc Fixups for -fno-for-scope 2001-03-12 21:42:57 +00:00
vterminate.cc vterminate.cc (__verbose_terminate_handler): Add leading underscores. 2001-11-23 12:36:43 -05:00
wstring-inst.cc [multiple changes] 2001-03-02 21:38:26 +00:00