2001-12-12 Benjamin Kosnik <bkoz@redhat.com>
commit9675391fa18f8f94e921be40fbe73552c3235877
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 12 Dec 2001 23:16:35 +0000 (12 23:16 +0000)
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 12 Dec 2001 23:16:35 +0000 (12 23:16 +0000)
tree730003a3ac41256c22a9fa2ccf2908348ac6572c
parent4e3ed5344de7ed858fa93e6c4bf41835f88ca400
2001-12-12  Benjamin Kosnik  <bkoz@redhat.com>

Named locale support for ctype<char>.
* config/locale/c_locale_gnu.h (_GLIBCPP_C_LOCALE_GNU): New.
* config/os/gnu-linux/bits/ctype_noninline.h (ctype<char>): Add
definitions for alternate constructor.
* config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
* config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
* config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
* config/os/newlib/bits/ctype_noninline.h (ctype): Same.
* config/os/irix/irix6.5/bits/ctype_noninline.h (ctype): Same.
* config/os/irix/irix5.2/bits/ctype_noninline.h (ctype): Same.
* config/os/hpux/bits/ctype_noninline.h (ctype): Same.
* config/os/generic/bits/ctype_noninline.h (ctype): Same.
* config/os/djgpp/bits/ctype_noninline.h (ctype): Same.
* config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
* config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
* config/os/aix/bits/ctype_noninline.h (ctype): Same.
* include/bits/locale_facets.h (ctype<_CharT>): Remove dummy
definitions for all virtual functions. These are now explicitly
undefined for non-required factets, ie any non-char, non-wchar_t
instantiations.
* src/localename.cc (locale::_Impl::_Impl(string, size_t): Named
locales use alternate constructor for ctype facet.
* include/bits/locale_facets.h (ctype<char>::ctype(__c_locale, const
mask*, bool, size_t): Add.
(ctype<wchar_t>::ctype(__c_locale, size_t): Add.
* src/locale.cc (ctype<wchar_t>::ctype(__c_locale, size_t)): Add
definition.

* testsuite/22_locale/ctype_members_char.cc (test02): Add, mark
XFAIL for non-gnu locale models.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47953 138bc75d-0d04-0410-961f-82ee72b054a4
20 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/config/locale/c_locale_gnu.h
libstdc++-v3/config/os/aix/bits/ctype_noninline.h
libstdc++-v3/config/os/bsd/freebsd/bits/ctype_noninline.h
libstdc++-v3/config/os/bsd/netbsd/bits/ctype_noninline.h
libstdc++-v3/config/os/djgpp/bits/ctype_noninline.h
libstdc++-v3/config/os/generic/bits/ctype_noninline.h
libstdc++-v3/config/os/gnu-linux/bits/ctype_inline.h
libstdc++-v3/config/os/gnu-linux/bits/ctype_noninline.h
libstdc++-v3/config/os/hpux/bits/ctype_noninline.h
libstdc++-v3/config/os/irix/irix5.2/bits/ctype_noninline.h
libstdc++-v3/config/os/irix/irix6.5/bits/ctype_noninline.h
libstdc++-v3/config/os/newlib/bits/ctype_noninline.h
libstdc++-v3/config/os/solaris/solaris2.5/bits/ctype_noninline.h
libstdc++-v3/config/os/solaris/solaris2.6/bits/ctype_noninline.h
libstdc++-v3/config/os/solaris/solaris2.7/bits/ctype_noninline.h
libstdc++-v3/include/bits/locale_facets.h
libstdc++-v3/src/locale.cc
libstdc++-v3/src/localename.cc
libstdc++-v3/testsuite/22_locale/ctype_members_char.cc