Commit Graph

17 Commits

Author SHA1 Message Date
Benjamin Kosnik
5112ae3a8f re PR libstdc++/8318 (Not all wide character based prototypes are included within #ifdef _GLIBCPP_USE_WCHAR_T)
2002-11-01  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/8318
	* include/std/std_iostream.h: Tweak.
	* include/std/std_iosfwd.h: Add _GLIBCPP_USE_WCHAR_T.
	* include/std/std_iomanip.h: Same.
	* include/bits/stringfwd.h: Same.
	* include/bits/basic_string.tcc: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/fstream.tcc: Same.
	* include/bits/basic_ios.tcc: Same.
	* include/bits/streambuf.tcc: Same.
	* include/bits/locale_facets.tcc: Same.

From-SVN: r58720
2002-11-01 17:30:36 +00:00
Benjamin Kosnik
49433044e4 std_streambuf.h (basic_streambuf::_M_buf): Change to size_t, from int_type.
2002-07-04  Benjamin Kosnik  <bkoz@redhat.com>
            Jack Reeves  <jackw_reeves@hotmail.com>

	* include/std/std_streambuf.h (basic_streambuf::_M_buf): Change to
	size_t, from int_type.
 	(basic_streambuf::_M_buf_size_opt): Same.
 	(basic_streambuf::_S_pback_sizex): Same.
	* include/bits/streambuf.tcc: Same.
	* include/std/std_streambuf.h (basic_streambuf::snextc): Use
	eq_int_type.
	(basic_streambuf::uflow): Same.
	* include/bits/sstream.tcc (basic_stringbuf::overflow): Use
	to_char_type.
	* include/bits/basic_ios.tcc (basic_ios::init): Use _CharT().
	* include/bits/streambuf.tcc (basic_streambuf::xsgetn): Use
	eq_int_type.
	(basic_streambuf::xsputn): Same.
	(__copy_streambufs): Same.

Co-Authored-By: Jack Reeves <jackw_reeves@hotmail.com>

From-SVN: r55242
2002-07-04 09:20:01 +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
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
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
3b79452813 locale_facets.tcc: Add pragma GCC system_header.
2002-02-16   Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.tcc: Add pragma GCC system_header.
	* include/bits/fstream.tcc: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/ostream.tcc: Same.
	* include/bits/istream.tcc: Same.
	* include/bits/streambuf.tcc: Same.
	* include/bits/basic_ios.tcc: Same.
	* include/bits/basic_string.tcc: Same.

From-SVN: r49809
2002-02-16 19:33:43 +00:00
Benjamin Kosnik
a32e3c097e Tune for size.
2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>

	Tune for size.
	* src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
	explicit instantiation.
	(string::_Rep::_S_max_size): Same.
	* include/bits/basic_string.tcc: Add extern explicit
	instantiations for string, wstring.
	* include/bits/basic_ios.tcc: Add extern explicit instantiations
	for ios, wios.
	* include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
	* include/bits/istream.tcc: Same, for istream, wistream.
	* include/bits/ostream.tcc: Same for ostream, wostream, iostream,
	wiostream.
	* include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
	istringstream, wistringstream, ostringstream, wostringstream,
	stringstream, wstringstream.
	* include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
	wifstream, ofstream, wofstream, fstream, wfstream.
	* src/misc-inst.cc: Correct comments.
	Add iomanip instantiations for wide streams.
	* include/std/std_iomanip.h: Same.
	* include/bits/locale_facets.tcc: Same.

	* include/std/std_streambuf.h: Correct
	_GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
	* include/std/std_sstream.h: Same.
	* include/std/std_ostream.h: Same.
	* include/std/std_istream.h: Same.
	* include/std/std_fstream.h: Same.

	* include/std/std_streambuf.h: Add definitions for private copy
	ctor and assignment operator.
	* include/std/std_istream.h: Remove declared but undefined copy
	ctor and assignment operator. This is taken care of in ios_base,
	so adding it in the derived class as well is superfluous.
	* include/std/std_ostream.h: Same.

	* include/bits/basic_ios.h (basic_ios::clear): Don't inline.
	* include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.

From-SVN: r49798
2002-02-16 00:19:13 +00:00
Benjamin Kosnik
3ab57fab23 basic_ios.tcc (basic_ios::narrow): Add default value.
2002-02-07  Benjamin Kosnik  <bkoz@redhat.com>
            Wolfgang Bangerth  <wolfgang.bangerth@iwr.uni-heidelberg.de>

	* include/bits/basic_ios.tcc (basic_ios::narrow): Add default value.
	(basic_ios::widen): Same.

Co-Authored-By: Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>

From-SVN: r49590
2002-02-07 20:28:55 +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
Benjamin Kosnik
5de197f210 basic_ios.tcc: Formatting tweaks.
2001-06-05  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3045
	* include/bits/basic_ios.tcc: Formatting tweaks.
	* include/bits/ios_base.h: Formatting tweaks.
	* src/ios.cc (ios_base::Init::_S_ios_create): Use filebufs here.
	(ios_base::Init::_S_ios_destroy): ..and here. Explicitly call dtors.
	* src/globals.cc: Allocate filebufs for standard streams here.
	(buf_cout, buf_cin, buf_cerr): Like so.
	(buf_wcout, buf_wcin, buf_wcerr): And so.
	* testsuite/27_io/ios_init.cc: Add.

From-SVN: r42922
2001-06-06 01:31:58 +00:00
Benjamin Kosnik
bfa1e6b11b acconfig.h (_GLIBCPP_BUGGY_FLOAT_COMPLEX): Remove.
2001-05-30  Benjamin Kosnik  <bkoz@redat.com>

	* acconfig.h (_GLIBCPP_BUGGY_FLOAT_COMPLEX): Remove.
	(_GLIBCPP_BUGGY_COMPLEX): Remove.
	* config.h.in: Regenerate.
	* acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT): Remove.
	* aclocal.m4: Regenerate.
	* configure.in: Don't call it.
	* configure: Regenerate.

	libstdc++/2970
	* src/complex_io.cc (operator<<(ostream&, const complex&): Fix.
	* testsuite/26_numerics/complex_inserters_extractors.cc (test01):
	New test.

	libstdc++/2985
	* include/bits/std_complex.h: Include sstream. Put definitions for
	complex inserters and extractors here, and remove them from...
	* src/complex_io.cc: ...here.
	* include/bits/basic_ios.h (basic_ios::__numput_type): Add _Traits
	parameter.
	(basic_ios::__numget_type): Same.
	* include/bits/std_istream.h: Same.
	* include/bits/std_ostream.h: Same.
	* include/bits/sbuf_iter.h (ostreambuf_iterator): Fix typo in base
	class iterator template arguments.
	* src/locale-inst.cc: Add explicit has_facet instantiations.
	* include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
	(_M_get_fnumput): Remove.
	(_M_get_fnumget): Remove.
	(basic_ios::_M_check_facet): New function.
	(basic_ios::_M_cache_facets): New function.
	* include/bits/basic_ios.tcc: Definition for _M_cache_facets.
	(basic_ios::imbue): Call _M_cache_facets.
	(basic_ios::init): Same.
	* include/bits/istream.tcc: Format, use _M_check_facet.
	* include/bits/ostream.tcc: Same.
	* include/bits/locale_facets.tcc (__output_float): Change
	signature, add _Traits.
	* testsuite/26_numerics/complex_inserters_extractors.cc (test02):
	New test.

From-SVN: r42743
2001-05-31 12:14:56 +00:00
Benjamin Kosnik
d422980b3f basic_ios.tcc: Small tweak.
2001-05-24  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2832
	* include/bits/basic_ios.tcc: Small tweak.
	* include/bits/std_fstream.h (ifstream): Add buffer member. Adjust
	ctors and dtors, and rdbuf settings.
	(ofstream): Same.
	(fstream): Same.
	* include/bits/std_sstream.h: Same, but for stringstream classes.
	* testsuite/27_io/ostringstream_members.cc: New.
	* testsuite/27_io/stringstream_members.cc: New.
	* testsuite/27_io/fstream_members.cc: New.
	* testsuite/27_io/ifstream_members.cc: Add test.
	* testsuite/27_io/istringstream_members.cc: Add test.
	* testsuite/27_io/ofstream_members.cc: Add test.

From-SVN: r42547
2001-05-24 23:09:53 +00:00
Phil Edwards
d53d7f6e61 algo.h: Use std not __STD.
2001-03-04  Phil Edwards  <pme@sources.redhat.com>

	http://gcc.gnu.org/ml/libstdc++/2001-03/msg00015.html
	* include/backward/algo.h:  Use std not __STD.  Remove unneeded
	macros and "never happens" code.  Adjust to C++STYLE guidelines.
	* include/backward/algobase.h:  Likewise.
	* include/backward/alloc.h:  Likewise.
	* include/backward/bvector.h:  Likewise.
	* include/backward/deque.h:  Likewise.
	* include/backward/function.h:  Likewise.
	* include/backward/hash_map.h:  Likewise.
	* include/backward/hash_set.h:  Likewise.
	* include/backward/hashtable.h:  Likewise.
	* include/backward/heap.h:  Likewise.
	* include/backward/iterator.h:  Likewise.
	* include/backward/list.h:  Likewise.
	* include/backward/map.h:  Likewise.
	* include/backward/multimap.h:  Likewise.
	* include/backward/multiset.h:  Likewise.
	* include/backward/pair.h:  Likewise.
	* include/backward/rope.h:  Likewise.
	* include/backward/set.h:  Likewise.
	* include/backward/slist.h:  Likewise.
	* include/backward/stack.h:  Likewise.
	* include/backward/strstream:  Likewise.
	* include/backward/tempbuf.h:  Likewise.
	* include/backward/tree.h:  Likewise.
	* include/backward/vector.h:  Likewise.
	* include/bits/basic_ios.h:  Likewise.
	* include/bits/basic_ios.tcc:  Likewise.
	* include/bits/basic_string.h:  Likewise.
	* include/bits/c++config:  Likewise.
	* include/bits/concept_checks.h:  Likewise.
	* include/bits/fpos.h:  Likewise.
	* include/bits/fstream.tcc:  Likewise.
	* include/bits/functexcept.h:  Likewise.
	* include/bits/ios_base.h:  Likewise.
	* include/bits/istream.tcc:  Likewise.
	* include/bits/mask_array.h:  Likewise.
	* include/bits/ostream.tcc:  Likewise.
	* include/bits/pthread_allocimpl.h:  Likewise.
	* include/bits/sbuf_iter.h:  Likewise.
	* include/bits/slice.h:  Likewise.
	* include/bits/slice_array.h:  Likewise.
	* include/bits/sstream.tcc:  Likewise.
	* include/bits/std_bitset.h:  Likewise.
	* include/bits/std_fstream.h:  Likewise.
	* include/bits/std_iomanip.h:  Likewise.
	* include/bits/std_ios.h:  Likewise.
	* include/bits/std_istream.h:  Likewise.
	* include/bits/std_iterator.h:  Likewise.
	* include/bits/std_memory.h:  Likewise.
	* include/bits/std_ostream.h:  Likewise.
	* include/bits/std_sstream.h:  Likewise.
	* include/bits/std_streambuf.h:  Likewise.
	* include/bits/std_string.h:  Likewise.
	* include/bits/std_valarray.h:  Likewise.
	* include/bits/stl_algo.h:  Likewise.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_alloc.h:  Likewise.
	* include/bits/stl_construct.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_function.h:  Likewise.
	* include/bits/stl_heap.h:  Likewise.
	* include/bits/stl_iterator.h:  Likewise.
	* include/bits/stl_iterator_base.h:  Likewise.
	* include/bits/stl_list.h:  Likewise.
	* include/bits/stl_map.h:  Likewise.
	* include/bits/stl_multimap.h:  Likewise.
	* include/bits/stl_multiset.h:  Likewise.
	* include/bits/stl_numeric.h:  Likewise.
	* include/bits/stl_pair.h:  Likewise.
	* include/bits/stl_pthread_alloc.h:  Likewise.
	* include/bits/stl_queue.h:  Likewise.
	* include/bits/stl_raw_storage_iter.h:  Likewise.
	* include/bits/stl_relops.h:  Likewise.
	* include/bits/stl_set.h:  Likewise.
	* include/bits/stl_stack.h:  Likewise.
	* include/bits/stl_tempbuf.h:  Likewise.
	* include/bits/stl_threads.h:  Likewise.
	* include/bits/stl_tree.h:  Likewise.
	* include/bits/stl_uninitialized.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/bits/streambuf.tcc:  Likewise.
	* include/bits/type_traits.h:  Likewise.
	* include/bits/valarray_meta.h:  Likewise.
	* include/ext/bvector:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/ropeimpl.h:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_bvector.h:  Likewise.
	* include/ext/stl_hash_fun.h:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.
	* include/ext/stl_rope.h:  Likewise.
	* src/complex_io.cc:  Likewise.
	* src/ios.cc:  Likewise.
	* src/locale-inst.cc:  Likewise.
	* src/locale.cc:  Likewise.
	* src/localename.cc:  Likewise.
	* src/misc-inst.cc:  Likewise.
	* src/stdexcept.cc:  Likewise.
	* src/stl-inst.cc:  Likewise.
	* src/strstream.cc:  Likewise.
	* src/valarray-inst.cc:  Likewise.

From-SVN: r40239
2001-03-04 21:34:02 +00:00
Greg Bumgardner
f5d3e93f97 std_ostream.h: Replaced usage of _Traits::_S_eos() with _CharT() as per section 17.2.2.1.3.
2001-02-16  Greg Bumgardner <bumgard@roguewave.com>

	libstdc++/1734
        * include/bits/std_ostream.h: Replaced usage of
        _Traits::_S_eos() with _CharT() as per section 17.2.2.1.3.
        * include/bits/char_traits.h: Removed non-standard
        methods that cannot be used elsewhere.

	libstdc++/1885
        * include/bits/basic_ios.h: Uncommented #include of
        bits/basic_ios.tcc

	libstdc++/1897
        * include/bits/codecvt.h: See next...
        * include/bits/fstream.tcc: See next...
        * include/bits/ostream.tcc: Add __extension__
        to variable-length arrays.

	libstdc++/1967
        * include/bits/localefwd.h: Changed int counter type to size_t.

	libstdc++/1968
        * include/bits/std_fstream.h: Added typedef for __ctype_type.

From-SVN: r39802
2001-02-17 17:51:45 +00:00
Benjamin Kosnik
d358ecd01f [multiple changes]
2001-01-05  Benjamin Kosnik  <bkoz@redhat.com>

	Fix 27_io/filebuf_members.cc
	* src/localename.cc (locale::_Impl::_Impl(const _Impl& __imp,
	const string& __name, category __cat, size_t __refs): Set
	_M_has_name with _M_name.
	* include/bits/localefwd.h (locale::operator!=): Protect member
	function call with this->.
	* src/locale.cc (locale::operator==): Make fast checks first.
	* include/bits/basic_ios.tcc (basic_ios::init): Simplify.

	* include/bits/ios_base.h (_M_synced_with_stdio): Add data member
	to ios_base::Init.
	* src/ios.cc (ios_base::Init::Init): Initialize here.
	(ios_base::sync_with_stdio): Set here.

2001-01-04  Loren J. Rittle  <ljrittle@acm.org>

        * config/c_io_stdio.cc (__basic_file<_CharT>::sys_open()): On
        systems that support it, call dup() before fdopen().

From-SVN: r38742
2001-01-06 02:44:11 +00:00
Benjamin Kosnik
725dc051ca include: New directory.
2000-10-05  Benjamin Kosnik  <bkoz@cygnus.com>

	* include: New directory.
	* include/backward: New directory.
	* include/bits: New directory.
	* include/ext: New directory.
	* include/std: New directory.
	* include/*/*: Populate.

	* src/complex.cc: Adjust include of mathconf.

	* mkc++config (BASE_H): Add include.

	* src/Makefile.am: Support for topleve sources include directory.
	(INCLUDES): Add LIBMATH_INCLUDE.
	* src/Makefile.in: Regenerate.
	* math/Makefile.am (INCLUDES): Append /include.
	* math/Makefile.in: Regenerate.
	* libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
	* libio/Makefile.in: Regenerate.

From-SVN: r36723
2000-10-05 11:27:02 +00:00