Paolo Carlini
bda243ec50
Nathan C.
...
2003-07-14 Paolo Carlini <pcarlini@unitus.it>
Nathan C. Myers <ncm-nospam@cantrip.org>
PR libstdc++/11378
* include/std/std_fstream.h (xsputn): Declare only.
* include/bits/fstream.tcc (xsputn): Define, optimize for the
always_noconv() case: when __n is sufficiently large flush
the buffer and issue a direct write, if possible combining the
two with writev in __basic_file<>::xsputn_2.
* config/io/basic_file_stdio.h (__basic_file<>::xsputn_2):
New, declare.
* config/io/basic_file_stdio.cc (__basic_file<>::xsputn_2):
Define.
* acinclude.m4 (GLIBCXX_CHECK_WRITE): New macro, checking for
the availability of writev in <sys/uio.h>.
* configure.in: Call here.
* acconfig.h: Add undef for the corresponding symbol.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.h.in: Regenerate.
* testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Tweak.
* include/std/std_fstream.h (sync): Constify a variable.
Co-Authored-By: Nathan C. Myers <ncm-nospam@cantrip.org>
From-SVN: r69341
2003-07-14 18:23:12 +00:00
Benjamin Kosnik
c573d965f9
assign_neg.cc: Fix line numbers.
...
2003-07-14 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_base/cons/assign_neg.cc: Fix line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
From-SVN: r69331
2003-07-14 14:47:03 +00:00
David Billinghurst
8b87d3fa24
4879.cc: xfail on cygwin
...
2003-07-05 David Billinghurst <David.Billinghurst@riotinto.com>
* testsuite/27_io/basic_filebuf/close/char/4879.cc: xfail on cygwin
* testsuite/27_io/basic_filebuf/close/char/9964.cc: Ditto
* testsuite/27_io/basic_filebuf/open/char/9507.cc: Ditto
* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Ditto
* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Ditto
* testsuite/27_io/objects/char/7.cc: Ditto
* testsuite/27_io/objects/char/9661-1.cc: Ditto
From-SVN: r68970
2003-07-05 12:55:09 +00:00
Benjamin Kosnik
3d7c150e3f
Move from CPP to CXX.
...
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
Move from CPP to CXX.
* include/bits/c++config: Move to GLIBCXX from GLIBCPP.
* testsuite/Makefile.am: Same.
* testsuite/Makefile.in: Regenerate.
* po/Makefile.am: Same.
* po/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Same.
* libsupc++/Makefile.in: Regenerate.
* libmath/Makefile.am: Same.
* libmath/Makefile.in: Regenerate.
* include/Makefile.am: Same.
* include/Makefile.in: Regenerate.
* src/Makefile.am: Same.
* src/Makefile.in: Regenerate.
* acconfig.h: Same.
* configure.host: Same.
* configure.in: Same.
* configure: Regenerate.
* acinclude.m4: Same.
* aclocal.m4: Same.
* src: Change all files in this directory.
* testsuite: Same.
* include: Same, standardize include guards.
* config: Same.
* libsupc++: Same.
From-SVN: r68958
2003-07-05 04:05:45 +00:00
Benjamin Kosnik
68e1f6219c
Makefile.am (target_headers): Add fpos.h
...
2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (target_headers): Add fpos.h
(bits_headers): Remove.
* include/Makefile.in: Regenerate.
* configure.in: Add FPOS_INC_SRCDIR, substitute it.
* configure: Regenerate.
* configure.host: Add fpos_include_dir.
* config/os/gnu-linux/fpos.h: New.
* config/os/generic/fpos.h: Add.
* include/bits/fpos.h: Remove.
* config/io/c_io_stdio.h: Remove fpos_t typedef.
* include/bits/fstream.tcc: Tweaks.
* include/std/std_fstream.h: Same.
* testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
* testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
* testsuite/27_io/fpos/mbstate_t/2.cc: Same.
* testsuite/27_io/fpos/mbstate_t/3.cc: Same.
* testsuite/27_io/fpos/1.cc: New.
From-SVN: r68914
2003-07-04 07:15:30 +00:00
Benjamin Kosnik
cc5112c92d
Makefile.am (target_headers): Add fpos.h
...
2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (target_headers): Add fpos.h
(bits_headers): Remove.
* include/Makefile.in: Regenerate.
* configure.in: Add FPOS_INC_SRCDIR, substitute it.
* configure: Regenerate.
* configure.host: Add fpos_include_dir.
* config/os/gnu-linux/fpos.h: New.
* config/os/generic/fpos.h: Add.
* include/bits/fpos.h: Remove.
* config/io/c_io_stdio.h: Remove fpos_t typedef.
* include/bits/fstream.tcc: Tweaks.
* include/std/std_fstream.h: Same.
* testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
* testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
* testsuite/27_io/fpos/mbstate_t/2.cc: Same.
* testsuite/27_io/fpos/mbstate_t/3.cc: Same.
* testsuite/27_io/fpos/1.cc: New.
2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
Petur Runolfsson <peturr02@ru.is>
* include/std/std_streambuf.h: Remove _M_pos.
* config/io/basic_file_stdio.h: Use seekpos instead of seekoff.
* config/io/basic_file_stdio.cc: Same, use fseek instead of lseek,
use fread/fwrite instead of read/write.
* testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Fix.
* testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Close filebufs
before reading again.
* testsuite/27_io/objects/char/6.cc: Tweak.
Co-Authored-By: Petur Runolfsson <peturr02@ru.is>
From-SVN: r68913
2003-07-04 07:14:54 +00:00
Paolo Carlini
f64f3e74b9
re PR libstdc++/11389 (Unbuffered wfilebuf fails to read single-byte UTF-8 characters.)
...
2003-07-01 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11389
* include/bits/fstream.tcc (underflow): For encoding() == 0
don't read more than __buflen chars.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: New.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: New.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: New.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: New.
From-SVN: r68780
2003-07-01 17:13:01 +00:00
Benjamin Kosnik
7d6a09934c
1-in.cc: New.
...
2003-06-30 Benjamin Kosnik <bkoz@redhat.com>
* 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
* 27_io/basic_filebuf/seekoff/char/1-io.cc: New.
* 27_io/basic_filebuf/seekoff/char/1-out.cc: New.
* 27_io/basic_filebuf/seekoff/char/2-in.cc: New.
* 27_io/basic_filebuf/seekoff/char/2-io.cc: New.
* 27_io/basic_filebuf/seekoff/char/2-out.cc: New.
* 27_io/basic_filebuf/seekoff/char/2.cc: Remove.
* 27_io/basic_filebuf/seekoff/char/3-in.cc: New.
* 27_io/basic_filebuf/seekoff/char/3-io.cc: Change.
* 27_io/basic_filebuf/seekoff/char/3-out.cc: New.
* 27_io/basic_filebuf/seekoff/char/4-io.cc: Remove.
* 27_io/basic_filebuf/seekpos/char/1-in.cc: New.
* 27_io/basic_filebuf/seekpos/char/1-io.cc: New.
* 27_io/basic_filebuf/seekpos/char/1-out.cc: New.
* 27_io/basic_filebuf/seekpos/char/2-in.cc: New.
* 27_io/basic_filebuf/seekpos/char/2-io.cc: New.
* 27_io/basic_filebuf/seekpos/char/2-out.cc: New.
* 27_io/basic_filebuf/seekpos/char/2.cc: Change.
* 27_io/basic_filebuf/seekpos/char/3-in.cc: New.
* 27_io/basic_filebuf/seekpos/char/3-io.cc: Remove.
* 27_io/basic_filebuf/seekpos/char/3-out.cc: New.
* 27_io/basic_filebuf/seekpos/char/4-io.cc: Remove.
* data/seekoff-1.tst: Remove.
* data/seekoff-1io.tst: New.
* data/seekoff-1out.tst: New.
* data/seekoff-2.tst: Remove.
* data/seekoff-2io.tst: New.
* data/seekoff-2out.tst: New.
* data/seekoff.txt
* data/seekpos-1.tst: Remove.
* data/seekpos-1io.tst: New.
* data/seekpos-1out.tst: New.
* data/seekpos-2.tst: Remove.
* data/seekpos-2io.tst: New.
* data/seekpos-2out.tst: New.
* data/seekpos.txt: New.
From-SVN: r68757
2003-07-01 03:04:43 +00:00
Paolo Carlini
cd16e04b18
std_streambuf.h (_M_mode): Move from here to filebuf and stringbuf.
...
2003-06-30 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (_M_mode): Move from here to
filebuf and stringbuf.
(~basic_streambuf()): Don't set _M_mode.
(basic_streambuf()): Don't set _M_mode.
* include/std/std_fstream.h (_M_mode): Move here, from streambuf.
(~basic_filebuf()): Clean up.
* include/bits/fstream.tcc (basic_filebuf()): Set _M_mode.
* include/std/std_sstream.h (_M_mode): Move here, from streambuf.
* testsuite/27_io/basic_streambuf/cons/char/1.cc: Don't set _M_mode.
* testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
2003-06-30 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_M_underflow): Remove.
(uflow): Remove, inherited from streambuf.
(underflow): Only declare.
* include/bits/fstream.tcc (_M_underflow): Rename to
underflow, to which is equivalent for __bump == false,
simplify.
* include/std/std_sstream.h (_M_underflow): Remove.
(uflow): Remove, inherited from streambuf.
(underflow): Only declare.
* include/bits/sstream.tcc (_M_underflow): Rename to
underflow, to which is equivalent for __bump == false,
simplify.
From-SVN: r68695
2003-06-30 11:17:23 +00:00
Paolo Carlini
165f54e074
11305-1.cc: Improve type correctness-wise.
...
2003-06-29 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc:
Improve type correctness-wise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc:
Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc:
Likewise.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc:
Likewise.
From-SVN: r68666
2003-06-29 11:12:35 +00:00
Paolo Carlini
b417ae14c8
re PR libstdc++/9875 (filebuf doesn't handle codecvt::encoding() > 1)
...
2003-06-28 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9875
* include/bits/fstream.tcc (seekoff): Fix for encoding() > 0.
(seekpos): Likewise.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
New test.
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
New test.
From-SVN: r68630
2003-06-28 07:50:29 +00:00
Paolo Carlini
3461133d72
Nathan C.
...
2003-06-27 Paolo Carlini <pcarlini@unitus.it>
Nathan C. Myers <ncm-nospam@cantrip.org>
PR libstdc++/9178
* include/bits/fstream.tcc (_M_underflow): Properly estimate
the worst-case number of external bytes for a given get area.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: New.
2003-06-27 Paolo Carlini <pcarlini@unitus.it>
Petur Runolfsson <peturr02@ru.is>
PR libstdc++/11305
* include/bits/fstream.tcc (overflow): Properly estimate the
worst-case number of external bytes for a given put area
(by using codecvt::max_length()).
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1: New.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: New.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: New.
* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: New.
Co-Authored-By: Nathan C. Myers <ncm-nospam@cantrip.org>
Co-Authored-By: Petur Runolfsson <peturr02@ru.is>
From-SVN: r68566
2003-06-27 12:33:49 +00:00
Benjamin Kosnik
215f9e283a
ios_base.h (ios_base::_M_getloc): Return reference to the imbued locale.
...
2003-06-26 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/ios_base.h (ios_base::_M_getloc): Return reference
to the imbued locale.
* include/bits/locale_facets.tcc (num_put::_M_convert_int): Use
_M_getloc.
(num_put::_M_convert_float): Use.
2003-06-26 Benjamin Kosnik <bkoz@redhat.com>
Jerry Quinn <jlquinn@optonline.net>
* config/linker-map.gnu: Add __numpunct_cache.
* config/locale/gnu/numeric_members.cc
(numpunct::_M_initialize_numpunct): Account for _M_data, fill in
all elements for "C" locale.
(numpunct::~numpunct): Delete _M_data.
* config/locale/generic/numeric_members.cc: Same.
* include/bits/basic_ios.tcc
(basic_ios::init): Remove __locale_cache bits.
(basic_ios::_M_cache_locale): Same.
* include/bits/ios_base.h: Same. Tweaks.
* include/bits/locale_classes.h: Tweaks. Reorder classes.
(__use_cache): Make friends with _Impl, locale.
(_Impl::_M_caches): Add.
(_Impl::_M_install_cache): Add.
* include/bits/locale_facets.h (__numpunct_cache): New.
(numpunct): Encapsulate data members in __numpunct_cache member,
_M_data. Adjust virtuals.
(numpunct::numpunct): New ctor for the same.
(__locale_cache_base): Remove.
(__locale_cache): Remove.
* include/bits/locale_facets.tcc (__use_cache): New function,
specializations.
(num_put::_M_convert_int, _M_convert_float, do_put): Use it.
* src/globals.cc: Add cache_vec, numpunct_cache_c, numpunct_cache_w.
* src/ios.cc (ios_base::ios_base): Remove __locale_cache.
* src/locale-inst.cc: Same. Add __numpunct_cache.
* src/locale.cc: Tweak inlines.
(__use_cache): Define specializations.
* src/localename.cc: Use global bits.
(_Impl::~Impl): Deal with __numpunct_cache destruction.
(_Impl::_Impl): Same. Pre-cache standard numpunct facets.
(_Impl::_M_init_facet): Take into account __numpunct_cache.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Update line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
Co-Authored-By: Jerry Quinn <jlquinn@optonline.net>
From-SVN: r68558
2003-06-27 07:25:38 +00:00
Paolo Carlini
2cfe4e6898
Nathan C.
...
2003-06-26 Paolo Carlini <pcarlini@unitus.it>
Nathan C. Myers <ncm-nospam@cantrip.org>
* include/bits/fstream.tcc (_M_underflow): When the actual
end of file is reached, set 'uncommitted' mode to allow a
next write without an intervening seek (see C++98 27.8.1.1,2
and C89 7.9.5.3).
* testsuite/27_io/basic_filebuf/underflow/char/2.cc: New.
Co-Authored-By: Nathan C. Myers <ncm-nospam@cantrip.org>
From-SVN: r68522
2003-06-26 09:55:24 +00:00
Paolo Carlini
71b460210a
Nathan C.
...
2003-06-24 Paolo Carlini <pcarlini@unitus.it>
Nathan C. Myers <ncm-nospam@cantrip.org>
* include/std/std_fstream.h (_M_filepos): Remove.
(_M_reading, _M_writing): New, encode the various I/O modes:
'read', 'write' and 'uncommitted'.
(sync): If there is something to flush, do it, then go to
'uncommitted' mode.
* include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
with three different cases: __off > 0 (upon underflow),
__off == 0 (upon overflow), __off == -1 (upon open, setbuf,
seekoff/pos).
(_M_underflow): Don't call overflow, set _M_reading to true
on success, tweak.
(pbackfail): Set _M_reading to true on pback creation, tweak.
(overflow): Don't seek, deal with overflow in 'uncommitted' mode,
set _M_writing to true on success, tweak.
(seekoff): Simplify, set _M_reading, _M_writing to false, call
_M_set_buffer(-1) ('uncommitted').
(open, close, setbuf): Set _M_reading, _M_writing to false and
call _M_set_buffer(-1), tweak.
(basic_filebuf): Don't set _M_buf_unified.
(_M_destroy_internal_buffer): Don't call setg and setp.
* include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
_M_writing and _M_set_buffer(-1).
* include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
_M_out_lim, _M_buf_unified): Remove.
(basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
(setp): Don't set _M_out_lim.
* testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
upon open the mode is 'uncommitted' and therefore the put area
pointers are null.
* testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
* testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
* testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
* include/bits/fstream.tcc (showmanyc): Use only the
documented derivation interface to basic_streambuf (gptr(),
setg(), etc.) to work right with user specializations.
* include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
* include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
Likewise.
* include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
xsgetn): Likewise.
Co-Authored-By: Nathan C. Myers <ncm-nospam@cantrip.org>
From-SVN: r68420
2003-06-24 13:48:11 +00:00
Paolo Carlini
8363b7738f
1-in.cc: Fix for systems with BUFSIZ != 8192.
...
2003-06-16 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Fix
for systems with BUFSIZ != 8192.
* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc:
Minor tweaks.
From-SVN: r68041
2003-06-16 21:24:40 +00:00
Paolo Carlini
0bad3b7c49
1.cc: Split and fix for missing seeks between gets and puts into...
...
2003-06-16 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Split and
fix for missing seeks between gets and puts into...
* testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: New.
From-SVN: r68021
2003-06-16 16:20:28 +00:00
Paolo Carlini
ed24293523
1.cc: Split and fix for missing seeks between gets and puts into...
...
2003-06-13 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Split and
fix for missing seeks between gets and puts into...
* testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: New.
* testsuite/27_io/basic_filebuf/seekoff/char/4-io.cc: New.
* testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Same, into...
* testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: New.
* testsuite/27_io/basic_filebuf/seekpos/char/4-io.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Fix
for missing seeks between gets and puts.
* testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Ditto.
* testsuite/data/seekoff-1.tst: New.
* testsuite/data/seekoff-2.tst: New.
* testsuite/data/seekpos-1.tst: New.
* testsuite/data/seekpos-2.tst: New.
From-SVN: r67913
2003-06-13 21:06:37 +00:00
Paolo Carlini
9fa543a540
1.cc: Remove.
...
2003-06-10 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Remove.
From-SVN: r67730
2003-06-10 19:53:44 +00:00
Paolo Carlini
9335d80ab9
fstream.tcc (overflow): According to 27.5.2.4.5, overflow() returns not_eof(eof()).
...
2003-06-10 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (overflow): According to
27.5.2.4.5, overflow() returns not_eof(eof()).
* testsuite/27_io/basic_filebuf/overflow/char/2.cc: New.
* testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Ditto.
2003-06-10 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (_M_underflow): Check overflow return
value; tweak slightly.
From-SVN: r67726
2003-06-10 19:27:12 +00:00
Paolo Carlini
f10eea7bae
fstream.tcc (_M_underflow): Do not special case the unbuffered case...
...
2003-06-09 Paolo Carlini <pcarlini@unitus.it>
* include/bits/fstream.tcc (_M_underflow): Do not special
case the unbuffered case, which really means simply a one char
get area.
(basic_filebuf): Initialize _M_buf_size.
(setbuf): Unbuffered means _M_buf_size == 1, since only
_M_buf_size - 1 == 0 chars are going to be used for the
put area and 1 for the get area.
* include/std/std_streambuf.h (_M_buf_size): Move to basic_filebuf.
(~basic_streambuf): Tweak.
(basic_streambuf): Do not initialize _M_buf_size.
* include/std/std_fstream.h (_M_buf_size): Add from basic_streambuf.
(~basic_filebuf): Tweak.
(_M_set_buffer): Tweak, considering that _M_buf_size == 1 is the
unbuffered situation (i.e., put area pointers NULL).
* include/bits/streambuf.tcc (sbumpc): Clean up.
* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: New.
From-SVN: r67686
2003-06-10 00:05:49 +00:00
Benjamin Kosnik
46c4e5d6e9
re PR libstdc++/9024 (Input fails after call to basic_filebuf<>::pubsetbuf(0, 0))
...
2003-06-05 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9024
* include/bits/fstream.tcc (_M_underflow): Fix for unbuffered.
* include/bits/stl_algobase.h: Tweak.
* include/std/std_fstream.h: Move _M_buf_size to...
* include/std/std_streambuf.h: ...here. Modify.
* include/bits/streambuf.tcc: Same.
* testsuite/testsuite_hooks.h: Tweak.
* testsuite/testsuite_io.h (constraint_filebuf): New.
* testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/2.cc: Split into...
* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sgetn/char/3.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/2.cc: Split into...
* testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Split into...
* testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: New.
* testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: New.
* testsuite/data/sgetc.txt: New.
* testsuite/data/sgetn.txt: New.
From-SVN: r67524
2003-06-06 00:19:17 +00:00
Paolo Carlini
1e64c2fc32
re PR libstdc++/11095 (C++ iostream manipulator causes segfault when called iwth negative argument)
...
2003-06-05 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/11095
* include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
Deal with width() smaller than zero.
* include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
operator<<(basic_ostream&, char), operator<<(basic_ostream&,
const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
const char*), operator<<(basic_ostream<char, _Traits>&,
const char*), operator<<(basic_ostream, const basic_string&)): Likewise.
* testsuite/27_io/basic_istream/extractors_character/char/11095-i.cc:
* testsuite/27_io/basic_ostream/inserters_character/char/11095-oa.cc:
* testsuite/27_io/basic_ostream/inserters_character/char/11095-ob.cc:
* testsuite/27_io/basic_ostream/inserters_character/char/11095-oc.cc:
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/11095-od.cc:
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/11095-oe.cc:
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/11095-of.cc:
New.
From-SVN: r67518
2003-06-05 23:25:05 +00:00
Paolo Carlini
b166bded9e
re PR libstdc++/9761 (filebuf::pbackfail discards previously put back characters)
...
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9761
* include/bits/fstream.tcc (pbackfail): If the pback buffer
is already active don't try to store in it a second char.
* testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: New.
* include/bits/fstream.tcc (pbackfail): Add unbuffered bits.
From-SVN: r67337
2003-06-02 16:46:28 +00:00
Paolo Carlini
f275a768ab
3.cc: Tweak line spacing.
...
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Tweak
line spacing.
From-SVN: r67336
2003-06-02 15:53:14 +00:00
Paolo Carlini
ccb50b8111
std_fstream.h (_M_destroy_pback): Use _M_in_beg instead of unnecessarily taking the address of _M_pback.
...
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_M_destroy_pback): Use _M_in_beg
instead of unnecessarily taking the address of _M_pback.
(xsgetn): Simplify slightly for a single char pback buffer.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (seekoff): Remove four unnecessary
variables and two 'if', clean up.
2003-06-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/sstream.tcc (seekpos): Test against _M_out_lim
not _M_out_end, since the former actually points to the string
end (vs buffer end).
* testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: New.
From-SVN: r67334
2003-06-02 15:36:24 +00:00
Benjamin Kosnik
002bd6069c
re PR libstdc++/9339 (filebuf::pubsetbuf(0, 0) doesn't turn off buffering)
...
2003-05-26 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9339
* include/std/std_fstream.h (basic_filebuf::_M_overflow): Remove.
(_M_pback): No array necessary.
* include/bits/fstream.tcc (basic_filebuf::_M_overflow): Add
unbuffered case, coalesec into ...
(basic_filebuf::overflow): ...this.
* testsuite/27_io/basic_filebuf/sputn/char/9339.cc: New.
* testsuite/27_io/basic_filebuf/sputc/char/2.cc: Unbuffered.
From-SVN: r67175
2003-05-26 14:54:42 +00:00
Paolo Carlini
d7ccc91760
std_fstream.h (_S_pback_size): Remove definition.
...
2003-05-22 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_fstream.h (_S_pback_size): Remove definition.
(_M_create_pback(), _M_destroy_pback()): Simplify for a single-char
pback buffer.
* include/bits/fstream.tcc (_S_pback_size): Remove declaration.
* testsuite/27_io/basic_filebuf/3.cc: Remove explicit instantiation
of _S_pback_size for systems with no COMDAT or weak support.
* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
* testsuite/27_io/basic_filebuf/underflow/10096.cc: Likewise.
* testsuite/27_io/basic_fstream/3.cc: Likewise.
* testsuite/27_io/basic_ifstream/3.cc: Likewise.
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Likewise.
* testsuite/27_io/basic_ofstream/3.cc: Likewise.
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Likewise.
* testsuite/27_io/basic_streambuf/3.cc: Likewise.
From-SVN: r67102
2003-05-22 22:16:41 +00:00
Paolo Carlini
69cf7a5532
4.cc: Fix typo.
...
2003-05-20 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/close/char/4.cc: Fix typo.
From-SVN: r67043
2003-05-20 23:03:28 +00:00
Paolo Carlini
80416931e3
5.cc: New file, further testing that upon filebuf::close() 27.8.1.1,3 is enforced.
...
2003-05-20 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/close/char/5.cc: New file,
further testing that upon filebuf::close() 27.8.1.1,3 is enforced.
From-SVN: r67042
2003-05-20 22:43:30 +00:00
Paolo Carlini
eab1ff73c8
4.cc: New file, testing that upon filebuf::close() 27.8.1.1,3 is enforced.
...
2003-05-19 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/close/char/4.cc: New file, testing
that upon filebuf::close() 27.8.1.1,3 is enforced.
From-SVN: r66970
2003-05-19 18:12:34 +00:00
Paolo Carlini
e3033a2240
fstream.tcc (_M_overflow): Rewrote to call _M_convert_to_external only once (_M_buf_size is now the size...
...
2003-05-15 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
* include/bits/fstream.tcc (_M_overflow): Rewrote to call
_M_convert_to_external only once (_M_buf_size is now the size of
the put area + 1 for the overflow char of a full area); call
_M_set_buffer instead of _M_set_indeterminate.
(setbuf): Don't accept a buffer smaller than 2 chars.
(_M_underflow): Refill _M_buf_size - 1 chars; call _M_set_buffer,
instead of _M_set_determinate.
(open): Call _M_set_buffer, instead of _M_set_indeterminate.
(seekoff): Likewise.
* include/ext/stdio_filebuf.h (stdio_filebuf(int,
std::ios_base::openmode, bool, size_t),
stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t):
Likewise.
* include/std/std_fstream.h (_M_set_indeterminate): Remove.
(_M_set_determinate): Rename as _M_set_buffer, _M_buf_size ->
_M_buf_size - 1.
* include/std/std_streambuf.h: Tweak _M_out_lim comment.
* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Tweak, taking
into account that, for _M_buf_size == BUFSIZ == 8192, the size of
the put area is now BUFSIZ - 1.
* testsuite/ext/stdio_filebuf_2.cc: Tweak, taking into account
that now the smallest _M_buf_size is 2 (still fails, for the same
reason, with 3.2.3)
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
From-SVN: r66848
2003-05-15 23:43:15 +00:00
Benjamin Kosnik
979c310f5e
copy_neg.cc: Remove excess errors dg marker, use dg-errors instead.
...
2003-05-13 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_base/cons/copy_neg.cc: Remove
excess errors dg marker, use dg-errors instead.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
* testsuite/20_util/auto_ptr_neg.cc: Same.
From-SVN: r66797
2003-05-14 04:30:40 +00:00
Benjamin Kosnik
0cd1de6fc9
std_fstream.h (basic_filebuf::_M_codecvt): Add cached member.
...
2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
* include/std/std_fstream.h (basic_filebuf::_M_codecvt): Add
cached member.
* include/bits/fstream.tcc (basic_filebuf::basic_filebuf):
Initialize _M_codecvt.
(basic_filebuf::imbue): Same.
(basic_filebuf::showmanyc): Use it.
(basic_filebuf::underflow): Use it.
(basic_filebuf::_M_convert_to_external): Use it.
(basic_filebuf::seekoff): Use it.
(basic_filebuf::imbue): Use it, tweaks.
* include/bits/localefwd.h (__check_facet): New.
* include/bits/locale_classes.h: Tweaks.
* include/bits/locale_facets.tcc: Tweaks.
* include/bits/basic_ios.h (basic_ios::_M_check_facet): Remove.
_M_fctype to _M_ctype, _M_fnumput to _M_num_put, _M_fnumget to
_M_num_get. Change _M_check_facet to __check_facet. Tweaks.
* include/bits/basic_ios.tcc: Same.
* include/bits/istream.tcc: Same.
* include/bits/ostream.tcc: Same.
* include/std/std_streambuf.h: Same.
* testsuite/27_io/basic_filebuf/imbue/char/2.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/3.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/1.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: New.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: New.
From-SVN: r66781
2003-05-13 20:13:15 +00:00
Paolo Carlini
1f61755cdb
1.cc: Remove unnecessary includes and unused string literals.
...
2003-05-12 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Remove
unnecessary includes and unused string literals.
* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
From-SVN: r66735
2003-05-12 21:01:39 +00:00
Benjamin Kosnik
a72a4f3d37
10096.cc: Add weak bits.
...
2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/basic_filebuf/underflow/10096.cc: Add weak bits.
From-SVN: r66724
2003-05-12 16:10:55 +00:00
Benjamin Kosnik
51ff814940
[multiple changes]
...
2003-05-10 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9027
PR libstdc++/9520
PR libstdc++/10096
* include/bits/fstream.tcc (basic_file::_M_underflow): Add generic
implementation, based on old wchar_t specialization, add support
for codecvt::in() return value of codecvt_base::noconv, remove
_M_file.sys_ungetc() call.
* include/std/std_fstream.h (basic_file::underflow,
basic_file::uflow, basic_file::_M_underflow): Remove
specialization declarations, call _M_underflow from generic versions
of underflow and uflow.
* src/fstream.cc (basic_file::underflow, basic_file::uflow,
basic_file::_M_underflow): Remove specializations.
* src/Makefile.am (sources): Remove fstream.cc.
* src/Makefile.in: Regenerated.
* testsuite/27_io/basic_filebuf/underflow/10096.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/char/1.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/char/9027.cc: New test.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: New test.
2003-05-10 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/stdio_filebuf.h (__stdio_filebuf): Remove stack
buffer.
* config/io/basic_file_stdio.h (__basic_file::xsgetn): Remove
unbuffered bits.
(__basic_file::xsputn): Same.
(__basic_file::seekoff): Same.
(__basic_file::seekpos): Same.
(__basic_file::showmanyc): Same.
* config/io/basic_file_stdio.cc: Same.
* include/std/std_fstream.h: Same.
* include/bits/fstream.tcc: Same.
* src/fstream.cc: Same.
* testsuite/27_io/basic_filebuf/sgetn/char/1.cc (test05): Tidy.
2003-05-10 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9520
PR libstdc++/9661
PR libstdc++/9662
* include/ext/stdio_sync_filebuf.h: New file.
(basic_stdiobuf): New.
* include/Makefile.am (ext_headers): Add ext/stdio_sync_filebuf.h
* include/Makefile.in: Regenerate.
* include/bits/ios_base.h (Init::_S_create_buffers,
Init::_S_destroy_buffers): Remove declarations.
* src/globals.cc (buf_cout_sync, buf_cin_sync, buf_cerr_sync,
buf_wcout_sync, buf_wcin_sync, buf_wcerr_sync): Define.
* src/ios.cc (Init::_S_create_buffers,
Init::_S_destroy_buffers): Remove.
(Init::Init): Create and use syncronized buffers.
(ios_base::sync_with_stdio): Destroy syncronized buffers,
create and install unsyncronized buffers.
* testsuite/27_io/objects/char/10.cc: New test.
* testsuite/27_io/objects/char/9.cc: New test.
* testsuite/27_io/objects/char/9661-1.cc: New test.
* testsuite/27_io/objects/char/9661-2_xin.cc: New test.
* testsuite/27_io/objects/char/9661-2_xin.in: New.
* testsuite/27_io/objects/wchar_t/1.cc: New test.
* testsuite/27_io/objects/wchar_t/10.cc: New test.
* testsuite/27_io/objects/wchar_t/2.cc: New test.
* testsuite/27_io/objects/wchar_t/2523-1_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/2523-1_xin.in: New.
* testsuite/27_io/objects/wchar_t/2523-2_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/2523-2_xin.in: New.
* testsuite/27_io/objects/wchar_t/3045.cc: New test.
* testsuite/27_io/objects/wchar_t/3647.cc: New test.
* testsuite/27_io/objects/wchar_t/3_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/3_xin.in: New.
* testsuite/27_io/objects/wchar_t/4_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/4_xin.in: New.
* testsuite/27_io/objects/wchar_t/5.cc: New test.
* testsuite/27_io/objects/wchar_t/5268.cc: New test.
* testsuite/27_io/objects/wchar_t/5280_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/5280_xin.in: New.
* testsuite/27_io/objects/wchar_t/6.cc: New test.
* testsuite/27_io/objects/wchar_t/6548_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/6548_xin.in: New.
* testsuite/27_io/objects/wchar_t/6648-1_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/6648-1_xin.in: New.
* testsuite/27_io/objects/wchar_t/6648-2_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/6648-2_xin.in: New.
* testsuite/27_io/objects/wchar_t/7.cc: New test.
* testsuite/27_io/objects/wchar_t/7744_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/7744_xin.in: New.
* testsuite/27_io/objects/wchar_t/8.cc: New test.
* testsuite/27_io/objects/wchar_t/9_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/9_xin.in: New.
* testsuite/27_io/objects/wchar_t/9520.cc: New test.
* testsuite/27_io/objects/wchar_t/9661-1.cc: New test.
* testsuite/27_io/objects/wchar_t/9661-2_xin.cc: New test.
* testsuite/27_io/objects/wchar_t/9661-2_xin.in: New.
* testsuite/27_io/objects/wchar_t/9662.cc: New test.
* testsuite/ext/stdiobuf_char.cc: New test.
* testsuite/ext/stdiobuf_wchar_t.cc: New test.
From-SVN: r66678
2003-05-11 04:20:57 +00:00
Paolo Carlini
6e39f8601a
3.cc: Remove unnecessary includes and unused string literals.
...
2003-05-10 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/close/char/3.cc: Remove
unnecessary includes and unused string literals.
* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
From-SVN: r66663
2003-05-10 15:05:15 +00:00
Benjamin Kosnik
7968097540
cons: New.
...
2003-05-07 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/ios_base/cons: New.
* testsuite/27_io/ios_base/cons/assign_neg.cc: New.
* testsuite/27_io/ios_base/cons/copy_neg.cc: New.
From-SVN: r66580
2003-05-07 21:27:29 +00:00
Benjamin Kosnik
2aacd7357a
[multiple changes]
...
2003-04-28 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/9523
* include/bits/ios_base.h (Init::_S_ios_create,
Init::_S_ios_destroy): Remove declarations.
(Init::_S_create_buffers,
Init::_S_destroy_buffers): Declare
* src/ios.cc (Init::_S_ios_create): Remove
(Init::_S_create_buffers): Create buffers and add to streams.
(Init::_S_ios_destroy): Rename to...
(Init::_S_destroy_buffers): this.
(Init::Init): Only construct streams once.
(Init::~Init): Flush streams, don't destroy them.
(ios_base::sync_with_stdio): Don't destroy streams, only buffers.
* testsuite/27_io/ios_base/sync_with_stdio/9523.cc: New test.
* testsuite/27_io/objects/char/5.cc: New test.
* testsuite/27_io/objects/char/5268.cc: Avoid undefined behavior.
* testsuite/27_io/objects/char/6.cc: New test.
* testsuite/27_io/objects/char/7.cc: New test.
2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/objects/char/8.cc: New test.
From-SVN: r66177
2003-04-28 17:15:03 +00:00
Benjamin Kosnik
a1796d12ff
re PR libstdc++/10132 (filebuf destructor throws exceptions)
...
2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/10132
* include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
exception specifications.
(basic_filebuf::close): Same.
(basic_filebuf::_M_pback_destroy): Same.
(basic_filebuf::_M_destroy_internal_buffer): Same.
(basic_filebuf): Remove __res_type typedef.
* src/fstream.cc: Same.
* include/bits/fstream.tcc
(basic_filebuf::_M_convert_to_external): Simplify.
(basic_filebuf::seekoff): Use has_facet before use_facet.
(basic_filebuf::close): Add exception specification of throw().
* testsuite/27_io/basic_filebuf/cons: New.
* testsuite/27_io/basic_filebuf/cons/wchar_t: New.
* testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: New.
* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: New.
* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: New.
From-SVN: r66091
2003-04-26 00:23:18 +00:00
Paolo Carlini
06f5e63748
3.cc: _S_pback_size now belongs to basic_filebuf.
...
2003-04-23 Paolo Carlini <pcarlini@unitus.it>
* testsuite/27_io/basic_filebuf/3.cc: _S_pback_size now
belongs to basic_filebuf.
* testsuite/27_io/basic_fstream/3.cc: Likewise.
* testsuite/27_io/basic_ifstream/3.cc: Likewise.
* testsuite/27_io/basic_ios/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_iostream/3.cc: Likewise.
* testsuite/27_io/basic_istream/3.cc: Likewise.
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
_S_pback_size now belongs to basic_filebuf.
* testsuite/27_io/basic_istringstream/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_ofstream/3.cc: _S_pback_size now
belongs to basic_filebuf.
* testsuite/27_io/basic_ostream/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc:
_S_pback_size now belongs to basic_filebuf.
* testsuite/27_io/basic_ostringstream/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_streambuf/3.cc: _S_pback_size now belongs
to basic_filebuf.
* testsuite/27_io/basic_stringbuf/3.cc: Remove _S_pback_size
instantiation (now belongs to basic_filebuf).
* testsuite/27_io/basic_stringstream/3.cc: Likewise.
From-SVN: r66018
2003-04-23 22:34:51 +00:00
Phil Edwards
6894ddcf3d
howto.html ('LWG Issues'): Add issue 60, partial implementation only.
...
2003-04-23 Phil Edwards <pme@gcc.gnu.org>
* docs/html/ext/howto.html ('LWG Issues'): Add issue 60, partial
implementation only.
* include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
Comment and change to comply with DR 60 and the effect on gcount().
* include/std/std_istream.h: Update comments.
* testsuite/27_io/basic_istream/putback/char/1.cc (test01): Add
comments about reasons for tests. Test sync() against gcount().
* testsuite/27_io/basic_istream/seekg/char/2.cc: New file, test
for effect on gcount().
* testsuite/27_io/basic_istream/tellg/char/2.cc: New file, test
for effect on gcount().
From-SVN: r65983
2003-04-23 07:05:18 +00:00
Loren J. Rittle
9734801a49
9964.cc (test_07): Adjust timing.
...
* testsuite/27_io/basic_filebuf/close/char/9964.cc (test_07):
Adjust timing.
From-SVN: r65957
2003-04-22 21:06:56 +00:00
Benjamin Kosnik
06e7ca50ab
re PR libstdc++/9555 (ostream inserters fail to set badbit on exception)
...
2003-04-17 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9555
* include/bits/ostream.tcc: Catch all exceptions for formatted
output, instead of std::exception and derivatives.
* include/bits/istream.tcc: Same.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
* testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
* testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
* testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
* testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
New.
From-SVN: r65770
2003-04-18 03:46:44 +00:00
Benjamin Kosnik
3d838e28dd
[multiple changes]
...
2003-04-14 Andreas Tobler <toa@pop.agri.ch>
Benjamin Kosnik <bkoz@redhat.com>
* config/os/generic/ctype_inline.h: Fix.
2003-04-14 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_hooks.h
(__gnu_cxx_test::run_test_wrapped_generic_locale_exception_catcher):
Change to run_named_locale_test.
* testsuite/testsuite_hooks.cc (__gnu_cxx_test): Same.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Use
run_test_named_locale.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/7.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/8.cc: Same.
* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Same.
* testsuite/22_locale/codecvt/length/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/length/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/length/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/length/wchar_t/7.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/out/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/out/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/out/wchar_t/4.cc: Same.
* testsuite/22_locale/codecvt/out/wchar_t/7.cc: Same.
* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Same.
* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Same.
* testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Same.
* testsuite/22_locale/collate/compare/char/1.cc: Same.
* testsuite/22_locale/collate/compare/char/2.cc: Same.
* testsuite/22_locale/collate/compare/char/3.cc: Same.
* testsuite/22_locale/collate/compare/wchar_t/1.cc: Same.
* testsuite/22_locale/collate/compare/wchar_t/2.cc: Same.
* testsuite/22_locale/collate/compare/wchar_t/3.cc: Same.
* testsuite/22_locale/collate/hash/char/2.cc: Same.
* testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
* testsuite/22_locale/collate/transform/char/2.cc: Same.
* testsuite/22_locale/collate/transform/char/3.cc: Same.
* testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
* testsuite/22_locale/collate/transform/wchar_t/3.cc: Same.
* testsuite/22_locale/collate_byname/1.cc: Same.
* testsuite/22_locale/ctype/is/char/2.cc: Same.
* testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
* testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Same.
* testsuite/22_locale/ctype/widen/wchar_t/2.cc: Same.
* testsuite/22_locale/ctype/widen/wchar_t/3.cc: Same.
* testsuite/22_locale/facet/2.cc: Same.
* testsuite/22_locale/locale/cons/2.cc: Same.
* testsuite/22_locale/locale/cons/4.cc: Same.
* testsuite/22_locale/locale/cons/5.cc: Same.
* testsuite/22_locale/locale/cons/7.cc: Same.
* testsuite/22_locale/locale/cons/7222-c.cc: Same.
* testsuite/22_locale/locale/cons/7222-env.cc: Same.
* testsuite/22_locale/locale/global_locale_objects/2.cc: Same.
* testsuite/22_locale/messages/members/char/1.cc: Same.
* testsuite/22_locale/messages/members/char/2.cc: Same.
* testsuite/22_locale/messages/members/char/3.cc: Same.
* testsuite/22_locale/messages_byname/1.cc: Same.
* testsuite/22_locale/money_get/get/char/1.cc: Same.
* testsuite/22_locale/money_get/get/char/2.cc: Same.
* testsuite/22_locale/money_get/get/char/3.cc: Same.
* testsuite/22_locale/money_get/get/char/4.cc: Same.
* testsuite/22_locale/money_get/get/wchar_t/1.cc: Same.
* testsuite/22_locale/money_get/get/wchar_t/2.cc: Same.
* testsuite/22_locale/money_get/get/wchar_t/3.cc: Same.
* testsuite/22_locale/money_get/get/wchar_t/4.cc: Same.
* testsuite/22_locale/money_put/put/char/1.cc: Same.
* testsuite/22_locale/money_put/put/char/2.cc: Same.
* testsuite/22_locale/money_put/put/char/3.cc: Same.
* testsuite/22_locale/money_put/put/wchar_t/1.cc: Same.
* testsuite/22_locale/money_put/put/wchar_t/2.cc: Same.
* testsuite/22_locale/money_put/put/wchar_t/3.cc: Same.
* testsuite/22_locale/moneypunct/members/char/2.cc: Same.
* testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Same.
* testsuite/22_locale/moneypunct_byname/1.cc: Same.
* testsuite/22_locale/num_get/get/char/1.cc: Same.
* testsuite/22_locale/num_get/get/char/2.cc: Same.
* testsuite/22_locale/num_get/get/char/3.cc: Same.
* testsuite/22_locale/num_get/get/char/5.cc: Same.
* testsuite/22_locale/num_get/get/char/6.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/1.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/2.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/3.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/5.cc: Same.
* testsuite/22_locale/num_get/get/wchar_t/6.cc: Same.
* testsuite/22_locale/num_put/put/char/1.cc: Same.
* testsuite/22_locale/num_put/put/char/2.cc: Same.
* testsuite/22_locale/num_put/put/char/3.cc: Same.
* testsuite/22_locale/num_put/put/char/5.cc: Same.
* testsuite/22_locale/num_put/put/wchar_t/1.cc: Same.
* testsuite/22_locale/num_put/put/wchar_t/2.cc: Same.
* testsuite/22_locale/num_put/put/wchar_t/3.cc: Same.
* testsuite/22_locale/num_put/put/wchar_t/5.cc: Same.
* testsuite/22_locale/numpunct/members/char/1.cc: Same.
* testsuite/22_locale/numpunct/members/char/2.cc: Same.
* testsuite/22_locale/numpunct/members/wchar_t/1.cc: Same.
* testsuite/22_locale/numpunct/members/wchar_t/2.cc: Same.
* testsuite/22_locale/numpunct_byname/1.cc: Same.
* testsuite/22_locale/numpunct_byname/2.cc: Same.
* testsuite/22_locale/time_get/date_order/char/1.cc: Same.
* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_date/char/1.cc: Same.
* testsuite/22_locale/time_get/get_date/char/2.cc: Same.
* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Same.
* testsuite/22_locale/time_get/get_monthname/char/1.cc: Same.
* testsuite/22_locale/time_get/get_monthname/char/2.cc: Same.
* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Same.
* testsuite/22_locale/time_get/get_time/char/1.cc: Same.
* testsuite/22_locale/time_get/get_time/char/2.cc: Same.
* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Same.
* testsuite/22_locale/time_get/get_weekday/char/1.cc: Same.
* testsuite/22_locale/time_get/get_weekday/char/2.cc: Same.
* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Same.
* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Same.
* testsuite/22_locale/time_get/get_year/char/1.cc: Same.
* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Same.
* testsuite/22_locale/time_put/put/char/1.cc: Same.
* testsuite/22_locale/time_put/put/char/2.cc: Same.
* testsuite/22_locale/time_put/put/char/3.cc: Same.
* testsuite/22_locale/time_put/put/char/4.cc: Same.
* testsuite/22_locale/time_put/put/char/5.cc: Same.
* testsuite/22_locale/time_put/put/char/6.cc: Same.
* testsuite/22_locale/time_put/put/char/7.cc: Same.
* testsuite/22_locale/time_put/put/char/8.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/1.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/2.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/3.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/4.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/5.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/6.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/7.cc: Same.
* testsuite/22_locale/time_put/put/wchar_t/8.cc: Same.
* testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Same.
* testsuite/27_io/basic_ios/copyfmt/char/2.cc: Same.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: Same.
* testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Same.
* testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Same.
2003-04-14 Andreas Tobler <toa@pop.agri.ch>
* configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
solaris includes, not generic.
From-SVN: r65622
2003-04-15 06:36:31 +00:00
Nathan Myers
21a1d2c493
PR libstdc++/9701 (in_avail())
...
2003-04-14 Nathan Myers <ncm@cantrip.org>
Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9701 (in_avail())
* include/std/std_streambuf.h (in_avail): Simplify, in_avail
doesn't care if there is anything in some putback cell.
* testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Add.
* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Remove some
unused string literals.
Co-Authored-By: Paolo Carlini <pcarlini@unitus.it>
From-SVN: r65603
2003-04-14 22:43:32 +00:00
David Edelsohn
4440f5b597
3983-fstream.cc: Change basic_streambuf instantiation to "unsigned char".
...
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
Change basic_streambuf instantiation to "unsigned char".
* testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
From-SVN: r65526
2003-04-12 17:13:12 -04:00
Paolo Carlini
7ef9fd85ef
Remove _M_buf_size_opt, use directly _M_buf_size instead.
...
2003-04-12 Paolo Carlini <pcarlini@unitus.it>
Remove _M_buf_size_opt, use directly _M_buf_size instead.
* include/bits/fstream.tcc
(basic_filebuf::_M_allocate_internal_buffer, setbuf): Remove
references to _M_buf_size_opt.
* include/bits/sstream.tcc (basic_stringbuf::overflow): Likewise.
* include/bits/streambuf.tcc (__copy_streambufs): Likewise, rename
__bufsize to __in_avail and __size_opt to __buf_size.
* include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf): Likewise.
* include/std/std_sstream.h (_M_stringbuf_init, setbuf): Likewise.
* include/std/std_streambuf.h (~basic_streambuf(),
basic_streambuf()): Likewise, remove _M_buf_size_opt member.
* testsuite/27_io/basic_filebuf/close/char/3.cc: Set _M_buf_size.
* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/snextc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
From-SVN: r65518
2003-04-12 19:21:35 +00:00
Paolo Carlini
2bc67e0663
re PR libstdc++/9533 (Can't read from tty with ifstream)
...
2003-04-12 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/9533
* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: New.
* testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Ditto.
From-SVN: r65507
2003-04-12 13:56:37 +00:00