Benjamin Kosnik
e66868131b
locale_facets.h: Move non-facet classes requiring <string> to...
...
2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h: Move non-facet classes requiring
<string> to...
* include/bits/locale_classes.h: New.
* include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
* include/bits/Makefile.in: Regenerate.
* include/bits/locale_facets.tcc (__convert_from_v): Move to...
* config/locale/gnu/c_locale.h: ...here.
* config/locale/generic/c_locale.h: Same.
* include/bits/locale_facets.tcc: Move declarations to...
* include/bits/locale_facets.h: ...here.
* include/bits/basic_ios.h: Tweak includes accordingly.
* include/std/std_sstream.h: Add streambuf include.
* include/std/std_fstream.h: Ditto.
* include/std/std_locale.h: Add locale_classes.h include.
* include/std/std_iosfwd.h: Tweak.
* src/concept-inst.cc: Add iterator include.
* config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
bits as unexported in the future.
From-SVN: r61593
2003-01-22 16:51:52 +00:00
Paolo Carlini
87117aa2f3
re PR libstdc++/9151 (std::setprecision limited to 16 digits when outputting a double to a stream)
...
2003-01-06 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9151
* include/bits/locale_facets.cc (num_put::_M_convert_float):
Limit __prec to digits10 + 2, not digits10 + 1, taking into
account the possibility of %{g,G} conversion specifiers
inside _S_format_float.
* testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
From-SVN: r60939
2003-01-06 15:32:16 +00:00
Zack Weinberg
4977bab6ed
Merge basic-improvements-branch to trunk
...
From-SVN: r60174
2002-12-16 18:23:00 +00:00
Benjamin Kosnik
5112ae3a8f
re PR libstdc++/8318 (Not all wide character based prototypes are included within #ifdef _GLIBCPP_USE_WCHAR_T)
...
2002-11-01 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/8318
* include/std/std_iostream.h: Tweak.
* include/std/std_iosfwd.h: Add _GLIBCPP_USE_WCHAR_T.
* include/std/std_iomanip.h: Same.
* include/bits/stringfwd.h: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/sstream.tcc: Same.
* include/bits/fstream.tcc: Same.
* include/bits/basic_ios.tcc: Same.
* include/bits/streambuf.tcc: Same.
* include/bits/locale_facets.tcc: Same.
From-SVN: r58720
2002-11-01 17:30:36 +00:00
Paolo Carlini
b1af5a30a5
locale_facets.tcc (num_put::_M_widen_int): Deal correctly with grouped, showbased (oct or hex) zero.
...
2002-09-27 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (num_put::_M_widen_int):
Deal correctly with grouped, showbased (oct or hex) zero.
* testsuite/22_locale/num_put_members_char.cc: Add test05.
* testsuite/22_locale/num_put_members_wchar_t.cc: Ditto.
From-SVN: r57598
2002-09-27 23:08:22 +00:00
Benjamin Kosnik
145163253a
[multiple changes]
...
2002-09-11 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc (__convert_from_v): Remove.
* config/locale/gnu/c_locale.h (__convert_from_v): Add.
* config/locale/generic/c_locale.h (__convert_from_v): Add.
2002-09-11 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (__convert_from_v):
Use __uselocale instead of setlocale for glibc 2.3+.
From-SVN: r57021
2002-09-11 04:25:41 +00:00
Danny Smith
57c4e0cd35
locale_facets.tcc (__convert_from_v): Replace strdup with ISO malloc and strcpy.
...
* include/bits/locale_facets.tcc (__convert_from_v):
Replace strdup with ISO malloc and strcpy.
From-SVN: r56991
2002-09-10 02:41:55 +00:00
Benjamin Kosnik
f13a69eccf
char_traits.h: Remove generic definitions.
...
2002-07-30 Benjamin Kosnik <bkoz@redhat.com>
Gabriel Dos Reis <gdr@nerim.net>
* include/bits/char_traits.h: Remove generic definitions.
* include/bits/streambuf_iterator.h (istreambuf_iterator): Use
eof, not -2.
* include/bits/istream.tcc (istream::readsome): Don't check
against eof, instead use constants.
(istream::sync): Same.
(istream::sentry::sentry): Use eq_int_type.
(istream::get): Same.
* include/bits/ostream.tcc: Change __pad to
__pad<_CharT, _Traits>::_S_pad.
* include/bits/locale_facets.h: Add __pad_traits generic and
ostreambuf_iterator specialization.
* include/bits/locale_facets.tcc: Change __pad into struct __pad
with a _CharT and _Traits template parameter and _S_pad static
member function.
* src/locale-inst.cc: Update __pad instantiations.
* include/std/std_fstream.h: Declare _M_underflow_common
specializations.
* src/fstream.cc: New. Add _M_underflow_common specializations.
* include/bits/fstream.tcc (filebuf::close): Use traits_type.
(filebuf::_M_underflow_common(bool)): Remove generic version, as
sys_ungetc and custom int_types don't get along.
* include/std/std_streambuf.h: Add _M_pos.
* src/Makefile.am (sources): Add fstream.cc.
* src/Makefile.in: Regenerate.
* testsuite/21_strings/capacity.cc: Add char_traits specializations.
* testsuite/22_locale/codecvt_members_unicode_char.cc: Same.
* testsuite/22_locale/codecvt_members_unicode_wchar_t.cc: Same.
* testsuite/22_locale/ctor_copy_dtor.cc: Same.
* testsuite/27_io/filebuf_virtuals.cc (test07): Move to...
* testsuite/27_io/filebuf.cc: ...here.
* testsuite/testsuite_hooks.h: Add gnu_char, gnu_int, char_traits
specialization for both.
* testsuite/27_io/streambuf.cc: Add instantiation test,
testsuite_hooks include.
* testsuite/27_io/istream.cc: Same.
* testsuite/27_io/ostream.cc: Same.
* testsuite/27_io/fstream.cc: Same.
* testsuite/27_io/stringstream.cc: Same.
* testsuite/27_io/filebuf.cc: Same.
* testsuite/27_io/stringbuf.cc: Same.
Co-Authored-By: Gabriel Dos Reis <gdr@nerim.net>
From-SVN: r55893
2002-07-31 02:47:36 +00:00
Paolo Carlini
6d030676cc
[multiple changes]
...
2002-05-04 Benjamin Kosnik <bkoz@redhat.com>
Paolo Carlini <pcarlini@unitus.it>
* testsuite/22_locale/num_put_members_char.cc: Add test04(),
testing for the locale_facets.tcc entry of the previous commit.
* testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.
2002-05-04 Takeshi Kobayakawa <tskoba@mte.biglobe.ne.jp>
* config/locale/generic/c_locale.cc
(__convert_to_v(float, double, long double)):
Fix the temporary switch to the "C" locale, saving and
restoring in the proper way the current locale.
* config/locale/generic/time_members.cc
(__timepunct<char, wchar_t>::_M_put): Likewise.
* config/locale/gnu/messages_members.cc
(messages<char>::do_get): Likewise.
* config/locale/gnu/messages_members.h
(messages<_CharT>::do_get): Likewise.
* config/locale/gnu/time_members.cc
(__timepunct<char, wchar_t>::_M_put): Likewise.
* include/bits/locale_facets.tcc (__convert_from_v): Likewise.
From-SVN: r53167
2002-05-04 21:33:19 +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
0dba73e0ab
localefwd.h (locale::_Impl::_M_facets): Change from pointer to vector.
...
2002-04-09 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/1072
* include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
pointer to vector.
Remove forward declaration of vector.
Include vector.
* include/bits/locale_facets.tcc: Remove vector include.
(use_locale): Adjust.
(has_locale): Adjust.
* src/locale.cc: Adjust.
* src/localename.cc: Same.
From-SVN: r52095
2002-04-09 21:19:55 +00:00
Paolo Carlini
99b629fa30
2002-04-01 Paolo Carlini <pcarlini@unitus.it>
...
* config/locale/ieee_1003.1-2001/codecvt_specializations.h
(codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
By definition, sizeof(char) == 1.
* include/bits/locale_facets.tcc (money_get::do_get,
money_put::do_put): Ditto.
* testsuite/21_strings/inserters_extractors.cc
(test04): Ditto.
From-SVN: r51685
2002-04-01 08:55:05 +00:00
Paolo Carlini
6d8e16a463
locale-inst.cc (__convert_from_v): Add an additional __size parameter in the declarations.
...
2002-03-19 Paolo Carlini <pcarlini@unitus.it>
Ulrich Drepper <drepper@redhat.com>
* src/locale-inst.cc (__convert_from_v): Add an additional
__size parameter in the declarations.
* include/bits/locale_facets.tcc
(__convert_from_v): When available (that is,
_GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
(num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
being defined or not, call and use __convert_from_v in the
appropriate way.
(num_put::_M_convert_int): Same here.
(money_put::do_put(long double)): Same here.
Co-Authored-By: Ulrich Drepper <drepper@redhat.com>
From-SVN: r51050
2002-03-19 22:33:06 +00:00
Paolo Carlini
3039874b15
locale_facets.tcc (money_put::do_put(long double)): Fix dimensioning of temporary buffers to avoid risk of overruns.
...
2002-03-18 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc
(money_put::do_put(long double)): Fix dimensioning of
temporary buffers to avoid risk of overruns.
(money_put::do_put(string)): Same for the buffer used to
add the grouping chars.
* testsuite/22_locale/money_put_members_char.cc: Add test06.
* testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
* include/bits/locale_facets.tcc
(collate::do_transform): Simplify.
From-SVN: r51012
2002-03-18 23:11:57 +00:00
Paolo Carlini
c15892e05e
locale_facets.tcc (time_put::do_put): Consider sizeof(char_type) in allocating the buffer.
...
2002-03-10 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (time_put::do_put):
Consider sizeof(char_type) in allocating the buffer.
* include/bits/locale_facets.tcc (collate::do_tranform):
Remove redundant variable.
From-SVN: r50553
2002-03-10 23:51:31 +00:00
Paolo Carlini
32c1620024
locale_facets.tcc (collate::do_transform): Rewrite to fix problems with long transformed strings.
...
2002-03-09 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (collate::do_transform):
Rewrite to fix problems with long transformed strings.
From-SVN: r50500
2002-03-09 16:44:34 +00:00
Scott Snyder
96854fe254
locale_facets.tcc (num_put::_M_convert_float): Allow one more digit of precision.
...
2002-03-08 scott snyder <snyder@fnal.gov>
libstdc++/5875
* include/bits/locale_facets.tcc (num_put::_M_convert_float):
Allow one more digit of precision.
* testsuite/27_io/ostream_inserter_arith.cc: Test that we can
write a double and read back in the same value.
From-SVN: r50470
2002-03-09 02:01:34 +00:00
Benjamin Kosnik
41b4d44bac
stl_alloc.h: Add extern implicit allocator instantiations.
...
2002-03-07 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_alloc.h: Add extern implicit allocator
instantiations.
* include/bits/basic_string.tcc: Tweak.
* include/bits/locale_facets.tcc: Remove default args. Add
has_facet, use_facet extern instantiations.
* src/stl-inst.cc: Add explicit instantiation.
* src/locale-inst.cc: Clean. Remove locale member template
instantiations.
* testsuite/22_locale/operators.cc (test02): Enable.
From-SVN: r50426
2002-03-08 06:05:21 +00:00
Phil Edwards
037cfe71e0
user.cfg.in: Also document deprecated entries.
...
2002-03-06 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/user.cfg.in: Also document deprecated entries.
* docs/html/Makefile: Example rule to rebuild porting-howto.html.
* docs/html/17_intro/howto.html: "gcc"->"GCC" changes, when
referring to the collection as a whole. New section on which macros
can be redefined by the user.
* docs/html/19_diagnostics/howto.html: Update note for concepts.
* docs/html/20_util/howto.html: Update link to SGI.
* docs/html/faq/index.html: Update snapshot versions. New entry
on why g++ (but not gcc) must currently predefine certain macros.
* docs/html/faq/index.txt: Regenerated.
* include/bits/basic_string.h (basic_string::_S_construct): Fix
names in declaration.
(basic_string::compare): These are no longer optional.
* include/bits/ostream.tcc: Tweak closing brace placement.
* include/bits/stl_algo.h: Lots of initial doxygen comment hooks.
* include/std/std_sstream.h: Fix typo in comment.
* include/bits/locale_facets.tcc: Remove unneeded header inclusion.
* src/locale.cc: Likewise.
From-SVN: r50376
2002-03-06 21:22:56 +00:00
Paolo Carlini
84eb48794c
2002-03-05 Paolo Carlini <pcarlini@unitus.it>
...
libstdc++/5816
* include/bits/locale_facets.tcc
(num_get::_M_extract_float): Fix the parsing of __dec, since
the standard prescribes that if no grouping characters are
seen, no grouping check is applied.
* testsuite/22_locale/num_get_members_char.cc: Add test05
distilled from the PR.
* testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
From-SVN: r50317
2002-03-05 12:09:45 +00:00
Paolo Carlini
694d519fb0
locale_facets.tcc (num_get::_M_extract_int): Admit grouping for octals and hexadecimals too.
...
2002-02-28 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (num_get::_M_extract_int):
Admit grouping for octals and hexadecimals too.
* testsuite/22_locale/num_get_members_char.cc: Add test04.
(test01): Tweak "." -> "," in void* test.
* testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.
* testsuite/27_io/ios_manip_basefield.cc: Remove static keyword.
* testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them.
From-SVN: r50162
2002-02-28 21:16:45 +00:00
Paolo Carlini
2d13abcf86
locale_facets.tcc (num_put::_M_widen_int): Group all the integral types, not only decs.
...
2002-02-26 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (num_put::_M_widen_int):
Group all the integral types, not only decs.
* testsuite/27_io/ios_manip_basefield.cc (test01): Tweak existing
tests, add a few more.
From-SVN: r50057
2002-02-26 20:56:24 +00:00
Paolo Carlini
577f406186
locale_facets.tcc (money_put::do_put): For the space field use __fill instead of ' ', uniformly.
...
2002-02-18 Paolo Carlini <pcarlini@unitus.it>
libstdc++/5708
* include/bits/locale_facets.tcc (money_put::do_put):
For the space field use __fill instead of ' ', uniformly.
* testsuite/22_locale/money_put_members_char.cc:
Add test05 distilled from PR.
(test01-02-03): Trim some '*' to ' '.
* testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
From-SVN: r49847
2002-02-18 21:23:26 +00:00
Benjamin Kosnik
3b79452813
locale_facets.tcc: Add pragma GCC system_header.
...
2002-02-16 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc: Add pragma GCC system_header.
* include/bits/fstream.tcc: Same.
* include/bits/sstream.tcc: Same.
* include/bits/ostream.tcc: Same.
* include/bits/istream.tcc: Same.
* include/bits/streambuf.tcc: Same.
* include/bits/basic_ios.tcc: Same.
* include/bits/basic_string.tcc: Same.
From-SVN: r49809
2002-02-16 19:33:43 +00:00
Benjamin Kosnik
a32e3c097e
Tune for size.
...
2002-02-15 Benjamin Kosnik <bkoz@redhat.com>
Tune for size.
* src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
explicit instantiation.
(string::_Rep::_S_max_size): Same.
* include/bits/basic_string.tcc: Add extern explicit
instantiations for string, wstring.
* include/bits/basic_ios.tcc: Add extern explicit instantiations
for ios, wios.
* include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
* include/bits/istream.tcc: Same, for istream, wistream.
* include/bits/ostream.tcc: Same for ostream, wostream, iostream,
wiostream.
* include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
istringstream, wistringstream, ostringstream, wostringstream,
stringstream, wstringstream.
* include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
wifstream, ofstream, wofstream, fstream, wfstream.
* src/misc-inst.cc: Correct comments.
Add iomanip instantiations for wide streams.
* include/std/std_iomanip.h: Same.
* include/bits/locale_facets.tcc: Same.
* include/std/std_streambuf.h: Correct
_GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
* include/std/std_sstream.h: Same.
* include/std/std_ostream.h: Same.
* include/std/std_istream.h: Same.
* include/std/std_fstream.h: Same.
* include/std/std_streambuf.h: Add definitions for private copy
ctor and assignment operator.
* include/std/std_istream.h: Remove declared but undefined copy
ctor and assignment operator. This is taken care of in ios_base,
so adding it in the derived class as well is superfluous.
* include/std/std_ostream.h: Same.
* include/bits/basic_ios.h (basic_ios::clear): Don't inline.
* include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.
From-SVN: r49798
2002-02-16 00:19:13 +00:00
Aaron W. LaFramboise
4e2f8bcf6f
locale_facets.tcc (collate::do_hash): Fix.
...
2002-02-11 Aaron W LaFramboise <AWLaFramboise@aol.com>
* include/bits/locale_facets.tcc (collate::do_hash): Fix.
* testsuite/22_locale/collate_members_char.cc (test03): New test.
* testsuite/22_locale/collate_members_wchar_t.cc (test03): Same.
From-SVN: r49682
2002-02-11 18:56:24 +00:00
Paolo Carlini
6662d4c337
locale_facets.tcc (money_get::do_get(string)): In case money_base::symbol deal properly with multi-char sign for patterns...
...
2002-02-06 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (money_get::do_get(string)):
In case money_base::symbol deal properly with multi-char sign
for patterns {X,Y,Z,symbol} and {X,Y,symbol,none}.
* testsuite/22_locale/money_get_members_char.cc: Add test07.
* testsuite/22_locale/money_get_members_wchar_t.cc: Add test07.
From-SVN: r49543
2002-02-06 12:13:00 +00:00
Paolo Carlini
e07554eb17
locale_facets.tcc (money_get::do_get(string)): First construct a tentative returned string...
...
2002-02-05 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (money_get::do_get(string)):
First construct a tentative returned string, then, only if the
parsing succeeds, copy it into the string passed by reference.
* testsuite/22_locale/money_get_members_char.cc: Add test06.
* testsuite/22_locale/money_get_members_wchar_t.cc: Add test06.
From-SVN: r49523
2002-02-05 11:35:48 +00:00
Paolo Carlini
53804e7c80
locale_facets.tcc (money_get::do_get(string)): Deal correctly with !(__io.flags() & ios_base::showbase) for case...
...
2002-02-04 Paolo Carlini <pcarlini@unitus.it>
libstdc++/5579
* include/bits/locale_facets.tcc (money_get::do_get(string)):
Deal correctly with !(__io.flags() & ios_base::showbase)
for case money_base::symbol.
* testsuite/22_locale/money_get_members_char.cc: Add test05.
* testsuite/22_locale/money_get_members_wchar_t.cc: Add test05.
From-SVN: r49489
2002-02-04 19:51:32 +00:00
Benjamin Kosnik
aac0eb5d46
[multiple changes]
...
2002-01-23 Matt Kraai <kraai@alumni.cmu.edu>
* include/bits/locale_facets.tcc: Remove old comments.
2002-01-23 Andreas Tobler <toa@pop.agri.ch>
* include/bits/locale_facets.tcc (__convert_to_v): Change template
parameter to _Tv.
(__convert_from_v): Same.
From-SVN: r49156
2002-01-23 23:35:18 +00:00
Benjamin Kosnik
5b1a76105b
locale_facets.h (num_get::_M_extract_int): Change prototype.
...
2002-01-23 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h (num_get::_M_extract_int): Change
prototype.
* include/bits/locale_facets.tcc (num_get::_M_extract_int): Remove
__max_digits checks, adjust arguments.
(num_get::do_get(*)): Changeup.
From-SVN: r49154
2002-01-23 20:38:59 +00:00
Benjamin Kosnik
4b9aaf6379
Audit for LANG independence.
...
2002-01-22 Benjamin Kosnik <bkoz@redhat.com>
Audit for LANG independence.
* include/bits/localefwd.h: Tweaks.
* include/bits/locale_facets.tcc (money_get::do_get(long double)):
Use __convert_to_v.
(time_get::do_get_year): Same.
(__convert_from_v): Add.
(num_put::_M_convert_float): Use.
(num_put::_M_convert_int): Same.
(money_put::do_put): Same.
* src/locale-inst.cc: Add instantiations for __convert_from_v.
* config/locale/time_members_gnu.cc: Cleanup setlocale usage.
* config/locale/time_members_generic.cc:
* config/locale/messages_members_gnu.cc: Same.
* config/locale/messages_members_gnu.h: Same.
* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
* testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
* testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
* testsuite/22_locale/collate_members_char.cc (test02): New.
* testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
* testsuite/22_locale/ctype_members_char.cc (test03): New.
* testsuite/22_locale/messages_members_char.cc (test02): New.
* testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
* testsuite/22_locale/moneypunct_members_char.cc (test02): New.
* testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
* testsuite/22_locale/money_get_members_char.cc (test04): New.
* testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
* testsuite/22_locale/money_put_members_char.cc (test04): New.
* testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
* testsuite/22_locale/numpunct_members_char.cc (test02): New.
* testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
* testsuite/22_locale/time_put_members_char.cc (test03): New.
* testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
* testsuite/22_locale/time_get_members_char.cc (test07): New.
* testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
* testsuite/22_locale/num_get_members_char.cc (test03): New.
* testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
* testsuite/22_locale/num_put_members_char.cc (test03): New.
* testsuite/22_locale/time_get_members_char.cc: Fixups for global
locale issues.
* testsuite/22_locale/time_get_members_char.cc: Same.
2002-01-22 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/5280
* include/bits/localefwd.h: Tweak comments.
* include/bits/locale_facets.h (__convert_to_v): Add.
* include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
(num_get::do_get(float)): Same.
(num_get::do_get(long double)): Same.
(num_get::do_get(bool)): Same.
(num_get::do_get(long)): Same.
(num_get::do_get(long long)): Same.
(num_get::do_get(unsigned int)): Same.
(num_get::do_get(unsigned short)): Same.
(num_get::do_get(unsigned long)): Same.
(num_get::do_get(unsigned long long)): Same.
* config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
* config/locale/c_locale_generic.cc: Same.
From-SVN: r49108
2002-01-22 23:09:04 +00:00
Benjamin Kosnik
bed9a20d55
locale_facets.tcc (num_put::do_put(bool): Fix.
...
2002-01-15 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc (num_put::do_put(bool): Fix.
(num_put::do_put(void*)): Fix.
* testsuite/22_locale/num_put_members_char.cc (test02): Add.
* testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add.
* testsuite/22_locale/num_get_members_char.cc (test02): Add
long double, void, bool types.
* testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add.
From-SVN: r48892
2002-01-16 00:51:45 +00:00
Benjamin Kosnik
8f88da406b
locale_facets.tcc (time_put::put): Correct output iterator positions.
...
2002-01-14 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc (time_put::put): Correct output
iterator positions.
* testsuite/22_locale/time_put_members_char.cc (test02): Add.
* testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add.
* testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add.
* testsuite/22_locale/time_get_members_char.cc (test06): Add.
From-SVN: r48861
2002-01-15 04:23:46 +00:00
Benjamin Kosnik
ae72572be9
locale_facets.tcc (money_put::do_put(string): Correct output iterator value.
...
2002-01-12 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc (money_put::do_put(string):
Correct output iterator value.
* testsuite/22_locale/money_put_members_char.cc (test03): Add.
* testsuite/22_locale/money_put_members_wchar_t.cc: Same.
From-SVN: r48809
2002-01-13 04:27:18 +00:00
Benjamin Kosnik
87a9c33cb1
locale_facets.tcc (money_get::do_get(string)): Check for zero-length negative sign before adding it to output string.
...
2002-01-11 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc (money_get::do_get(string)):
Check for zero-length negative sign before adding it to output
string.
(money_get::do_get(long double)): Return beg.
* testsuite/22_locale/money_get_members_char.cc (test02): Add
iterator checks.
* testsuite/22_locale/money_get_members_wchar_t.cc: Same.
From-SVN: r48777
2002-01-11 20:12:02 +00:00
David Seymour
631ba05e3d
locale_facets.h (num_get<>): Return advanced iterator for _M_extract_float and _M_extract_int
...
2002-01-10 David Seymour <seymour_dj@yahoo.com>
* include/bits/locale_facets.h (num_get<>): Return advanced iterator
for _M_extract_float and _M_extract_int
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float)
(num_get<>::_M_extract_int): Likewise, all callers changed
* testsuite/22_locale/num_get_members_char.cc: Testcase
From-SVN: r48764
2002-01-11 05:07:22 +00:00
Benjamin Kosnik
54c1bf7801
Makefile.am (std_headers): Remove cXXX from list.
...
2002-01-04 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (std_headers): Remove cXXX from list.
(c_base_srcdir): No bits subdirectory.
(c_base_builddir): Same.
(c_base_headers): Adjust names, add ciso646.
(bits_headers): Remove std_xxx.h headers.
* include/Makefile.in: Regenerate.
* include/ext/iterator: Adjust includes.
* include/ext/ropeimpl.h: Same.
* include/ext/stl_hash_fun.h: Same.
* include/ext/algorithm: Same.
* include/backward/bvector.h: Adjust includes.
* include/backward/vector.h: Same.
* include/backward/strstream: Same.
* include/backward/streambuf.h: Same.
* include/backward/stack.h: Same.
* include/backward/set.h: Same.
* include/backward/queue.h: Same.
* include/backward/multiset.h: Same.
* include/backward/multimap.h: Same.
* include/backward/map.h: Same.
* include/backward/list.h: Same.
* include/backward/iterator.h: Same.
* include/backward/iostream.h: Same.
* include/backward/iomanip.h: Same.
* include/backward/fstream.h: Same.
* include/backward/deque.h: Same.
* include/backward/complex.h: Same.
* include/bits/std_algorithm.h: Move to...
* include/std/algorithm: ...here.
* include/bits/std_iosfwd.h, std_locale.h, std_stack.h,
std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h,
std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h,
std_deque.h, std_istream.h, std_numeric.h, std_string.h,
std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h,
std_queue.h, std_valarray.h, std_functional.h, std_limits.h,
std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h:
Same.
* include/c_std/bits/std_cassert.h: Move to...
* include/c_std/cassert: Here.
* include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h,
std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
std_cwctype.h: Same.
* include/c_std/cmath: Adjust cmath.tcc include.
* include/c_std/cstdlib: Adjust includes.
* include/c_std/cwchar: Same.
* include/c_std/ctime: Same.
* include/c_std/cstring: Same.
* include/c_std/cstdio: Same.
* include/c_std/bits: Remove directory.
* include/c/bits/std_cassert.h: Move to...
* include/c/cassert: Here.
* include/c/std_cctype.h, std_cerrno.h, std_cfloat.h,
std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
std_cwctype.h: Same.
* include/c/bits: Remove directory.
* include/std/cwctype: Remove.
* include/std/cwchar: Remove.
* include/std/ctime: Remove.
* include/std/cstring: Remove.
* include/std/cstdlib: Remove.
* include/std/cstdio: Remove.
* include/std/cstddef: Remove.
* include/std/cstdarg: Remove.
* include/std/csignal: Remove.
* include/std/csetjmp: Remove.
* include/std/cmath: Remove.
* include/std/clocale: Remove.
* include/std/climits: Remove.
* include/std/ciso646: Remove.
* include/std/cfloat: Remove.
* include/std/cerrno: Remove.
* include/std/cctype: Remove.
* include/std/cassert: Remove.
* include/bits/fpos.h: Adjust includes, removing <bits/std_xxx.h>
files and subsituting <.xxx>
* include/bits/valarray_array.h: Same.
* include/bits/stl_uninitialized.h: Same.
* include/bits/stl_alloc.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/sstream.tcc: Same.
* include/bits/pthread_allocimpl.h: Same.
* include/bits/ostream.tcc: Same.
* include/bits/localefwd.h: Same.
* include/bits/locale_facets.tcc: Same.
* include/bits/locale_facets.h: Same.
* include/bits/istream.tcc: Same.
* include/bits/char_traits.h: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/basic_file.h: Same.
* include/std/bitset: Same.
* include/std/complex: Same.
* include/std/fstream: Same.
* include/std/functional: Same.
* include/std/ios: Same.
* include/std/iostream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/std/streambuf: Same.
* include/std/string: Same.
* include/std/iterator: Same.
* include/std/valarray: Same.
* src/ios.cc: Adjust includes.
* src/valarray-inst.cc: Same.
* src/string-inst.cc: Same.
* src/stl-inst.cc: Same.
* src/stdexcept.cc: Same.
* src/misc-inst.cc: Same.
* src/localename.cc: Same.
* src/locale-inst.cc: Same.
* src/locale.cc: Same.
* src/limits.cc: Same.
* src/concept-inst.cc: Same.
* src/complex_io.cc: Same.
* src/codecvt.cc: Same.
* src/bitset.cc: Same.
* src/cmath.cc: Same.
From-SVN: r48544
2002-01-04 21:27:36 +00:00
Paolo Carlini
b206658a5f
locale_facets.tcc (collate::do_transform): Adjust implicit typename.
...
2001-12-27 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (collate::do_transform):
Adjust implicit typename.
* config/locale/messages_members_generic.h (messages::open,
messages::do_open, messages::do_get): Adjust implicit typename.
* config/locale/messages_members_gnu.h (messages::open,
messages::do_open, messages::do_get): Adjust Implicit typename.
* config/locale/messages_members_ieee_1003.1-200x.h (messages::open,
messages::do_open, messages::do_get): Adjust implicit typename.
From-SVN: r48327
2001-12-27 12:13:23 +00:00
Philip Martin
cb93dfb4a0
Ross Smith <r-smith@ihug.co.nz> Paolo Carlini <pcarlini@unitus.it>
...
2001-12-12 Philip Martin <philip@codematters.co.uk>
Ross Smith <r-smith@ihug.co.nz>
Paolo Carlini <pcarlini@unitus.it>
libstdc++/5045
* include/bits/std_limits.h (defines, numeric_limits<bool>::digits10):
Fix digits10 values for integral types.
* include/bits/locale_facets.tcc (num_get::do_get for integral types):
Tweak _M_extract_int call.
* testsuite/27_io/istream_extractor_arith.cc (test13, test12_aux):
Tweak overflowing number of digits.
* testsuite/18_support/numeric_limits.cc (test03): New testcase.
Co-Authored-By: Paolo Carlini <pcarlini@unitus.it>
Co-Authored-By: Ross Smith <r-smith@ihug.co.nz>
From-SVN: r47947
2001-12-12 20:23:30 +00:00
Benjamin Kosnik
bf3b866e31
ctype_inline.h: Remove spaces.
...
2001-12-11 Benjamin Kosnik <bkoz@redhat.com>
* config/os/generic/bits/ctype_inline.h: Remove spaces.
* config/os/gnu-linux/bits/ctype_noninline.h: Same.
* include/bits/locale_facets.h (__num_base): Move double data
members to first in class.
* include/bits/locale_facets.tcc: Re-arrange, tweak.
* src/locale.cc: Clean.
*include/bits/stl_vector.h: Space typedefs.
From-SVN: r47918
2001-12-12 03:22:25 +00:00
Jason Merrill
6fe4816fdb
locale_facets.tcc (_M_extract_int): Avoid uninitialized warning.
...
* include/bits/locale_facets.tcc (_M_extract_int): Avoid
uninitialized warning.
From-SVN: r47877
2001-12-11 10:48:11 -05:00
Benjamin Kosnik
2a74463013
locale_facets.h (__num_base::_S_scale_hex): Add.
...
2001-12-09 Benjamin Kosnik <bkoz@redhat.com>
Philip Martin <pmartin@uklinux.net>
* include/bits/locale_facets.h (__num_base::_S_scale_hex): Add.
(__num_base::_S_scale_oct): Add.
* src/locale.cc: Add definitions.
* testsuite/27_io/istream_extractor_arith.cc (main): Call test13.
* testsuite/testsuite_hooks.h: Remove duplicate VERIFY define.
Co-Authored-By: Philip Martin <pmartin@uklinux.net>
From-SVN: r47837
2001-12-10 08:41:03 +00:00
Paolo Carlini
46d360629c
locale_facets.tcc (num_put::_M_convert_float): Extend comment, reduce __cs_size for non-fixed outputs.
...
2001-12-07 Paolo Carlini <pcarlini@unitus.it>
* include/bits/locale_facets.tcc (num_put::_M_convert_float):
Extend comment, reduce __cs_size for non-fixed outputs.
From-SVN: r47767
2001-12-07 19:00:07 +00:00
Benjamin Kosnik
823b4f7daa
[multiple changes]
...
2001-12-06 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/3720
* include/bits/locale_facets.tcc (num_put): Clean.
(num_get::_M_extract_float): Change argument to string.
(num_get::do_get(float)): Fixup.
(num_get::do_get(double)): Same.
(num_get::do_get(long double)): Same.
(num_get::_M_extract_int): Add maximum length parameter, __max.
(num_get::_M_extract_float): Correct zeros, use string.
* include/bits/locale_facets.h (num_get::_M_extract_float): Change
declaration here.
* src/locale.cc (__num_base::_S_atoms): Remove x, X.
* testsuite/27_io/istream_extractor_arith.cc (test13): Add.
2001-12-06 Philip Martin <pmartin@uklinux.net>
* testsuite/27_io/istream_extractor_arith.cc (test12): Add
tests for excess input digits.
From-SVN: r47743
2001-12-07 02:58:36 +00:00
Benjamin Kosnik
0228de0c4f
[multiple changes]
...
2001-12-05 Benjamin Kosnik <bkoz@redhat.com>
DR/282
* include/bits/locale_facets.tcc (num_put::_M_widen_float): Add
grouping to floating point types.
* testsuite/27_io/ostream_inserter_arith.cc (test02): Add test.
2001-12-04 Paolo Carlini <pcarlini@unitus.it>
libstdc++/4402
* testsuite/27_io/ostream_inserter_arith.cc (test02): add testcase
from the PR.
* include/bits/locale_facets.tcc (num_put::_M_convert_float):
Deal properly with long ios_base::fixed floats.
(num_put::_M_widen_float): use
__len in __builtin_alloca call.
From-SVN: r47696
2001-12-05 22:07:36 +00:00
Paolo Carlini
b334004616
locale_facets.tcc (__pad): Add bool parameter to correctly pad internal-adjusted const char*-type objects.
...
2001-11-29 Paolo Carlini <pcarlini@unitus.it>
libstdc++/3655
* include/bits/locale_facets.tcc (__pad): Add bool parameter to
correctly pad internal-adjusted const char*-type objects.
* include/bits/locale_facts.tcc (num_put::_M_insert): Update call.
* include/bits/ostream.tcc (operator<<(_CharT , char, const
_CharT*, const char*, const basic_string&): Update calls.
* src/locale-inst.tcc: Update declarations.
* testsuite/27_io/ostream_inserter_arith.cc (test04): Add test.
From-SVN: r47459
2001-11-29 22:31:02 +00:00
Benjamin Kosnik
004249997b
locale_facets.tcc (num_get::do_get(long double)): Fix __traits_type typo.
...
2001-11-29 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc (num_get::do_get(long double)):
Fix __traits_type typo.
From-SVN: r47449
2001-11-29 20:14:38 +00:00
Paolo Carlini
5a4c85886a
locale_facets.tcc (__pad): correctly output hex numbers internally aligned.
...
2001-11-28 Paolo Carlini <pcarlini@unitus.it>
libstdc++/3655
* include/bits/locale_facets.tcc (__pad): correctly output hex
numbers internally aligned.
* testsuite/27_io/ostream_inserter_arith.cc: Add testcase.
From-SVN: r47433
2001-11-29 00:27:54 +00:00
Benjamin Kosnik
5fd0af8754
locale_facets.tcc: Formatting tweaks.
...
2001-11-27 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc: Formatting tweaks.
* testsuite/23_containers/map_operators.cc: Don't xfail.
* testsuite/23_containers/set_operators.cc: Same.
From-SVN: r47400
2001-11-28 06:35:00 +00:00