gcc/libstdc++-v3/include/ext
Paolo Carlini 11202768fe PR libstdc++/28277 (partial: vstring bits)
2007-04-10  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/28277 (partial: vstring bits)
	* include/bits/ostream_insert.h: New.
	* include/Makefile.am: Add.
	* include/ext/vstring.h (operator<<(basic_ostream<>&,
	const __versa_string<>&): Forward to __ostream_insert.
	* include/bits/basic_string.h (operator<<(basic_ostream<>&,
	const string<>&)): Likewise.
	* include/std/ostream (operator<<(basic_ostream<>&, _CharT),
	operator<<(basic_ostream<char,>&, char), operator<<(basic_ostream<>&,
	const _CharT*), operator<<(basic_ostream<char,>&, const char*)):
	Likewise.
	* include/ext/vstring.tcc (operator<<(basic_ostream<>&,
	const __versa_string<>&)): Remove.
	(class basic_ostream): Remove friend declarations.
	(basic_ostream<>::_M_write(char_type, streamsize),
	_M_insert(const char_type*, streamsize)): Remove.
	* include/bits/ostream.tcc (_M_insert(const char_type*, streamsize)):
	Remove definition.
	(operator<<(basic_ostream<>&, const char*)): Use __ostream_insert.
	* config/abi/pre/gnu.ver: Adjust.
	* src/ostream-inst.cc: Add __ostream_insert instantiations.
	* include/bits/locale_facets.h (__pad<>::_S_pad): Remove __num
	parameter.
	* include/bits/locale_facets.tcc (__pad<>::_S_pad): Adjust.
	(num_put<>::_M_pad(_CharT, streamsize, ios_base&, _CharT*,
	const _CharT*, int&)): Likewise.
	* include/Makefile.in: Rebuild.
	* testsuite/ext/vstring/inserters_extractors/char/28277.cc: New.
	* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: New.

	* include/ext/vstring_util.h: Do not include the whole <locale>.
	* include/ext/vstring.tcc (operator>>(basic_istream<>&,
	__versa_string<>&, getline(basic_istream<>&, __versa_string<>&,
	_CharT)): Tweak to refer to ios_base as a base of istream; do not
	refer to non-standard types of istream.
	* include/bits/istream.tcc (operator>>(basic_istream<>&, _CharT*),
	ws(basic_istream<>&)): Do not refer to non-standard types of istream.
	* include/std/bitset (operator>>(std::basic_istream<>&, bitset<>&)):
	Avoid using basic_streambuf<>*.

	* include/bits/istream.tcc (operator>>(basic_istream<>&,
	basic_string<>&), getline(basic_istream<>&, basic_string<>&, _CharT)):
	Move...
	* include/bits/basic_string.tcc: ... here; tweak to refer to ios_base
	as a base of istream; do not refer to non-standard types of istream.
	* include/std/string: Tweak includes.

	* include/ext/type_traits.h (__is_null_pointer): Add.
	* include/ext/rc_string_base.h: Use it.
	* include/ext/sso_string_base.h: Likewise.
	* include/bits/basic_string.tcc (__is_null_pointer): Remove, use
	the above.
	* include/ext/vstring_util.h (__vstring_utility<>::_S_is_null_pointer):
	Remove.

From-SVN: r123692
2007-04-10 10:38:50 +00:00
..
pb_ds type_traits.h (__numeric_traits): Move... 2007-04-06 14:52:27 +00:00
algorithm c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
array_allocator.h array (array<>::_M_at): New. 2006-10-28 22:02:44 +00:00
atomicity.h atomicity.h: Move to... 2006-09-14 09:48:15 +00:00
bitmap_allocator.h throw_allocator.h: Consistent @file markup. 2006-11-29 20:59:22 +00:00
codecvt_specializations.h enc_filebuf.h: Resurrect, update. 2007-01-29 18:22:37 +00:00
concurrence.h bitmap_allocator.h: Uglify some names. 2006-11-12 10:37:00 +00:00
debug_allocator.h re PR libstdc++/27199 (ptrdiff_t and size_t outside of namespace std) 2006-04-23 14:54:26 +00:00
enc_filebuf.h enc_filebuf.h: Resurrect, update. 2007-01-29 18:22:37 +00:00
functional PR libstdc++/28080 (partial) 2007-02-26 09:36:39 +00:00
hash_fun.h c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
hash_map hash_map: Remove forward declaration of equality operator... 2006-09-21 17:54:50 +00:00
hash_set hash_map: Remove forward declaration of equality operator... 2006-09-21 17:54:50 +00:00
hashtable.h hashtable.h: -Wshadow fixes. 2006-11-21 18:10:45 +00:00
iterator c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
malloc_allocator.h re PR libstdc++/27199 (ptrdiff_t and size_t outside of namespace std) 2006-04-23 14:54:26 +00:00
memory c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
mt_allocator.h mt_allocator.h (__pool_base::_M_get_align): Remove redundant const qualifier on the return type. 2006-12-02 00:31:34 +00:00
new_allocator.h re PR libstdc++/27199 (ptrdiff_t and size_t outside of namespace std) 2006-04-23 14:54:26 +00:00
numeric c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
numeric_traits.h type_traits.h (__numeric_traits): Move... 2007-04-06 14:52:27 +00:00
pod_char_traits.h c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
pool_allocator.h atomicity.h: Move to... 2006-09-14 09:48:15 +00:00
rb_tree c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
rc_string_base.h PR libstdc++/28277 (partial: vstring bits) 2007-04-10 10:38:50 +00:00
rope PR libstdc++/28080 (final) 2007-03-11 12:03:34 +00:00
ropeimpl.h re PR libstdc++/28514 (libstdc++ vs. anonymous namespaces) 2006-10-17 11:56:21 +00:00
slist throw_allocator.h: Consistent @file markup. 2006-11-29 20:59:22 +00:00
sso_string_base.h PR libstdc++/28277 (partial: vstring bits) 2007-04-10 10:38:50 +00:00
stdio_filebuf.h c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
stdio_sync_filebuf.h PR libstdc++/28080 (final) 2007-03-11 12:03:34 +00:00
throw_allocator.h throw_allocator.h: Consistent @file markup. 2006-11-29 20:59:22 +00:00
type_traits.h PR libstdc++/28277 (partial: vstring bits) 2007-04-10 10:38:50 +00:00
typelist.h typelist.h (type_to_type): Remove. 2006-09-28 01:23:58 +00:00
vstring.h PR libstdc++/28277 (partial: vstring bits) 2007-04-10 10:38:50 +00:00
vstring.tcc PR libstdc++/28277 (partial: vstring bits) 2007-04-10 10:38:50 +00:00
vstring_fwd.h PR libstdc++/28080 (partial) 2007-02-18 11:32:44 +00:00
vstring_util.h PR libstdc++/28277 (partial: vstring bits) 2007-04-10 10:38:50 +00:00