Jakub Jelinek
9a6d20712b
monetary_members.cc (moneypunct<wchar_t, [...]): Use __uselocale instead of setlocale for glibc 2.3.
...
* config/locale/gnu/monetary_members.cc
(moneypunct<wchar_t, true>::_M_initialize_moneypunct,
moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
__uselocale instead of setlocale for glibc 2.3.
From-SVN: r56839
2002-09-05 09:51:16 +02:00
Jakub Jelinek
89671b7067
c++locale_internal.h: New header.
...
* config/locale/generic/c++locale_internal.h: New header.
* config/locale/gnu/c++locale_internal.h: New header.
* config/locale/gnu/c_locale.cc: Include it.
* config/locale/gnu/collate_members.cc: Include it.
* config/locale/gnu/ctype_members.cc: Include it.
* config/locale/gnu/messages_members.cc: Include it.
* config/locale/gnu/monetary_members.cc: Include it.
* config/locale/gnu/numeric_members.cc: Include it.
* config/locale/gnu/time_members.cc: Include it.
(_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
glibc.
(_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
C locale.
* acinclude.m4: Include string.h when testing strcoll_l.
For glibc 2.3 provide __-prefixed prototypes.
(CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line.
* aclocal.m4, configure: Rebuilt.
* include/bits/locale_facets.h: Add declaration of specialization
here.
* config/locale/gnu/messages_members.cc: Add specialization for
messages<wchar_t>.
* config/locale/gnu/messages_members.h: Remove generic definition
of do_get.
From-SVN: r56837
2002-09-05 09:46:17 +02:00
Benjamin Kosnik
fdf7e80975
re PR libstdc++/6410 (Trouble with non-Ascii monetary symbols and wchar_t)
...
2002-07-02 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/6410
* include/bits/locale_facets.h (moneypunct::moneypunct): Add const
char* name parameter.
* config/locale/gnu/monetary_members.cc: Use it.
* config/locale/generic/monetary_members.cc: Same.
* src/localename.cc (_Impl::_Impl(const char*, size_t)): Use it.
* include/backward/strstream.h: Update date.
From-SVN: r55203
2002-07-03 06:29:26 +00:00
Benjamin Kosnik
d3a193e36c
re PR libstdc++/4164 (33 Memory Leak when using iostream)
...
2002-04-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/4164
Valgrind fixes.
* config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
Call close.
(__basic_file::close): Call fflush. Correct return if fclose ok.
(__basic_file::is_open): Make const.
Change __c_file_type to __c_file.
* config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
(__basic_file::is_open): Make const.
* config/io/c_io_stdio.h: Change __c_file_type to __c_file.
* include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
(filebuf::_M_unbuf): Add.
(filebuf::_M_file): Change to non-pointer.
(filebuf::_M_allocate_pback_buffer): Remove.
* include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
(filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
Change initialization list for _M_file change.
(filebuf::_M_allocate_pback_buffer): Remove.
Change _M_file usage to reflect non-pointer data member.
* config/locale/generic/c_locale.cc
(locale::facet::_S_create_c_locale): Add parameter.
* config/locale/generic/collate_members.cc: Change
_M_compare_helper to _M_compare.
Change _M_transform_helper to _M_transform.
* config/locale/generic/monetary_members.cc: Changeup data types.
Add dtors.
* config/locale/generic/numeric_members.cc: Add dtors.
* config/locale/generic/time_members.cc: Add dtors.
* config/locale/gnu/c_locale.cc: Add parameter.
* config/locale/gnu/collate_members.cc:Change
_M_compare_helper to _M_compare.
Change _M_transform_helper to _M_transform.
* config/locale/gnu/ctype_members.cc: Better error checking.
* config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
* config/locale/gnu/messages_members.cc: Tweak comment.
* config/locale/gnu/monetary_members.cc: Change data types.
Add dtors.
* config/locale/gnu/numeric_members.cc: Add dtors, better error
checking.
* config/locale/gnu/time_members.cc: Same.
* config/locale/ieee_1003.1-2001/c_locale.cc
(locale::facet::_S_create_c_locale): Add parameter.
* config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
bogus ctor.
* include/bits/locale_facets.h (moneypunct): Use string literals.
Don't define dtor.
(numpunct): Same.
(__timepunct): Same.
(locale::_Impl::_M_facets): Change from vector to array.
(locale::_Impl::_M_names): Change from array of strings to array
of string literals.
(locale::facet::_S_create_c_locale): Add parameter.
(locale::locale::_S_num_facets): Move to...
(locale::_Impl::_M_facets_size): Here.
* include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
changes.
* include/bits/localefwd.h: (locale:🆔 :_M_id): Add member function.
(locale::_Impl::_Impl(facet**, size_t, bool)): Add.
(locale::_Impl::_Impl(string, size_t)): Change to
(locale::_Impl::_Impl(const char*, size_t)): This.
* include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
* include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
(streambuf::_S_pback_size): This.
* src/globals.cc: Add pre-allocations for "C" facets.
* src/locale-inst.cc: Remove vector instantiations.
* src/locale.cc: Remove vector include. Fixups for _M_names,
_M_facets changes.
* src/localename.cc: Same.
* include/bits/stl_vector.h: Fix odd formatting.
* include/bits/basic_string.tcc: Tweak comment.
* libsupc++/new: Make sure parameters are uglified.
* libsupc++/typeinfo: Same.
* testsuite/22_locale/num_get_members_char.cc: Fixup.
* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
* testsuite/27_io/filebuf_members.cc: Same.
From-SVN: r52345
2002-04-16 00:45:36 +00:00
Benjamin Kosnik
1fa4bed7b5
c_locale_generic.cc: Move to...
...
2002-03-08 Benjamin Kosnik <bkoz@redhat.com>
* c_locale_generic.cc: Move to...
* generic/c_locale.cc
* c_locale_generic.h: Move to...
* generic/c_locale.h
* codecvt_specializations_generic.h: Move to...
* generic/codecvt_specializations.h
* collate_members_generic.cc: Move to...
* generic/collate_members.cc
* ctype_members_generic.cc: Move to...
* generic/ctype_members.cc
* messages_members_generic.cc: Move to...
* generic/messages_members.cc
* messages_members_generic.h: Move to...
* generic/messages_members.h
* moneypunct_members_generic.cc: Move to...
* generic/monetary_members.cc
* numpunct_members_generic.cc: Move to...
* generic/numeric_members.cc
* time_members_generic.cc: Move to...
* generic/time_members.cc
* c_locale_gnu.cc: Move to...
* gnu/c_locale.cc
* c_locale_gnu.h: Move to...
* gnu/c_locale.h
* collate_members_gnu.cc: Move to...
* gnu/collate_members.cc
* ctype_members_gnu.cc: Move to...
* gnu/ctype_members.cc
* messages_members_gnu.cc: Move to...
* gnu/messages_members.cc
* messages_members_gnu.h: Move to...
* gnu/messages_members.h
* moneypunct_members_gnu.cc: Move to...
* gnu/monetary_members.cc
* numpunct_members_gnu.cc: Move to...
* gnu/numeric_members.cc
* time_members_gnu.cc: Move to...
* gnu/time_members.cc
* c_locale_ieee_1003.1-200x.cc: Move to...
* ieee_1003.1-2001/c_locale.cc
* c_locale_ieee_1003.1-200x.h: Move to...
* ieee_1003.1-2001/c_locale.h
* codecvt_specializations_ieee_1003.1-200x.h: Move to...
* ieee_1003.1-2001/codecvt_specializations.h
* messages_members_ieee_1003.1-200x.cc: Move to...
* ieee_1003.1-2001/messages_members.cc
* messages_members_ieee_1003.1-200x.h: Move to...
* ieee_1003.1-2001/messages_members.h
* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* src/Makefile.am (sources): Change to monetary and numeric.
* src/Makefile.in: Regenerate.
* docs/html/configopts.html: Update to ieee_1003.1-2001.
From-SVN: r50472
2002-03-09 02:16:36 +00:00