gcc/libstdc++-v3/testsuite/27_io
Paolo Carlini 391cd0955e PR libstdc++/9404, PR libstdc++/9701 (partial)
2003-02-24  Paolo Carlini <pcarlini@unitus.it>
	    Nathan Myers <ncm@cantrip.org>

	PR libstdc++/9404, PR libstdc++/9701 (partial)
	(aka pptr == epptr implies overflow)
	* include/bits/fstream.tcc (_M_allocate_internal_buffer):
	Consistently, _M_out_end points to the end of the buffer just
	created.
	(overflow): Tweak to use _M_out_buf_size().
	(_M_convert_to_external): The role of the old _M_out_end is
	now played by _M_out_lim.
	(_M_really_overflow): Likewise.
	(seekoff): Likewise.
	(setbuf): _M_out_end points to the end of the external buffer.
	* include/bits/sstream.tcc (overflow): Rewrote, taking into
	account the resolution of DR 169 (TC).
	(seekoff): Use _M_string.capacity(); ios_base::end is now _M_out_lim.
	(seekpos): Use _M_string.capacity(); tweak.
	* include/bits/streambuf.tcc (sputc, xsputn): Remove comments.
	* include/std/std_fstream.h (sync): The role of the old
	_M_out_end is now played by _M_out_lim.
	(_M_set_indeterminate): Use _M_set_determinate.
	(_M_set_determinate): _M_out_end is now _M_out_lim.
	(_M_is_indeterminate): Likewise.
	* include/std/std_sstream.h (str()): _M_out_end is now _M_out_lim.
	(_M_stringbuf_init): Don't set _M_buf_size, unused for sstreams,
	which have the information readily available as _M_string.capacity();
	for ate and app modes, pass the string size to _M_really_sync.
	(_M_really_sync): Consistently set _M_out_end and _M_out_lim, to
	point to the end of the buffer (i.e., epptr) and to the string end,
	respectively.
	* include/std/std_streambuf.h: tweak comments, add _M_out_lim,
	which points to the right limit of the used put area.
	(_M_out_cur_move): The role of the old _M_out_end is now played
	by _M_out_lim.
	(_M_out_buf_size): Simplify: now (when _M_out_cur) return simply
	_M_out_end  - _M_out_cur (i.e., pptr), _very_ close to the letter
	of the standard.
	(basic_streambuf()): Initialize _M_out_lim too.
	* testsuite/27_io/filebuf_virtuals.cc (test10): Trivial tweak.
	* testsuite/27_io/filebuf_virtuals.cc (test11): Add.
 	* testsuite/27_io/stringbuf_virtuals.cc (test09): Add.

Co-Authored-By: Nathan Myers <ncm@cantrip.org>

From-SVN: r63367
2003-02-24 18:22:58 +00:00
..
istream_extractor_arith libstdc++-v3-dg.exp (libstdc++-v3-init, [...]): Additionally handle files one level deeper in glob patterns. 2003-01-06 14:16:00 +00:00
filebuf_members-1.tst
filebuf_members-1.txt
filebuf_members.cc [multiple changes] 2003-02-04 18:08:45 +00:00
filebuf_virtuals-1.tst fstream.tcc (filebuf::close()): Fix close for input streams. 2002-01-26 01:55:09 +00:00
filebuf_virtuals-1.txt fstream.tcc (filebuf::close()): Fix close for input streams. 2002-01-26 01:55:09 +00:00
filebuf_virtuals-2.tst fstream.tcc (filebuf::close()): Fix close for input streams. 2002-01-26 01:55:09 +00:00
filebuf_virtuals-3.tst fstream.tcc (filebuf::close()): Fix close for input streams. 2002-01-26 01:55:09 +00:00
filebuf_virtuals.cc PR libstdc++/9404, PR libstdc++/9701 (partial) 2003-02-24 18:22:58 +00:00
filebuf.cc Renames, namespaces for testsuite utilities. 2003-01-14 04:56:56 +00:00
fpos.cc
fstream_members.cc
fstream.cc Renames, namespaces for testsuite utilities. 2003-01-14 04:56:56 +00:00
ifstream_members-1.tst
ifstream_members-1.txt
ifstream_members.cc
ifstream.cc re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue) 2002-07-26 01:49:36 +00:00
instantiations.cc localefwd.h (locale:🆔:_M_id): Do this correctly, as type safety is important, especially on solaris. 2002-04-18 23:47:50 +00:00
ios_base_callbacks.cc
ios_base_members_static-1.tst
ios_base_members_static.cc
ios_base_storage.cc ios_base_storage.cc (main): Call set_memory_limits. 2003-02-24 18:14:20 +00:00
ios_base_types.cc ios_base_type.cc: Move to... 2002-07-25 07:19:40 +00:00
ios_ctor.cc
ios_init.cc char_traits.h: Remove generic definitions. 2002-07-31 02:47:36 +00:00
ios_manip_basefield.cc num_get_members_char.cc (test04): Use a named locale expecting grouping (de_DE). 2002-03-02 21:32:56 +00:00
ios_manip_fmtflags.cc locale_facets.tcc (num_get::_M_extract_int): Admit grouping for octals and hexadecimals too. 2002-02-28 21:16:45 +00:00
ios_members.cc [multiple changes] 2003-02-18 05:45:07 +00:00
ios.cc re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue) 2002-07-26 01:49:36 +00:00
iostream_members.cc fstream.tcc (filebuf::close()): Fix close for input streams. 2002-01-26 01:55:09 +00:00
iostream.cc re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue) 2002-07-26 01:49:36 +00:00
istream_extractor_char.cc
istream_extractor_other-1.tst
istream_extractor_other-1.txt
istream_extractor_other-2.tst
istream_extractor_other.cc
istream_manip.cc
istream_seeks-1.tst
istream_seeks-1.txt
istream_seeks-2.tst
istream_seeks-3.tst
istream_seeks.cc re PR libstdc++/8348 (fail() flag is set in istringstream when eof() flag is set !) 2002-11-01 05:38:27 +00:00
istream_sentry.cc re PR libstdc++/9562 (ostream::sentry::operator bool () should be const) 2003-02-07 00:26:44 +00:00
istream_unformatted-1.tst
istream_unformatted-1.txt
istream_unformatted.cc re PR libstdc++/6746 (ifstream::readsome() always returns zero) 2002-11-11 23:18:05 +00:00
istream.cc Renames, namespaces for testsuite utilities. 2003-01-14 04:56:56 +00:00
istringstream_members.cc
istringstream.cc re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue) 2002-07-26 01:49:36 +00:00
narrow_stream_objects.cc istream.tcc (basic_istream::ignore): Use sbumpc, not snextc. 2002-08-09 06:00:46 +00:00
ofstream_members-1.tst
ofstream_members.cc
ofstream.cc re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue) 2002-07-26 01:49:36 +00:00
ostream_inserter_arith.cc re PR libstdc++/9151 (std::setprecision limited to 16 digits when outputting a double to a stream) 2003-01-06 15:32:16 +00:00
ostream_inserter_char-1.tst
ostream_inserter_char-1.txt
ostream_inserter_char.cc re PR libstdc++/6750 (ofstream incorrectly sets failbit (severe regression)) 2002-05-24 15:50:51 +00:00
ostream_inserter_other-1.tst
ostream_inserter_other-2.tst
ostream_inserter_other.cc streambuf.tcc (__copy_streambufs): verify __sbin->gptr() + __bufsize < __sbin->egptr() before using. 2002-11-18 22:42:35 +00:00
ostream_manip.cc ostream_manip.cc: Enable test02. 2002-02-02 13:13:00 +00:00
ostream_seeks-1.tst
ostream_seeks.cc fstream.tcc (basic_filebuf::seekoff): Fix for output-only filebufs. 2002-04-23 17:56:10 -04:00
ostream_sentry.cc re PR libstdc++/9563 (ostream::sentry returns true after a failed preparation) 2003-02-12 19:39:19 +00:00
ostream_unformatted.cc
ostream.cc Renames, namespaces for testsuite utilities. 2003-01-14 04:56:56 +00:00
ostringstream_members.cc re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue) 2002-07-26 01:49:36 +00:00
ostringstream.cc re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue) 2002-07-26 01:49:36 +00:00
standard_manipulators.cc money_put_members_char.cc: Fix. 2002-02-20 21:06:42 +00:00
streambuf_members.cc re PR libstdc++/9318 (i/ostream::operator>>/<<(streambuf*) broken) 2003-02-11 09:59:19 +00:00
streambuf.cc Renames, namespaces for testsuite utilities. 2003-01-14 04:56:56 +00:00
stringbuf_members.cc std_sstream.h (str()): the size of the current string may be different from the initial one whenever... 2003-02-18 23:26:32 +00:00
stringbuf_virtuals.cc PR libstdc++/9404, PR libstdc++/9701 (partial) 2003-02-24 18:22:58 +00:00
stringbuf.cc Renames, namespaces for testsuite utilities. 2003-01-14 04:56:56 +00:00
stringstream_members.cc re PR libstdc++/8466 (basic_stringbuf::str(basic_string const&) modifies its argument) 2002-11-05 23:28:15 +00:00
stringstream.cc Renames, namespaces for testsuite utilities. 2003-01-14 04:56:56 +00:00
wide_stream_objects.cc