Benjamin Kosnik
2fd819efe5
re PR libstdc++/6549 (std::getline(std::cin,s) work wrong at FreeBSD 4.5)
...
2002-05-03 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/6549.
* include/bits/fstream.tcc (filebuf::_M_underflow_common): Revert.
* testsuite/27_io/narrow_stream_objects.cc (test07): Add.
From-SVN: r53107
2002-05-03 18:22:58 +00:00
Benjamin Kosnik
5cdd50a591
stdio_filebuf.h: New file.
...
2002-04-30 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/stdio_filebuf.h: New file.
* include/ext/enc_filebuf.h: New file.
* config/io/basic_file_stdio.h (__basic_file::sys_open): Add fd ctor.
* config/io/basic_file_stdio.cc: Same.
* include/bits/fstream.tcc (filebuf::_M_allocate_internal_buffer):
Remove _M_unbuf hacks.
(filebuf::_M_destroy_internal_buffer): Same.
(filebuf::filebuf(cfile, openmode, int_type): Remove definition.
(filebuf::fd): Remove.
* include/std/std_fstream.h (filebuf::_M_unbuf): Remove.
(filebuf::filebuf(__c_file*, openmode, int_type)): Remove.
(filebuf::fd): Remove.
* src/ios.cc (ios_base::_S_ios_create): Change to use specialized
filebufs.
(ios_base::_S_ios_destroy): Same.
* src/misc-inst.cc (file_filebuf<char>): Add instantiation.
* include/Makefile.am (ext_headers): Add ext_filebuf.h,
stdio_filebuf.h. * include/Makefile.in: Regenerate.
From-SVN: r52961
2002-04-30 19:04:43 +00:00
Benjamin Kosnik
d02475fdae
re PR libstdc++/5280 (Problems with named locales and iostreams (gnulocale))
...
2002-04-28 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/5280
* config/io/basic_file_stdio.h (__basic_file::sys_getc): Return int.
(__basic_file::sys_ungetc): Take int.
* config/io/basic_file_stdio.cc (__basic_file::sys_ungetc): Same.
* include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
Use sys_getc for unbuffered input.
* testsuite/27_io/narrow_stream_objects.cc (test06): New.
* src/ios.cc (_M_grow_words): Adjust error checking.
* testsuite/27_io/ios_base_storage.cc: Same.
From-SVN: r52879
2002-04-29 07:00:50 +00:00
Loren J. Rittle
9385d9cb0d
std_fstream.h (basic_filebuf::sync): Hoist unconditional flush on lower-layer handle to here...
...
* include/std/std_fstream.h (basic_filebuf::sync): Hoist
unconditional flush on lower-layer handle to here...
* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow):
...from here. Optimize remaining _M_file.sync() call pattern.
* testsuite/27_io/narrow_stream_objects.cc (test04): New test.
(test05): Likewise.
From-SVN: r52699
2002-04-24 00:33:28 +00:00
Jason Merrill
736020b4a7
fstream.tcc (basic_filebuf::seekoff): Fix for output-only filebufs.
...
* include/bits/fstream.tcc (basic_filebuf::seekoff): Fix for
output-only filebufs.
* include/std/std_fstream.h (basic_filebuf::_M_set_indeterminate):
Likewise.
(basic_filebuf::_M_set_determinate): Likewise.
From-SVN: r52685
2002-04-23 17:56:10 -04:00
Jason Merrill
74c263af80
re PR libstdc++/6414 (g++ 3.1 tellg() regression within last week)
...
PR libstdc++/6414
* include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
value properly in the trivial case.
* testsuite/27_io/istream_seeks.cc (test04): Make sure that
tellg() returns the right value after a read.
From-SVN: r52679
2002-04-23 17:01:22 -04:00
Jason Merrill
5066927d9e
re PR libstdc++/4150 (catastrophic performance decrease in C++ code)
...
PR libstdc++/4150
* include/std/std_streambuf.h (basic_streambuf::_M_set_indeterminate):
Move to filebuf.
(basic_streambuf::_M_set_determinate): Likewise.
(basic_streambuf::_M_is_indeterminate): Likewise.
* include/bits/std_fstream.h (basic_filebuf::_M_filepos): New
non-static data member.
(basic_filebuf::_M_underflow_common): New non-static member function.
(basic_filebuf::_M_underflow, _M_uflow): Call it.
(basic_filebuf::sync): Avoid useless seeking.
(basic_filebuf::_M_set_indeterminate): Move here from streambuf.
Set _M_filepos.
(basic_filebuf::_M_set_determinate): Likewise.
(basic_filebuf::_M_is_indeterminate): Likewise.
* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow): Seek
back to _M_out_beg if necessary.
(basic_filebuf::seekoff): Likewise.
(basic_filebuf::_M_underflow_common): Generalization of old
underflow(). Don't seek back to _M_in_beg.
* src/ios.cc: Lose _GLIBCPP_AVOID_FSEEK stuff.
* config/os/solaris/solaris2.?/bits/os_defines.h: Likewise.
* config/os/bsd/freebsd/bits/os_defines.h: Likewise.
* config/os/mingw32/bits/os_defines.h: Likewise.
* testsuite/27_io/filebuf_virtuals.cc (test05): Don't overspecify
ungetc test.
From-SVN: r52634
2002-04-22 16:28:05 -04:00
Benjamin Kosnik
b2e4f4fda7
istream.tcc (istream::read): Fix.
...
2002-04-22 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/istream.tcc (istream::read): Fix.
* testsuite/27_io/istream_unformatted.cc (main): Add.
From-SVN: r52628
2002-04-22 19:10:02 +00:00
Benjamin Kosnik
9a4b4cfc1a
re PR libstdc++/6360 (Wrong workaround in char_traits.h - ignore stops on \0xff)
...
2002-04-20 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/6360
* include/bits/istream.tcc (istream::ignore): Streamline, use
delimiter as is.
* include/bits/streambuf.tcc: Use this->gptr.
* testsuite/27_io/istream_unformatted.cc (test08): Add test.
From-SVN: r52563
2002-04-21 04:15:29 +00:00
Benjamin Kosnik
36ce7daa04
localefwd.h (locale: 🆔 :_M_id): Do this correctly, as type safety is important, especially on solaris.
...
2002-04-18 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/localefwd.h (locale:🆔 :_M_id): Do this correctly,
as type safety is important, especially on solaris.
* include/bits/istream.tcc (istream::read): Clean.
(istream::readsome): Same.
* locale.cc: Wrap lines.
* testsuite/21_strings/inserters_extractors.cc: Tweaks.
* testsuite/27_io/instantiations.cc (test): Add bool variable...
* testsuite/21_strings/capacity.cc: Clean.
From-SVN: r52501
2002-04-18 23:47:50 +00:00
Benjamin Kosnik
cf76d875db
filebuf_virtuals.cc: Add _S_pback_size instantiation.
...
2002-04-17 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/filebuf_virtuals.cc: Add _S_pback_size instantiation.
From-SVN: r52436
2002-04-17 17:35:00 +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
b988dfc58f
fstream.tcc (filebuf::seekpos): Fix.
...
2002-04-08 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/5180
* include/bits/fstream.tcc (filebuf::seekpos): Fix.
* include/std/std_fstream.h: Clean.
* include/bits/ostream.tcc: Remove extraneous variables.
* include/bits/sstream.tcc (stringbuf::seekoff): Be strict about
open modes and which modes.
(stringbuf::seekpos): Same.
* testsuite/27_io/stringbuf_virtuals.cc: New tests.
From-SVN: r52057
2002-04-09 06:14:32 +00:00
Benjamin Kosnik
a9bb75a7e0
As per DR 184, libstdc++/3139
...
2002-04-03 Benjamin Kosnik <bkoz@redhat.com>
As per DR 184, libstdc++/3139
* include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
(numeric_limits<bool>::is_iec559): False.
(numeric_limits<bool>::is_modulo): False.
* testsuite/27_io/ios_init.cc: Add instantiations.
From-SVN: r51838
2002-04-04 05:32:59 +00:00
Benjamin Kosnik
40e5b28399
ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
...
2002-04-02 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/5268
* src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
* testsuite/27_io/ios_init.cc (tests04): Add test.
libstdc++/3983
* include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
(basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
* include/bits/basic_ios.tcc: Same. Remove outdated comments.
* include/bits/istream.tcc: Use _M_fctype, make consistent with
ostream.
* testsuite/27_io/ios_init.cc (tests03): Add test.
From-SVN: r51777
2002-04-03 02:32:52 +00:00
Benjamin Kosnik
663653eb3a
basic_ios.h (basic_ios::_M_exception): Move.
...
2002-04-01 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/3129
* include/bits/basic_ios.h (basic_ios::_M_exception): Move.
(basic_ios::_M_streambuf_state): Move.
* include/bits/ios_base (ios_base): To here.
* include/bits/ios_base.h (ios_base::_S_local_words): To
_S_local_word_size.
(ios_base::_M_word_array): To _M_local_word.
(ios_base::_M_words_limit): To _M_word_size.
(ios_base::_M_words): To _M_word.
Comment.
* include/bits/basic_ios.tcc: Adjust.
* src/ios.cc (ios_base::_M_grow_words): Tweak.
* testsuite/27_io/ios_base_storage.cc: Add tests.
libstdc++/5207
Kenny Simpson <theonetruekenny@yahoo.com>
* include/bits/ios_base.h: Fix.
Richard Henderson <rth@redhat.com>
* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
last change.
* include/bits/basic_string.h: Tweak formatting.
From-SVN: r51695
2002-04-01 18:39:37 +00:00
Benjamin Kosnik
a3ebd14d24
ostream.tcc (ostream::operator<<(_CharT)): Always allocate at least a byte.
...
2002-03-27 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Always
allocate at least a byte.
* testsuite/18_support/numeric_limits.cc (test_extrema): Make
debugger-friendly.
* testsuite/27_io/streambuf.cc (test07): Fix.
(test06): Enable.
From-SVN: r51494
2002-03-28 03:15:08 +00:00
Phil Edwards
72c9b0629d
capacity.cc: Only explicitly instantiate on platforms with no weak support.
...
2002-03-11 Phil Edwards <pme@gcc.gnu.org>
* testsuite/21_strings/capacity.cc: Only explicitly instantiate on
platforms with no weak support.
* testsuite/27_io/ios_init.cc: Likewise.
From-SVN: r50597
2002-03-11 21:08:06 +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
Phil Edwards
798355a229
std_sstream.h: Remove trailing spaces.
...
2002-03-03 Phil Edwards <pme@gcc.gnu.org>
* include/std/std_sstream.h: Remove trailing spaces.
(basic_stringbuf::_M_stringbuf_init): Also check for ios_base::app.
* testsuite/27_io/stringbuf.cc (test05, test06): New tests.
From-SVN: r50258
2002-03-03 17:48:42 +00:00
Paolo Carlini
658499e7b4
num_get_members_char.cc (test04): Use a named locale expecting grouping (de_DE).
...
2002-03-02 Paolo Carlini <pcarlini@unitus.it>
* testsuite/22_locale/num_get_members_char.cc (test04):
Use a named locale expecting grouping (de_DE).
* testsuite/22_locale/num_get_members_wchar_t.cc (test04):
Ditto.
* testsuite/27_io/ios_manip_basefield.cc (test01):
Extend coverage, uniform treatment of hexs and octs.
From-SVN: r50234
2002-03-02 21:32:56 +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
bded68b108
ios_manip_basefield.cc (test01): Fix for 64 bit machines.
...
2002-02-27 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/ios_manip_basefield.cc (test01):
Fix for 64 bit machines.
From-SVN: r50111
2002-02-27 19:54:32 +00:00
Benjamin Kosnik
ac39fabb8b
basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
...
2002-02-26 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
Adjust comment.
* include/bits/basic_ios.h (basic_ios::_M_fill): Make mutable.
(basic_ios::_M_fill_init): New.
(basic_ios::fill()): Deal with _M_fill lazily.
Adjust comment.
* testsuite/27_io/ios_init.cc (test02): Adjust testcase.
From-SVN: r50076
2002-02-27 01:01:31 +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
Benjamin Kosnik
1bc59af523
ios.cc (ios_base::~ios_base): Tweak.
...
2002-02-25 Benjamin Kosnik <bkoz@redhat.com>
* src/ios.cc (ios_base::~ios_base): Tweak.
(ios_base::_M_call_callbacks): Deal with null __p.
(ios_base::ios_base): Set _M_callbacks.
* include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
* testsuite/27_io/ios_init.cc (test02): Fix.
* mkcheck.in (static_fail): Failed links go to output file.
From-SVN: r50032
2002-02-26 04:55:48 +00:00
Benjamin Kosnik
04fc13943f
money_put_members_char.cc: Fix.
...
2002-02-20 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/money_put_members_char.cc: Fix.
* testsuite/22_locale/money_put_members_wchar_t.cc: Fix.
* testsuite/27_io/standard_manipulators.cc: New file.
* testsuite/27_io/ios_manip_basefield.cc: Check results, now failing.
* testsuite/27_io/ios_manip_fmtflags.cc: Use locale::classic().
From-SVN: r49910
2002-02-20 21:06:42 +00:00
Benjamin Kosnik
0d223e3a4e
std_iomanip.h: Inline, tweaks.
...
2002-02-19 Benjamin Kosnik <bkoz@redhat.com>
* include/std/std_iomanip.h: Inline, tweaks.
* config/linker-map.gnu: Remove hacks.
* testsuite/21_strings/capacity.cc: Add explicit instantiations.
* testsuite/27_io/ios_init.cc: Same.
* testsuite/22_locale/money_get_members_char.cc (test07): Fix.
* testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same.
From-SVN: r49884
2002-02-20 00:58:17 +00:00
Paolo Carlini
866c9e660e
ostream_manip.cc: Enable test02.
...
2002-02-01 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/ostream_manip.cc: Enable test02.
From-SVN: r49440
2002-02-02 13:13:00 +00:00
Richard Henderson
2a4a2f1da2
ostream_inserter_arith.cc (test03_check): Break out from test03 and templatize.
...
* testsuite/27_io/ostream_inserter_arith.cc (test03_check): Break
out from test03 and templatize.
(test03): Use it.
From-SVN: r49348
2002-01-30 16:03:31 -08:00
Paolo Carlini
a852d50fb4
ostream_inserter_arith.cc (test03): Better fix for 32/64 bit architectures...
...
2002-01-30 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/ostream_inserter_arith.cc (test03):
Better fix for 32/64 bit architectures, avoiding the
implicit assumption that CHAR_BIT == 8.
From-SVN: r49342
2002-01-30 20:45:18 +00:00
Paolo Carlini
11e174221b
filebuf_members.cc (test_05): Add test.
...
2002-01-28 Paolo Carlini <pcarlini@unitus.it>
Charles Leggett <CGLeggett@lbl.gov>
* testsuite/27_io/filebuf_members.cc (test_05): Add test.
Co-Authored-By: Charles Leggett <CGLeggett@lbl.gov>
From-SVN: r49297
2002-01-28 20:07:57 +00:00
Paolo Carlini
4debe14deb
ostream_inserter_arith.cc (test03): Fix to deal correctly with both 32 bit and 64 bit architectures
...
2002-01-28 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/ostream_inserter_arith.cc (test03):
Fix to deal correctly with both 32 bit and 64 bit architectures
From-SVN: r49295
2002-01-28 20:06:15 +00:00
Benjamin Kosnik
e67051746f
fstream.tcc (filebuf::close()): Fix close for input streams.
...
2002-01-25 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/fstream.tcc (filebuf::close()): Fix close for input
streams.
(filebuf::_M_really_overflow): Match indeterminate and sync calls.
* testsuite/27_io/filebuf.cc: Compile only.
* testsuite/27_io/filebuf_members.cc: Move tests to here.
* testsuite/27_io/filebuf_virtuals.cc: And here.
Revert sungetc, sync changes for expected values.
* testsuite/27_io/filebuf-*: Move to...
* testsuite/27_io/filebuf_virtuals-*: ...here.
* testsuite/27_io/istream.cc: Compile only, activate.
* testsuite/27_io/ostream.cc: Same.
* testsuite/27_io/iostream.cc: New.
* testsuite/27_io/iostream_members.cc: New.
From-SVN: r49236
2002-01-26 01:55:09 +00:00
Benjamin Kosnik
3a9ebf3ced
ostream_inserter_char.cc (test07): New.
...
2002-01-24 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ostream_inserter_char.cc (test07): New.
2002-01-24 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_ios.h (basic_ios::_M_check_facet): Make
const, tweak.
(basic_ios::fill(char_type)): Use fill().
* include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet.
(basic_ios::narrow): Same.
(basic_ios::_M_cache_facets): Explicitly set cached facets to zero
if they are invalid.
(basic_ios::init): Comment.
* testsuite/27_io/ios_init.cc (test02): New.
From-SVN: r49205
2002-01-25 06:36:32 +00:00
Paolo Carlini
b4ae79f745
ios_manip_basefield.cc: Enable test02.
...
2002-01-22 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/ios_manip_basefield.cc: Enable test02.
* testsuite/27_io/ostream_inserter_arith.cc: Enable test03.
* testsuite/27_io/ostream_inserter_char.cc: Enable test01.
* testsuite/27_io/ostream_inserter_other.cc: Enable test04.
From-SVN: r49116
2002-01-23 01:12:10 +00:00
Benjamin Kosnik
aefb3380dd
signbitl.c: Copyright years as list, not range.
...
2002-01-16 Benjamin Kosnik <bkoz@redhat.com>
* libmath/signbitl.c: Copyright years as list, not range.
* libmath/Makefile.am: Same.
* libmath/Makefie.in: Regenerate.
* libmath/signbit.c: Same.
* libmath/nan.c: Same.
* libmath/copysignf.c: Same.
* libmath/signbitf.c: Same.
* testsuite/22_locale/money_get_members_char.cc: Same.
* testsuite/22_locale/money_get_members_wchar_t.cc: Same.
* testsuite/22_locale/money_put_members_char.cc: Same.
* testsuite/22_locale/money_put_members_wchar_t.cc: Same.
* testsuite/22_locale/time_get_members_char.cc: Same.
* testsuite/22_locale/time_get_members_wchar_t.cc: Same.
* testsuite/22_locale/time_put_members_char.cc: Same.
* testsuite/22_locale/time_put_members_wchar_t.cc: Same.
* testsuite/21_strings/nonmember.cc: Same.
* testsuite/21_strings/compare.cc: Same.
* testsuite/27_io/stringstream.cc: Same.
* testsuite/27_io/stringbuf.cc: Same.
* testsuite/27_io/filebuf.cc: Same.
* testsuite/27_io/ios_manip_basefield.cc: Same.
* testsuite/27_io/ios_manip_fmtflags.cc: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/generic_shadow.h: Same.
* include/bits/gslice_array.h: Same.
* include/bits/gslice.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/sstream.tcc: Same.
* include/bits/streambuf_iterator.h: Same.
* include/bits/valarray_array.tcc: Same.
* include/bits/valarray_meta.h: Same.
* include/bits/valarray_array.h: Same.
* config/os/mingw32/bits/ctype_noninline.h: Same.
* config/os/mingw32/bits/ctype_base.h: Same.
* config/os/hpux/bits/ctype_noninline.h: Same.
* config/os/hpux/bits/ctype_base.h: Same.
* config/os/gnu-linux/bits/ctype_noninline.h: Same.
* config/os/gnu-linux/bits/ctype_base.h: Same.
* config/os/generic/bits/ctype_noninline.h: Same.
* config/os/generic/bits/ctype_base.h: Same.
* libsupc++/tinfo.h: Tweaks.
From-SVN: r48922
2002-01-16 19:57:39 +00:00
Benjamin Kosnik
9fbcb61abb
[multiple changes]
...
2002-01-08 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/2913
libstdc++/4879
* include/bits/fstream.tcc (filebuf::_M_really_overflow): Test
return value of _M_file->sync().
(filebuf::showmanyc): Check for is_open.
* include/std/fstream (filebuf::sync): Tweak.
* testsuite/27_io/filebuf.cc: Tweak.
2002-01-08 John Fardo <jfardo@laurelnetworks.com>
Brad Garcia <garsh@attbi.com>
* testsuite/27_io/filebuf_members.cc: Add test.
From-SVN: r48654
2002-01-08 19:57:01 +00:00
Phil Edwards
2d53d9ebe7
re PR libstdc++/3829 (missing template instantiations)
...
2001-12-27 Phil Edwards <pme@gcc.gnu.org>
PR libstdc++/3829
* src/misc-inst.cc: Many additional I/O-related instantiations.
* testsuite/27_io/instantiations.cc: New file.
From-SVN: r48324
2001-12-27 07:26:00 +00:00
Phil Edwards
e9c46bb75e
basic_file.h (__basic_file::fd): New function.
...
2001-12-17 Phil Edwards <pme@gcc.gnu.org>
* include/bits/basic_file.h (__basic_file::fd): New function.
* config/io/basic_file_stdio.h (__basic_file::fd): Define.
* include/bits/std_fstream.h (basic_filebuf::fd): New function.
* include/bits/fstream.tcc (basic_filebuf::fd): Define.
* testsuite/27_io/filebuf_members.cc (test_02): New test.
From-SVN: r48107
2001-12-17 17:08:57 +00:00
Paolo Carlini
897bb55fe3
ropeimpl.h (rope::_S_leaf_concat_char_iter, [...]): Adjust implicit typename.
...
2001-12-12 Paolo Carlini <pcarlini@unitus.it>
* include/ext/ropeimpl.h (rope::_S_leaf_concat_char_iter,
_S_destr_leaf_concat_char_iter, _S_tree_concat, _S_concat_char_iter,
_S_destr_concat_char_iter, _S_concat, _S_substring, _S_balance)
: Adjust implicit typename.
* include/ext/stl_rope.h (_Rope_iterator::operator=, rope::npos):
Adjust implicit typename.
* testsuite/27_io/streambuf.cc: Adjust implicit typename.
From-SVN: r47958
2001-12-13 00:41:03 +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
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
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
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
86ade44cb2
Numeric facets cleanup.
...
2001-11-27 Benjamin Kosnik <bkoz@redhat.com>
Numeric facets cleanup.
* include/bits/locale_facets.h (__num_base::_S_atoms): Add, remove
+ and - signs.
(__num_base::_M_zero): Add
(__num_base::_M_e): Add.
(__num_base::_M_E): Add.
* include/bits/locale_facets.tcc (num_get::_M_extract): Remove.
(num_get::_M_extract_float): New.
(num_get::_M_extract_int): New.
* src/locale.cc (num_get::_M_extract): Remove.
* include/bits/locale_facets.tcc (num_put::_M_insert_float):
Simplify, use _M_insert.
(num_put::do_put(bool)): Simplify, remove __pad.
(__pad): Remove.
(__pad_output): Change to __pad.
* include/bits/ostream.tcc: And here.
* src/locale-inst: Remove instantiations.
* include/bits/locale_facets.h: Move helper functions in to class
num_put.
(num_put::_M_insert_float): Same, for __output_integer.
(num_put::_M_insert_int): Same, for __output_float.
(num_put::_M_insert): New.
(__num_base): Add.
(__num_base::_S_format_float): Move
__build_float_format into class __num_base.
(__num_base::_S_format_int): Move __build_int_format into class
__num_base.
* include/bits/locale_facets.tcc (__group_digits): Change to
(__add_grouping): This.
* src/locale-inst.cc: And here. Tweak instantiations.
* src/misc-inst.cc: Remove instantiations.
* include/bits/ostream.tcc (__pad_char): Rename, adjust inserters
for new calling conventions, move to...
* include/bits/locale_facets.tcc (__pad_output): Here. Adjust
signature to make it useful for both ostream and num_put.
(__pad_numeric): Remove.
* src/misc-inst.cc: Remove instantiations.
* src/locale-inst.cc: Same.
* include/bits/locale_facets.h (_Numeric_get): Remove.
(_Numeric_put): Remove.
(num_get::get(short)): Remove.
(num_get::get(int)): Remove.
(num_get::do_get(short)): Remove.
(num_get::do_get(int)): Remove.
* include/bits/istream.tcc (istream::operator>>(short)): Fix as
per DR 118.
(istream::operator>>(int)): Same.
* include/bits/locale_facets.h (_Format_cache): Remove.
* include/bits/locale_facets.tcc: Same.
* src/locale.cc: Same.
* src/locale-inst.cc: Same.
* include/bits/ostream.tcc: Same.
* src/ios.cc (ios_base::imbue): Remove here as well.
* testsuite/22_locale/num_get.cc: New file.
* testsuite/22_locale/num_get_members_char.cc: New file.
* testsuite/22_locale/num_get_members_wchar_t.cc: New.
* testsuite/22_locale/numpunct_members_wchar_t.cc: New file.
* testsuite/22_locale/num_put.cc: New file.
* testsuite/22_locale/num_put_members_char.cc: New file.
* testsuite/22_locale/num_put_members_wchar_t.cc: New file.
* testsuite/27_io/ostream_inserter_arith.cc: Fix.
* testsuite/27_io/istream_extractor_arith.cc: Fix.
From-SVN: r47397
2001-11-28 04:07:11 +00:00
Phil Edwards
1b4a6975f7
Intro.3: More notes.
...
2001-11-19 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/Intro.3: More notes.
* docs/doxygen/style.css: Update to default style from Doxygen 1.2.10.
* include/bits/stl_algobase.h: Add doxygen hooks for functions.
* include/ext/hash_map: Add @file hook.
* include/ext/hash_set: Likewise.
* include/ext/rope: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/ext/slist: Likewise.
* include/ext/stl_hash_fun.h: Likewise.
* include/ext/stl_hashtable.h: Likewise.
* include/ext/stl_rope.h: Likewise.
* docs/html/17_intro/license.html: Remove "experimental" sentence.
* docs/html/19_diagnostics/howto.html: Document new verbose
terminate handler.
* testsuite/27_io/filebuf.cc: Fix comment, move tweakable parameter
to more visible (closer to description) position.
* libsupc++/eh_type.cc: Formatting tweak.
* libsupc++/exception: Likewise.
* src/vterminate.cc: Likewise.
* docs/html/17_intro/porting.html: Regenerate.
* docs/html/faq/index.txt: Regenerate.
From-SVN: r47193
2001-11-20 00:51:37 +00:00
Paolo Carlini
2dc8835ac8
ios_manip_fmtflags.cc: Fix for non-interactive output.
...
2001-11-01 Paolo Carlini <pcarlini@unitus.it>
Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_manip_fmtflags.cc: Fix for non-interactive
output.
* include/bits/locale_facets.tcc (num_put::do_put(bool)): Fix.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r46709
2001-11-02 03:48:09 +00:00