2005-12-28  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 40.

2005-12-28  Chris Jefferson  <chris@bubblescope.net>

	* testsuite/testsuite_allocator.h (check_deallocate_null): Return true.

2005-12-28  Paolo Carlini  <pcarlini@suse.de>

	* include/std/std_bitset.h (bitset<>::_M_copy_from_string,
	bitset<>::_M_copy_to_string, bitset<>::operator>>): Reverse loop.

	* testsuite/25_algorithms/heap/heap.cc (test01): Always enable
	complexity checks.
	* testsuite/18_support/numeric_limits/specialization.cc: Avoid
	unused parameter warning.
	* testsuite/18_support/numeric_limits/traps.cc: Acoid unused variable
	warning.
	* testsuite/ext/malloc_allocator/deallocate_global.cc: Fix format
	string.
	* testsuite/ext/malloc_allocator/deallocate_local.cc: Likewise.
	* testsuite/ext/array_allocator/2.cc: Remove unused variable.
	* testsuite/tr1/3_function_objects/mem_fn.cc: Avoid unused variable
	warnings.
	* testsuite/tr1/6_containers/unordered/instantiate/set.cc: Just
	instantiate.
	* testsuite/tr1/6_containers/unordered/instantiate/map.cc: Likewise.
	* testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Likewise.
	* testsuite/tr1/6_containers/unordered/instantiate/multiset.cc:
	Likewise.
	* testsuite/tr1/6_containers/unordered/instantiate/multimap.cc:
	Likewise.
	* testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc:
	Avoid unused variable warnings.
	* testsuite/tr1/6_containers/array/requirements/zero_sized_arrays.cc:
	Likewise.
	* testsuite/thread/18185.cc: Likewise.
	* testsuite/27_io/ios_base/storage/11584.cc: Likewise; avoid comparison
	between signed and unsigned warning.
	* testsuite/27_io/types/1.cc: Avoid unused variable warnings.
	* testsuite/testsuite_allocator.h (check_new): Likewise.
	(check_deallocate_null): Adjust return type.
	* testsuite/testsuite_hooks.h (bitmask_operators): Avoid unused
	variable warnings.
	* testsuite/21_strings/c_strings/wchar_t/24559.cc: Avoid unused
	variable warning.

2005-12-28  Chris Jefferson  <chris@bubblescope.net>

	* include/std/std_bitset.h (bitset<0>::set, bitset<0>::reset,
	bitset<0>::flip, bitset<0>::test): Add inline specializations for
	bitset<0>.

	* testsuite/tr1/6_containers/unordered/insert/multiset_range.cc
	(test01): Add static cast.
	* testsuite/tr1/6_containers/unordered/insert/set_range.cc
	(test01): Likewise.
	* testsuite/testsuite_hooks.h (operator==(NonDefaultConstructible,
	NonDefaultConstructible), operator<(NonDefaultConstructible,
	NonDefaultConstrictible)): Avoid unused parameter warning.

2005-12-26  Chris Jefferson  <chris@bubblescope.net>

	* include/ext/mt_allocator.h (__mt_alloc::__mt_alloc): Remove
	name of unused parameter.
	* include/bits/stream_iterator.h (istream_iterator::istream_iterator):
	Construct _M_value.
	* include/debug/functions.h (__check_valid_range): Add
	__attribute__((unused)).
	* include/tr1/hashtable (hashtable::end): Remove name of unused
	parameter.
	* include/tr1/tuple_iterate.h (tuple::tuple): Likewise.
	(tuple::operator=): Add __attribute__((unused)).
	* include/tr1/functional (Fnv_hash<4>::hash): Add static_cast.
	(Fnv_hash<8>::hash): Likewise.

	* testsuite/25_algorithms/iter_swap/20577.cc (swap): Remove name of
	unused parameter.
	* testsuite/25_algorithms/unique_copy/check_type.cc (S2::S2,X2::X2):
	Likewise.
	* testsuite/22_locale/ctype/narrow/char/19955.cc (do_narrow): Likewise.
	* testsuite/22_locale/ctype/is/char/9858.cc (Derived::do_is, 
	Derived::do_scan_is, Derived::do_scan_not, Derived2::do_is,
	Derived2::do_scan_is, Derived2::do_scan_not): Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/char/12439_1.cc (TP::do_put):
	Likewise.
	* testsuite/22_locale/time_put/put/char/12439_3.cc (TP::do_put):
	Likewise.
	* testsuite/testsuite_io.h (fail_num_get::do_get, fail_num_put::do_put):
	Likewise.
	* testsuite/25_algorithms/find/17441.cc (find): Likewise.
	* testsuite/23_containers/vector/cons/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/vector/bool/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/list/cons/clear_allocator.cc
	(clear_alloc::clear_alloc): Likewise.
	* testsuite/23_containers/set/modifiers/16728.cc (test_container):
	Likewise.
	* testsuite/27_io/basic_ios/cons/char/3.cc (char_traits::to_char_type,
	to_int_type): Likewise.
	* testsuite/27_io/basic_filebuf/imbue/12206.cc (codecvt::do_out, do_in,
	do_unshift, do_length): Likewise.
	* testsuite/21_strings/basic_string/capacity/1.cc 
	(operator==(A<T>,A<T>), operator<(A<T>,A<T>),
	char_traits::to_char_type, char_traits::to_int_type): Likewise
	* testsuite/testsuite_character.h (ctype::do_is, ctype::do_scan_is,
	ctype::do_scan_not, do_toupper, do_tolower): Likewise.
	* testsuite/25_algorithms/replace_copy/check_type.cc (Z::operator=):
	Add missing return statement.
	* testsuite/25_algorithms/replace_copy_if/check_type.cc (Z::operator=):
	Likewise.
	* testsuite/testsuite_iterators.h (output_iterator_wrapper::operator=,
	random_access_iterator_wrapper::operator==): Likewise.
	* testsuite/20_util/functional/binders/1.cc (s::f_int_int_const,
	s::f_int_int, s::f_int_void_const, s::f_int_void): Likewise.
	* testsuite/27_io/types/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/write/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/write/char/1.cc (test01): Likewise.
	* testsuite/21_strings/c_strings/wchar_t/24559.cc (main): Likewise.
	* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc (check): Add static
	cast.
	* testsuite/27_io/basic_istream/ignore/char/2.cc (check): Likewise.
	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc (check): Likewise.
	* testsuite/27_io/basic_istream/getline/char/5.cc (check): Likewise.
	* testsuite/testsuite_allocator.h (check_new): Likewise.
	(check_deallocate_null): Add missing return value.
	* testsuite/ext/pool_allocator/allocate_chunk.cc (test01):
	Make variable unsigned.
	* testsuite/23_containers/vector/modifiers/erase/1.cc (N,N1,N2,N3,N4,
	N5,test01): Likewise.
	* testsuite/26_numerics/valarray/valarray_subset_assignment.cc
	(check_array): Likewise.
	(main): Removed unused variable.
	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc (test05):
	Removed unused variable.
	* testsuite/27_io/basic_ostream/flush/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/flush/char/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/endl/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/endl/char/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/ends/wchar_t/1.cc (test01): Likewise.
	* testsuite/27_io/basic_ostream/ends/char/1.cc (test01): Likewise.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/
	assign/shared_ptr.cc (test01): Correct return type.	
	* testsuite/27_io/basic_filebuf/close/char/2.cc (test_02):
	Add default value to close_num.

2005-12-24  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (fill(const _Deque_iterator&,
	const _Deque_iterator&, const _Tp&)): Deal, correctly, only
	with iterators (leave const_iterators alone).

2005-12-24  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
	const _Deque_iterator<>&, const _Tp&)): Add.

	* testsuite/23_containers/deque/cons/assign/1.cc: New.

2005-12-19  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_deque.h (deque<>::resize, _M_fill_assign):
	Avoid troubles with ADL, user defined operators and _Deque_iterator.
	(operator-(const _Deque_iterator<>&, const _Deque_iterator<>&):
	Add overload for left and right iterators of the same type.
	* include/bits/deque.tcc (erase(iterator)): Avoid troubles with ADL,
	user defined operators and _Deque_iterator.
	* testsuite/23_containers/deque/types/1.cc: Add.
	
	* include/bits/deque.tcc (_M_insert_aux(iterator, size_type,
	const value_type&)): Qualify with std:: fill call.

2005-12-18  Benjamin Kosnik  <bkoz@redhat.com>
	
	* include/bits/c++config: Add in revised namespace associations.
	_GLIBCXX_BEGIN_NAMESPACE: New macro.
	_GLIBCXX_END_NAMESPACE: Same.
	_GLIBCXX_BEGIN_NESTED_NAMESPACE: Same.
	_GLIBCXX_END_NESTED_NAMESPACE: Same.
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS]): Add gnu-versioned-namespace.
	* configure: Regenerated.
	* config.h.in: Same.
	* config/abi/pre/gnu-versioned-namespace.ver: New.
	* config/abi/pre/gnu.ver (GLIBCXX_3.4.7): Add exports for nested
	debug mode items. 
	* include/Makefile.am (${host_builddir}/c++config.h): Fill in
	values for __GLIBCXX__ and _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION.
	* include/Makefile.in: Regnerate.
	* src/compatibility.cc: Alias new, nested definitions to exported
	symbols from non-nested __gnu_debug.
	* src/Makefile.am:  Add in ENABLE_SYMVERS_GNU_NAMESPACE.
	* src/Makefile.in: Regenerate.
	
	* docs/html/debug_mode.html: Revise for nested design.
	* docs/html/debug.html: Use debug qualifications instead of
	__gnu_debug.
	* docs/html/configopts.html: Revise documentation for
	--enable-symvers.
	
	* include/debug/formatter: Simplify namespace qualifications for
	current, nested-only reality. Add top-level namespace alias,
	namespace debug, for debug-mode containers.
	* include/debug/safe_iterator.h: Same.	
	* include/debug/set.h: Same.
	* include/debug/hash_multimap.h: Same.
	* include/debug/hash_set.h: Same.
	* include/debug/bitset
	* include/debug/safe_sequence.h: Same.
	* include/debug/multiset.h: Same.
	* include/debug/safe_base.h: Same.
	* include/debug/functions.h: Same.
	* include/debug/safe_iterator.tcc
	* include/debug/hash_multiset.h: Same.
	* include/debug/vector
	* include/debug/map.h: Same.
	* include/debug/deque
	* include/debug/hash_map.h: Same.
	* include/debug/string
	* include/debug/macros.h: Same.
	* include/debug/list
	* include/debug/debug.h: Same.
	* include/debug/multimap.h: Same.	
	* src/debug.cc: Same.
	* testsuite/23_containers/vector/invalidation/1.cc: Cleanups.
	* testsuite/23_containers/vector/invalidation/2.cc: Same.
	* testsuite/23_containers/vector/invalidation/3.cc: Same.
	* testsuite/23_containers/vector/invalidation/4.cc: Same.
	* testsuite/23_containers/deque/invalidation/1.cc: Same.
	* testsuite/23_containers/deque/invalidation/2.cc: Same.
	* testsuite/23_containers/deque/invalidation/3.cc: Same.
	* testsuite/23_containers/deque/invalidation/4.cc: Same.
	* testsuite/23_containers/multiset/invalidation/1.cc: Same.
	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
	* testsuite/23_containers/multimap/invalidation/1.cc: Same.
	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
	* testsuite/23_containers/bitset/invalidation/1.cc: Same.
	* testsuite/23_containers/bitset/cons/16020.cc: Same.
	* testsuite/23_containers/bitset/operations/13838.cc: Same.
	* testsuite/23_containers/list/invalidation/1.cc: Same.
	* testsuite/23_containers/list/invalidation/2.cc: Same.
	* testsuite/23_containers/list/invalidation/3.cc: Same.
	* testsuite/23_containers/list/invalidation/4.cc: Same.
	* testsuite/23_containers/set/invalidation/1.cc: Same.
	* testsuite/23_containers/set/invalidation/2.cc: Same.
	* testsuite/23_containers/map/invalidation/1.cc: Same.
	* testsuite/23_containers/map/invalidation/2.cc: Same.
	* testsuite/23_containers/map/insert/16813.cc: Same.
	
	* include/bits/basic_ios.h: Use _GLIBCXX_BEGIN_NAMESPACE(std) and
	friends.	
	* include/bits/stl_list.h: Same.
	* include/bits/stl_map.h: Same.
	* include/bits/stl_algobase.h: Same.
	* include/bits/localefwd.h: Same.
	* include/bits/valarray_array.tcc: Same.
	* include/bits/valarray_after.h: Same.
	* include/bits/gslice_array.h: Same.
	* include/bits/stl_queue.h: Same.
	* include/bits/gslice.h: Same.
	* include/bits/locale_facets.tcc: Same.
	* include/bits/locale_classes.h: Same.
	* include/bits/stl_set.h: Same.
	* include/bits/locale_facets.h: Same.
	* include/bits/stl_stack.h: Same.
	* include/bits/stl_iterator_base_types.h: Same.
	* include/bits/stl_heap.h: Same.
	* include/bits/indirect_array.h: Same.
	* include/bits/atomicity.h: Same.
	* include/bits/stream_iterator.h: Same.
	* include/bits/concurrence.h: Same.
	* include/bits/basic_string.h: Same.
	* include/bits/stl_multimap.h: Same.
	* include/bits/stl_pair.h: Same.
	* include/bits/basic_ios.tcc: Same.
	* include/bits/stl_raw_storage_iter.h: Same.
	* include/bits/stl_vector.h: Same.
	* include/bits/stl_numeric.h: Same.
	* include/bits/ios_base.h: Same.
	* include/bits/stl_deque.h: Same.
	* include/bits/istream.tcc: Same.
	* include/bits/postypes.h: Same.
	* include/bits/stl_multiset.h: Same.
	* include/bits/mask_array.h: Same.
	* include/bits/stl_uninitialized.h: Same.
	* include/bits/ostream.tcc: Same.
	* include/bits/slice_array.h: Same.
	* include/bits/boost_concept_check.h: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/stl_iterator_base_funcs.h: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/stl_algo.h: Same.
	* include/bits/stringfwd.h: Same.
	* include/bits/c++config
	* include/bits/stl_iterator.h: Same.
	* include/bits/valarray_array.h: Same.
	* include/bits/stl_tempbuf.h: Same.
	* include/bits/vector.tcc: Same.
	* include/bits/deque.tcc: Same.
	* include/bits/stl_bvector.h: Same.
	* include/bits/basic_string.tcc: Same.
	* include/bits/list.tcc: Same.
	* include/bits/streambuf_iterator.h: Same.
	* include/bits/valarray_before.h: Same.
	* include/bits/stl_construct.h: Same.
	* include/bits/stl_function.h: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/streambuf.tcc: Same.
	* include/bits/allocator.h: Same.
	* include/bits/stl_tree.h: Same.
	* include/bits/fstream.tcc: Same.
	* include/bits/stl_relops.h: Same.
	* include/bits/functexcept.h: Same.
	* include/std/std_valarray.h: Same.
	* include/std/std_iostream.h: Same.
	* include/std/std_streambuf.h: Same.
	* include/std/std_bitset.h: Same.
	* include/std/std_iosfwd.h: Same.
	* include/std/std_iomanip.h: Same.
	* include/std/std_fstream.h: Same.
	* include/std/std_limits.h: Same.
	* include/std/std_stdexcept.h: Same.
	* include/std/std_istream.h: Same.
	* include/std/std_complex.h: Same.
	* include/std/std_memory.h: Same.
	* include/std/std_ostream.h: Same.
	* include/std/std_sstream.h: Same.
	* include/c_std/std_csignal.h: Same.
	* include/c_std/std_cstdlib.h: Same.
	* include/c_std/std_cstdio.h: Same.
	* include/c_std/std_cstdarg.h: Same.
	* include/c_std/std_cctype.h: Same.
	* include/c_std/std_cmath.h: Same.
	* include/c_std/std_ctime.h: Same.
	* include/c_std/std_clocale.h: Same.
	* include/c_std/std_csetjmp.h: Same.
	* include/c_std/std_cwchar.h: Same.
	* include/c_std/std_cstring.h: Same.
	* include/c_std/std_cstddef.h: Same.
	* include/c_std/std_cwctype.h: Same.
	* include/backward/iterator.h: Same.
	* include/backward/set.h: Same.
	* include/backward/hashtable.h: Same.
	* include/backward/fstream.h: Same.
	* include/backward/tempbuf.h: Same.
	* include/backward/istream.h: Same.
	* include/backward/bvector.h: Same.
	* include/backward/stack.h: Same.
	* include/backward/rope.h: Same.
	* include/backward/complex.h: Same.
	* include/backward/ostream.h: Same.
	* include/backward/heap.h: Same.
	* include/backward/iostream.h: Same.
	* include/backward/function.h: Same.
	* include/backward/multimap.h: Same.
	* include/backward/pair.h: Same.
	* include/backward/stream.h: Same.
	* include/backward/iomanip.h: Same.
	* include/backward/strstream
	* include/backward/slist.h: Same.
	* include/backward/tree.h: Same.
	* include/backward/vector.h: Same.
	* include/backward/deque.h: Same.
	* include/backward/multiset.h: Same.
	* include/backward/list.h: Same.
	* include/backward/map.h: Same.
	* include/backward/algobase.h: Same.
	* include/backward/hash_map.h: Same.
	* include/backward/algo.h: Same.
	* include/backward/queue.h: Same.
	* include/backward/streambuf.h: Same.
	* src/allocator-inst.cc: Same.
	* src/complex_io.cc: Same.
	* src/localename.cc: Same.
	* src/limits.cc: Same.
	* src/ios_failure.cc: Same.
	* src/locale-misc-inst.cc: Same.
	* src/streambuf-inst.cc: Same.
	* src/misc-inst.cc: Same.
	* src/concept-inst.cc: Same.
	* src/ios_locale.cc: Same.
	* src/pool_allocator.cc: Same.
	* src/fstream-inst.cc: Same.
	* src/istream-inst.cc: Same.
	* src/string-inst.cc: Same.
	* src/locale_init.cc: Same.
	* src/ctype.cc: Same.
	* src/strstream.cc: Same.
	* src/ostream-inst.cc: Same.
	* src/functexcept.cc: Same.
	* src/streambuf.cc: Same.
	* src/sstream-inst.cc: Same.
	* src/ios.cc: Same.
	* src/valarray-inst.cc: Same.
	* src/locale.cc: Same.
	* src/tree.cc: Same.
	* src/stdexcept.cc: Same.
	* src/istream.cc: Same.
	* src/compatibility.cc: Same.
	* src/locale-inst.cc: Same.
	* src/globals_io.cc: Same.
	* src/list.cc: Same.
	* src/ios_init.cc: Same.
	* src/locale_facets.cc: Same.
	* src/codecvt.cc: Same.

	* include/tr1/unordered_map: Use _GLIBCXX_BEGIN_NAMESPACE(tr1).
	* include/tr1/boost_shared_ptr.h: Same.
	* include/tr1/tuple
	* include/tr1/hashtable
	* include/tr1/type_traits_fwd.h: Same.
	* include/tr1/unordered_set
	* include/tr1/functional
	* include/tr1/ref_fwd.h: Same.
	* include/tr1/utility
	* include/tr1/type_traits
	* include/tr1/array

	* include/ext/hashtable.h: Use _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx).
	* include/ext/typelist.h: Same.
	* include/ext/hash_map: Same.
	* include/ext/rc_string_base.h: Same.
	* include/ext/pool_allocator.h: Same.
	* include/ext/iterator: Same.
	* include/ext/rb_tree: Same.
	* include/ext/numeric: Same.
	* include/ext/vstring.tcc: Same.
	* include/ext/sso_string_base.h: Same.
	* include/ext/stdio_filebuf.h: Same.
	* include/ext/algorithm: Same.
	* include/ext/codecvt_specializations.h: Same.
	* include/ext/new_allocator.h: Same.
	* include/ext/array_allocator.h: Same.
	* include/ext/vstring_util.h: Same.
	* include/ext/vstring_fwd.h: Same.
	* include/ext/mt_allocator.h: Same.
	* include/ext/debug_allocator.h: Same.
	* include/ext/slist: Same.
	* include/ext/stdio_sync_filebuf.h: Same.
	* include/ext/hash_fun.h: Same.
	* include/ext/malloc_allocator.h: Same.
	* include/ext/functional: Same.
	* include/ext/bitmap_allocator.h: Same.
	* include/ext/pod_char_traits.h: Same.
	* include/ext/vstring.h: Same.
	* include/ext/ropeimpl.h: Same.
	* include/ext/hash_set: Same.
	* include/ext/memory: Same.
	* include/ext/rope: Same.
	* include/bits/boost_concept_check.h: Same.
	* include/bits/stl_iterator.h: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/concurrence.h: Same.
	* include/bits/atomicity.h: Same.
	* config/locale/gnu/numeric_members.cc: Same.
	* config/locale/gnu/collate_members.cc: Same.
	* config/locale/gnu/ctype_members.cc: Same.
	* config/locale/gnu/c_locale.cc: Same.
	* config/locale/gnu/codecvt_members.cc: Same.
	* config/locale/gnu/messages_members.cc: Same.
	* config/locale/gnu/c_locale.h: Same.
	* config/locale/gnu/monetary_members.cc: Same.
	* config/locale/gnu/time_members.cc: Same.
	* config/locale/ieee_1003.1-2001/c_locale.h: Same.
	* config/locale/generic/numeric_members.cc: Same.
	* config/locale/generic/collate_members.cc: Same.
	* config/locale/generic/ctype_members.cc: Same.
	* config/locale/generic/c_locale.cc: Same.
	* config/locale/generic/codecvt_members.cc: Same.
	* config/locale/generic/messages_members.cc: Same.
	* config/locale/generic/c_locale.h: Same.
	* config/locale/generic/monetary_members.cc: Same.
	* config/locale/generic/time_members.cc: Same.
	* config/os/aix/atomicity.h: Same.
	* config/os/irix/atomicity.h: Same.
	* config/cpu/powerpc/atomicity.h: Same.
	* config/cpu/cris/atomicity.h: Same.
	* config/cpu/ia64/atomicity.h: Same.
	* config/cpu/alpha/atomicity.h: Same.
	* config/cpu/m68k/atomicity.h: Same.
	* config/cpu/hppa/atomicity.h: Same.
	* config/cpu/mips/atomicity.h: Same.
	* config/cpu/sparc/atomicity.h: Same.
	* config/cpu/i386/atomicity.h: Same.
	* config/cpu/i486/atomicity.h: Same.
	* config/cpu/sh/atomicity.h: Same.
	* config/cpu/generic/atomicity.h: Same.
	* config/cpu/s390/atomicity.h: Same.
	* config/io/c_io_stdio.h: Same.
	* config/io/basic_file_stdio.cc: Same.
	* config/io/basic_file_stdio.h: Same.	
	* src/misc-inst.cc: Same.
	* src/concept-inst.cc: Same.
	* src/ext-inst.cc: Same.
	* src/string-inst.cc: Same.
	* src/pool_allocator.cc: Same.
	* src/bitmap_allocator.cc: Same.
	* src/mt_allocator.cc: Same.
	* libsupc++/exception: Same.
	* libsupc++/vterminate.cc: Same.
	* testsuite/ext/hash_map/1.cc: Explicitly qualify __gnu_cxx::hash_map.
	* testsuite/ext/hash_map/14648.cc: Same.	

	* libsupc++/eh_alloc.cc: Correct comment line spacing.
		
2005-12-18  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (__copy_normal::copy_n): Uglify
	to __copy_n.
	(__copy_backward::copy_b): Likewise to __copy_b.
	(__copy_backward_normal::copy_b_n): Likewise to __copy_b_n.
	(copy, __copy_backward_aux, copy_backward): Adjust.

2005-12-18  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algo.h (partial_sort_copy): Add
	_BinaryPredicateConcept<_Compare, _InputValueType, _OutputValueType>
	(merge, set_union, set_symmetric_difference): Add
	_OutputIteratorConcept<_OutputIterator, _ValueType2>.
	(binary_search): Remove redundant _BinaryPredicateConcept<_Compare,
	_ValueType, _Tp>, taken care by lower_bound.
	* include/bits/stl_algo.h: Cosmetic changes.

2005-12-18  Paolo Carlini  <pcarlini@suse.de>
	    Howard Hinnant  <hhinnant@apple.com>

	* include/bits/stl_algo.h (merge, includes, set_union,
	set_intersection, set_difference, set_symmetric_difference):
	Fix concept checks.

2005-12-18  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algo.h (partial_sort_copy, lower_bound,
	upper_bound, equal_range, binary_search): Fix concept checks.

2005-12-18  Benjamin Kosnik  <bkoz@redhat.com>

	* config/abi/post: New.
	* config/abi/*-linux-gnu: Move to..
	* config/abi/post/*-linux-gnu: ... here.	
	* config/abi/pre: New.
	* config/linker-map.gnu: Move to ..
	* config/abi/pre/gnu.ver: ... here.	
	* config/linker-map.dummy: Move to..
	* config/abi/pre/none.ver: ... here.
	* src/Makefile.am: Use ENABLE_SYMVERS_GNU,
	ENABLE_SYMVERS_DARWIN, ENABLE_SYMVERS_GNU_NAMESPACE.
	Use libstdc++-symbols.ver instead of libstdc++-symbol.ver.
	* src/Makefile.in: Regnerate.
	* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Adjust paths for new
	placement of abi baseline files.
	(GLIBCXX_ENABLE_SYMVERS): Add ENABLE_SYMVERS, ENABLE_SYMVERS_GNU,
	ENABLE_SYMVERS_DARWIN.  SYMVER_MAP to SYMVER_FILE.
	* configure: Regnerate.
	* config.h.in: Regnerate.
	* src/compatibility.cc: Adjust macro usage.
	
2005-12-17  Benjamin Kosnik  <bkoz@redhat.com>

        * src/io-inst.cc: Separate instantiations into...
        * src/ios-inst.cc: .. this.
        * src/iostream-inst.cc: ... and this.
        * src/Makefile.am (sources): Update.
        * src/Makefile.in: Regenerate.	

2005-12-17  Benjamin Kosnik  <bkoz@redhat.com>
	
	PR libstdc++/25472
        * include/c_std/std_cstdlib.h: Fix for freestanding.

2005-12-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/libstdc++-dg/normal.exp: Rename to..
	* testsuite/libstdc++-dg/conformance.exp: ... this.

2005-12-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_vector.h (vector(const vector&)): Use
	_M_get_Tp_allocator.
	* include/bits/stl_deque.h (deque(const deque&)): Likewise.
	(_M_destroy_data): Adjust.

2005-12-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_deque.h (deque<>::_M_erase_at_end,
	_M_erase_at_begin, _M_destroy_data, _M_destroy_data_dispatch,
	_M_destroy_data_aux): New, optimize erase at begin() / end() and
	consistently use the "segmented iterator" optimization.
	(deque<>::~deque(), resize, clear, _M_assign_aux, _M_fill_assign):
	Use the above.
	* include/bits/deque.tcc (deque<>::operator=, _M_assign_aux): Same.
	(erase(iterator, iterator)): Likewise, clean-up.
	(erase(iterator)): Tweak, don't call copy unnecessarily. 
	(_M_destroy_data_aux): Define.
	* testsuite/23_containers/deque/modifiers/erase/1.cc: New.
	* testsuite/23_containers/deque/modifiers/erase/2.cc: Likewise.

2005-12-17  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* include/bits/valarray_after.h (_Expr<>::operator[](slice)): 
	Don't assume the closure implements general indexing, as a matter
	of fact, most of them don't.
	(_Expr<>::operator[](const gslice&)): Likewise.
	(_Expr<>::operator[](const valarray<bool>&)): Likewise.
	(_Expr<>::operator[](const valarray<size_t>&)): Likewise.
	(_Expr<>::shift): Fix thinko.
	(_Expr<>::cshift): Likewise.
	(_Expr<>::apply): Likewise.

2005-12-16  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/tr1/4_metaprogramming/type_properties/is_empty/is_empty.cc:
	Fix class NonEmptyClassTwo.

2005-12-15  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_vector.h (vector<>::_M_get_Tp_allocator): Change
	to return by ref and add non const version.
	* include/bits/stl_deque.h (deque<>::_M_get_Tp_allocator): Likewise.

2005-12-15  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/25421
	* config/locale/gnu/c_locale.cc (_S_destroy_c_locale): Check
	for null argument.
	* testsuite/22_locale/facet/25421.cc: New.

2005-12-13  Carlos O'Donell <carlos@codesourcery.com>

	* include/std/std_limits.h (struct numeric_limits):
	Use __DBL_HAS_DENORM__, __FLT_HAS_DENORM__, __LDBL_HAS_DENORM__.

2005-12-10  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h (__sso_string_base<>::_M_compare):
	Add, specialized for char and wchar_t to immediately return true
	when a string is compared to itself.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_compare):
	Likewise, for the same _Rep.
	* include/ext/vstring.h (compare(const string&)): Use it.

	* include/ext/sso_string_base.h (__sso_string_base<>::_M_destroy):
	Deallocate passed size + 1.
	(_M_dispose, _M_reserve): Adjust.

2005-12-09  Paolo Carlini  <pcarlini@suse.de>
	    Howard Hinnant  <hhinnant@apple.com>

	PR libstdc++/25288
	* include/bits/stl_list.h (list<>::_M_insert_dispatch, _M_fill_insert):
	Remove.
	(_M_initialize_dispatch, _M_fill_initialize): Add.
	(list(size_type, const value_type&, const allocator_type&),
	list(const list&), list(_InputIterator, _InputIterator,
	const allocator_type&): Use the latter.
	(insert(iterator, size_type, const value_type&), insert(iterator,
	_InputIterator, _InputIterator)): Use construction & splice.
	* testsuite/23_containers/list/modifiers/insert/25288.cc: New.
	* testsuite/testsuite_allocator.h (class throw_allocator): Add.

	* include/bits/stl_list.h (list<>::insert, erase): Fix wrong comments.

2005-12-08  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_vector.h (vector<>::size, resize, capacity,
	operator[]): Avoid troubles with ADL, user defined operators
	and __normal_iterator.
	(_M_erase_at_end): Fix to take a pointer.
	(clear): Adjust call.
	* include/bits/vector.tcc (vector<>::insert(iterator, const
	value_type&), erase(iterator, iterator), operator=(const
	vector<>&), _M_assign_aux(input_iterator_tag), _M_insert_aux,
	_M_fill_insert, _M_range_insert): Likewise.
	(_M_fill_assign, _M_assign_aux(forward_iterator_tag)): Adjust
	_M_erase_at_end call.
	* testsuite/23_containers/vector/types/1.cc: New.

2005-12-08  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24617
	* include/bits/stl_vector.h (vector<>::_M_erase_at_end): New.
	(vector<>::clear, resize): Use it.
	* include/bits/vector.tcc (vector<>::erase(iterator, iterator),
	_M_fill_assign, _M_assign_aux): Likewise.

	* testsuite/23_containers/vector/modifiers/erase/1.cc: New.

2005-12-07  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/configopts.html ([--enable-libstdcxx-allocator]):
	Mention the SGI pooled allocator.

2005-12-06  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.h (insert(iterator, _CharT),
	erase(iterator), erase(iterator, iterator)): Avoid troubles
	with ADL, user defined operators and __normal_iterator.
	* include/bits/stl_iterator.h (operator-(const __normal_iterator
	<_Iterator, _Container>&, const __normal_iterator<_Iterator,
	_Container>&)): Add overload for left and right iterators of
	the same type.
	* include/debug/safe_iterator.h (operator-(const _Safe_iterator
	<_Iterator, _Sequence>&, const _Safe_iterator<_Iterator,
	_Sequence>&)): Likewise.
	* testsuite/21_strings/basic_string/types/1.cc: New.

2005-12-05  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h (__sso_string_base<>::_M_assign):
	Simplify, avoid pointless reallocations.

2005-12-04  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve):
	Simplify.

2005-12-04  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/vstring.h (__versa_string<>::operator+, all
	versions): Move out of line...
	* include/ext/vstring.tcc (__versa_string<>::operator+): ...
	here; consistently use reserve for the benefit of sso_string_base;
	prefer push_back to single-char append when appropriate.

	* include/ext/vstring.h (__versa_string<>::push_back): Don't
	call _M_reserve, _M_mutate instead.
	(reserve): Just forward to _M_reserve.
	* include/ext/vstring.tcc (__versa_string<>::_M_reserve): Remove.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_reserve): Also
	do the initial checks (first on length, in case __res == capacity).
	* include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve:
	Likewise; don't call _M_set_length unnecessarily.

2005-12-04  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/vstring.h (__versa_string<>::_M_append): New.
	(append(const __versa_string&), append(const __versa_string&,
	size_type, size_type), append(const _CharT*, size_type),
	append(const _CharT*)): Use it.
	(append(size_type, _CharT)): Delegate to _M_replace_aux.
	(assign(const __versa_string&, size_type, size_type),
	assign(const _CharT*), replace(size_type, size_type,
	const _CharT*, size_type)): Forward to _M_replace.
	* include/ext/vstring.tcc (__versa_string<>::_M_append):
	Define, core append functionality.
	(_M_replace): Simplify, move __s == 0 case to _M_replace_aux.
	(_M_replace_aux): Reorganize, don't call _M_replace.

2005-12-04  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/vstring.tcc (__versa_string<>::_M_replace):
	Perform _M_check_length at the beginning and remove it from ...
	(replace, _M_replace_dispatch, _M_replace_aux, assign): ... here.
	(assign): Now move inline.
	(resize): Don't call _M_check_length redundantly, append does.

2005-12-04  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h (__sso_string_base<>::_M_get_allocator):
	Add non const version.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_get_allocator):
	Likewise.
	
	* include/ext/sso_string_base.h (__sso_string_base<>::_M_erase): Add.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_erase): Likewise.
	(_M_leak_hard): Use it.
	* include/ext/vstring.h (__versa_string<>::clear, erase, all
	versions): Use it.
	* include/ext/vstring.tcc (__versa_string<>::resize): Likewise.

	* include/ext/vstring.h (__versa_string<>::_M_replace_safe):
	Remove.
	* include/ext/vstring.h (__versa_string<>::_M_replace): New, does
	the in-place work or delegates to _M_mutate in case of reallocation.
	* include/ext/vstring.tcc (__versa_string<>::_M_replace_safe):
	Remove.
	* include/ext/vstring.tcc (__versa_string<>::_M_replace): Define.
	(assign, replace, _M_replace_dispatch, _M_replace_aux): Use it.
	* include/ext/sso_string_base.h (__sso_string_base<>::_M_mutate):
	Change to manage only reallocations.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_mutate):
	Likewise.

	* include/ext/vstring.h (__versa_string<>::insert(size_type,
	const __versa_string&), insert(size_type, const __versa_string&,
	size_type, size_type), insert(size_type, const _CharT*, size_type),
	insert(size_type, const _CharT*)): Delegate to replace.

	* include/ext/vstring.h (__versa_string<>::reserve): Move out of
	line.
	* include/ext/vstring.tcc (__versa_string<>::reserve): Do the
	checks and call _M_reserve.
	* include/ext/vstring.h (__versa_string<>::append): Call _M_reserve
	instead of reserve.
	* include/ext/vstring.tcc (__versa_string<>::append, all versions):
	Likewise.
	* include/ext/sso_string_base.h (__sso_string_base<>::_M_reserve):
	Adjust.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_reserve):
	Likewise.

2005-12-02  David Billinghurst (David.Billinghurst@riotinto.com)

	PR testsuite/25193
	* testsuite/lib/libstdc++.exp (libstdc++-dg-test): Catch
	error if file cannot be deleted.

2005-11-23  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24975 (basic_string)
	* include/bits/basic_string.h (_Rep::_S_empty_rep): Avoid
	strict-aliasing warnings.

2005-11-22  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24975
	* include/bits/stl_set.h (insert(iterator, const value_type&),
	erase(iterator), erase(iterator, iterator)): Don't break aliasing
	rules casting to _Rep_iterator&, forward to _Rb_tree facilities.
	* include/bits/stl_multiset.h (insert(iterator, const value_type&),
	erase(iterator), erase(iterator, iterator)): Likewise.
	* include/bits/stl_tree.h (_Rb_tree<>::_M_insert(_Const_Base_ptr,
	_Const_Base_ptr, const value_type&), insert_unique(const_iterator,
	const value_type&), insert_equal(const_iterator, const value_type&),
	erase(const_iterator), erase(const_iterator, const_iterator)): New,
	_Rb_tree<>::const_iterator counterparts of existing facilities.

2005-11-21  Benjamin Kosnik  <bkoz@redhat.com>
            Ulrich Drepper  <drepper@redhat.com>

	PR libstdc++/23591
	* scripts/create_testsuite_files: Support for "C" test files.
	* testsuite/lib/libstdc++.exp: Same.
	* testsuite/libstdc++-dg/normal.exp: Same.
	* testsuite/ext/mt_allocator/22309_thread.cc: Update names.
	* testsuite/19_diagnostics/23591_thread-1.c: New.
	* testsuite/testsuite_shared.cc: Add tests, rename existing functions.
	* libsupc++/eh_globals.cc: Make global thread local if possible.
	* configure.ac: Use GCC_CHECK_TLS.
	* acinclude.m4: Include tls.m4.
	* configure: Regenerate.
	* config.h.in: Same.
	
2005-11-21  Benjamin Kosnik  <bkoz@redhat.com>

	* libsupc++/del_op.cc: Include c++config.h first.
	* libsupc++/eh_alloc.cc: Same.
	* libsupc++/new_opv.cc: Same.
	* libsupc++/eh_throw.cc: Same.
	* libsupc++/new_op.cc: Same.
	* libsupc++/del_opv.cc: Same.
	* libsupc++/eh_catch.cc: Same.
	* libsupc++/guard.cc: Same.
	* libsupc++/del_opnt.cc: Same.
	* libsupc++/eh_exception.cc: Same.
	* libsupc++/new_opvnt.cc: Same.
	* libsupc++/eh_term_handler.cc: Same.
	* libsupc++/eh_personality.cc: Same.
	* libsupc++/eh_call.cc: Same.
	* libsupc++/new_opnt.cc: Same.
	* libsupc++/del_opvnt.cc: Same.

2005-11-21  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (LTCXXCOMPILE): CXXFLAGS last.
	* libsupc++/Makefile.am: Same.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Same.

2005-11-21  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h: Minor formatting and stylistic fixes.
	(__sso_string_base<>::_M_get_allocator): Return by const ref.
	* include/ext/rc_string_base.h: Likewise.
	(__rc_string_base<>::_M_get_allocator): Return by const ref.
	(__rc_string_base<>::_M_dispose): Take void, use _M_get_allocator.
	(__rc_string_base<>::_M_grab): Take one alloc, use _M_get_allocator.
	(__rc_string_base<>::~__rc_string_base,
	__rc_string_base(const __rc_string_base&), _M_assign, _M_reserve,
	_M_mutate): Adjust.
	* include/ext/vstring_util.h: Minor stylistic fixes.

2005-11-18  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/rc_string_base.h (__rc_string_base<>::_Rep): Avoid the
	anonymous struct extension, adjust everywhere.

	* include/ext/rc_string_base.h (__rc_string_base<>::_S_empty_rep()):
	Just use a static member.
	(__rc_string_base<>::__rc_string_base(), _S_construct): Adjust.

	* include/ext/rc_string_base.h (__rc_string_base<>::_Rep): Use
	anonymous union together with _CharT to fix alignment issues,
	rebind to _Rep and rename _Raw_alloc to _Rep_alloc_type.	
	(__rc_string_base<>::_Rep::_S_create, _M_destroy): Adjust consistently.

	* include/ext/vstring_util.h (__is_null_p): Move inside struct
	__vstring_utility as static _S_is_null_pointer.
	* include/ext/sso_string.h
	(__sso_string_base<>::_M_construct(std::forward_iterator_tag): Adjust.
	* include/ext/rc_string_base.h
	(__rc_string_base<>::_S_construct(std::forward_iterator_tag): Likewise.

	Implement Option 3 of DR 431 for ext/vstring - both available bases.
	* include/bits/cpp_type_traits.h (struct __is_empty): Add.
	* include/ext/vstring.h (__versa_string<>::swap): Delegate to
	this->_M_swap.
	* include/ext/vstring.tcc (__versa_string<>::swap): Remove.
	* include/ext/vstring_util.h (struct __vstring_utility<>): Add struct
	_Alloc_hider<>, augmented of allocator swapping facility, specialized
	to nop for empty allocators.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_swap): Use it.
	(__rc_string_base<>::_M_is_leaked, _M_set_sharable): Change to private.
	* include/ext/sso_string_base.h	(__sso_string_base<>::_M_swap):
	Likewise.
	(__sso_string_base<>::_M_is_leaked, _M_set_sharable): Remove, unused.
	* include/ext/rc_string_base.h (__rc_string_base<>::_M_data(_CharT*):
	Return void.
	* include/ext/sso_string_base.h (__sso_string_base<>::_M_data(_CharT*):
	Likewise.

2005-11-17  Geoffrey Keating  <geoffk@apple.com>

	* config/os/bsd/darwin/ppc-extra.ver: New.
	* src/Makefile.am (libstdc++-symbol.ver): Move outside conditionals,
	and make dependent on port symbol files.
	(libstdc++-symbol.explist): Use the generated .ver file, not
	the template.
	* src/compatibility.cc [APPLE] (__eprintf): New.
	* src/Makefile.in: Regenerate.
	* configure.host (powerpc*-*-darwin*): Define
	port_specific_symbol_files.

2005-11-16  Nathan Sidwell  <nathan@codesourcery.com>

	* libsupc++/eh_arm.cc (__cxa_begin_cleanup): Remember a
	foreign exception too.
	(__gnu_end_cleanup): Recover a foreign exception too.
	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Cope
	with forced unwinding.
	* libsupc++/eh_throw.cc (__cxxabiv1::__cxa_rethrow): Use
	_Unwind_Resume_or_Rethrow for ARM EABI.

2005-11-14  Geoffrey Keating  <geoffk@apple.com>

	* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Don't check for
	shared libgcc for darwin exports.
	* configure: Regenerate.

2005-11-13  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/tr1/boost_shared_ptr.h (get_deleter):
	Declare before shared_ptr.
	(shared_ptr<>): Declare get_deleter as friend.
	(shared_ptr<>:_M_get_deleter): Private.

2005-11-13  Douglas Gregor  <doug.gregor@gmail.com>

	PR libstdc++/24818
	* include/tr1/ref_wrap_iterate.h
	(reference_wrapper::operator()()): Don't dereferene the result of
	get() before calling it; it's already a reference.
	* testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
	Test nullary calls to reference_wrappers.

2005-11-11  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24808
	* include/tr1/type_traits (__is_abstract_helper): Rename to __in_array
	(with complemented logic).
	(is_function): Use it, don't use __conv_helper.
	(is_abstract): Adjust.
	(__conv_helper): Rename to __is_convertible_simple.
	(is_convertible): Adjust.
	* testsuite/testsuite_tr1.h (class IncompleteClass): Add.
	* testsuite/tr1/4_metaprogramming/composite_type_traits/is_object/
	24808.cc: New.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/is_enum/
	24808.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/is_function/
	24808.cc: Likewise.

2005-11-11  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24799
	* include/tr1/functional (hash): Inherit from std::unary_function.
	* testsuite/tr1/6_containers/unordered/hash/24799.cc: New.

	PR libstdc++/24805
	* include/tr1/boost_shared_ptr.h (swap(shared_ptr<>&, shared_ptr<>&),
	swap(weak_ptr<>&, weak_ptr<>&)): Move inside namespace tr1.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
	24805.cc: New.

	PR libstdc++/24809
	* include/tr1/type_traits (__is_polymorhpic_helper): Adjust destructor.
	* testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
	24809.cc: New.

2005-11-10  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared.cc: Adjust, remove xfail.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared2.cc: Likewise.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared3.cc: Likewise.

2005-11-10  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release,
	weak_release): Protect barriers with __GTHREADS.

2005-11-10  Paolo Carlini  <pcarlini@suse.de>
	    Peter Dimov  <pdimov@mmltd.net>

	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release):
	Optimize by manually inlining weak_release.

	* include/tr1/boost_shared_ptr.h (_Sp_counted_base::release,
	weak_release): Use explicit memory barriers.

2005-11-09  Benjamin Kosnik  <bkoz@redhat.com>
	    Paolo Carlini  <pcarlini@suse.de>
            Gabriel Dos Reis  <gdr@integrable-solutions.net>

	PR libstdc++/22203
	* numeric_limits.cc: Split into...
	* numeric_limits/specialization.cc: ..this.
	* numeric_limits/is_iec559.cc: Same.
	* numeric_limits/sign.cc: Same.
	* numeric_limits/quiet_NaN.cc: Same.
	* numeric_limits/digits10.cc: Same.
	* numeric_limits/denorm_min.cc: Same.
	* numeric_limits/min_max.cc: Same.
	* numeric_limits/epsilon.cc: Same.
	* numeric_limits/infinity.cc: Same.
	* numeric_limits/traps.cc: New.

2005-11-09  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/boost_shared_ptr.h: Trivial formatting fixes.

2005-11-08  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): Use
	exe as the executable extension.

	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Change gnu defaults to
	new.
	(GLIBCXX_ENABLE_PCH): Adjust message order.
	* configure: Regenerate.
	
	* scripts/testsuite_flags.in (query): Correct print_usagex typo.

	* include/bits/functexcept.h: Remove argument names.

	* src/mt_allocator.cc: Adjust comment.
	
2005-11-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/18174
	* include/bits/stl_queue.h (priority_queue): Tweak a bit the
	comment describing the container.

2005-11-05  Paolo Carlini  <pcarlini@suse.de>

	* configure.host: Add | rs6000 to the cpu_defines_dir switch,
	consistently with the try_cpu one.

2005-11-05  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/22203
	* include/bits/c++config: Include cpu_defines.h.
	* include/Makefile.am: Add cpu_defines.h to host_headers.
	* configure.host: Add cpu_defines_dir.
	* configure.ac: Use it.
	* config/cpu/powerpc/cpu_defines.h: New.
	* config/cpu/generic/cpu_defines.h: Likewise.
	* configure: Regenerate.
	* Makefile.in: Likewise.
	* include/Makefile.in: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.	
	* testsuite/Makefile.in: Likewise.

2005-11-03  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h (__sso_string_base<>::_M_swap):
	Change the various traits_type::copy call to always copy the
	entire local buffer; return early and don't do a full swap on
	the lengths for two common cases; change two _S_copy to plain
	traits_type::copy.

2005-11-02  Thomas Kho  <tkho@ucla.edu>

	PR libstdc++/23425
	* include/bits/stl_vector.h (vector<>::clear): Open code
	in terms of _Destroy.

2005-11-02  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/vector.tcc (vector<>::_M_fill_assign): Qualify fill_n.

2005-11-01  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24595
	* include/tr1/boost_shared_ptr.h (shared_ptr<>::get_deleter):
	Move out of shared_ptr.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/misc/24595.cc:
	New.

2005-10-30  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20213
	* include/c_std/std_csignal.h: Adjust comment as per 17.4.1.2/4.
	* include/c_std/std_cstdlib.h: Likewise.
	* include/c_std/std_cstdio.h: Likewise.
	* include/c_std/std_cstdarg.h: Likewise.
	* include/c_std/std_cctype.h: Likewise.
	* include/c_std/std_cerrno.h: Likewise.
	* include/c_std/std_cmath.h: Likewise.
	* include/c_std/std_ciso646.h: Likewise.
	* include/c_std/std_ctime.h: Likewise.
	* include/c_std/std_clocale.h: Likewise.
	* include/c_std/std_climits.h: Likewise.
	* include/c_std/std_cassert.h: Likewise.
	* include/c_std/std_csetjmp.h: Likewise.
	* include/c_std/std_cwchar.h: Likewise.
	* include/c_std/std_cfloat.h: Likewise.
	* include/c_std/std_cstring.h: Likewise.
	* include/c_std/std_cstddef.h: Likewise.
	* include/c_std/std_cwctype.h: Likewise.

2005-10-29  Carey Evans  <carey.evans@gmail.com>

	PR libstdc++/22087
	* config/os/djgpp/ctype_inline.h: Fix.
	* config/os/djgpp/ctype_noninline.h: Likewise.

2005-10-28  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24559
	* include/c_std/std_cwchar.h (wcspbrk): Adjust signature.
	* testsuite/21_strings/c_strings/wchar_t/24559.cc: New.

2005-10-25  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 39.
	* docs/html/ext/howto.html: Adjust.

2005-10-21  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24450
	* config/locale/generic/time_members.h (__timepunct<>::
	__timepunct(__c_locale, const char*, size_t)): Avoid leaking
	memory if new throws inside _M_initialize_timepunct.
	* config/locale/gnu/time_members.h (__timepunct<>::
	__timepunct(__c_locale, const char*, size_t)): Likewise.
	* config/locale/gnu/message_members.h (messages<>::
	messages(__c_locale, const char*, size_t)): Rearrange to
	avoid memory leaks.

2005-10-19  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h (_M_swap): Rewrite.

2005-10-19  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/rc_string_base.h (_S_terminal): Remove.
	(_M_set_length): Adjust.
	(_S_max_size): Change to anonymous enum.
	(_M_max_size()): Add, returns the latter.
	* include/ext/sso_string_base.h: Likewise.
	* include/ext/vstring.h (max_size): Adjust.

2005-10-17  Jonathan Wakely  <redi@gcc.gnu.org>

	PR libstdc++/24244
	* include/tr1/boost_shared_ptr.h
	(_Sp_counted_base::_Sp_counted_base()): When __GTHREAD_MUTEX_INIT
	is defined, initialize the mutex.

2005-10-15  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/functional: Add missing #pragma GCC system_header.

2005-10-14  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/hashtable (hashtable::m_erase): Rename to erase_node.
	(hashtable::erase(iterator), erase(const_iterator)): Adjust.

2005-10-13  Richard Earnshaw  <richard.earnsahw@arm.com>

	PR libstdc++/23926
	* acinclude.m4 (port_specific_symbol_files): More symbol versioning
	fixes.
	* configure: Regenerate.

2005-10-13  Hans-Peter Nilsson  <hp@axis.com>

	* testsuite/lib/libstdc++.exp (libstdc++_init): Require
	native testing before setting v3-sharedlib to 1.

2005-10-12  Joe Buck  <Joe.Buck@synopsys.com>

	* docs/html/27_io/howto.html: Use reference to ifstream when
	including iosfwd.

2005-10-11  Andrew Pinski  <pinskia@physics.uc.edu>

	PR libstdc++/23926
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Fix typo in check
	for GNU LD.
	* configure: Regenerate.

2005-10-10  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.ac (libtool_VERSION): To 6:7:0.
	* configure: Regenerate.
	* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.7.
	* config/linker-map.gnu: Export locale::_Impl::_M_install_cache.

2005-10-10  Ian Lance Taylor  <ian@airs.com>

	PR libstdc++/13583
	* include/bits/locale_classes.h (locale::_Impl::_M_install_cache):
	Move out of line.
	* src/locale.cc: Define here, add mutex.

2005-10-09  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24061 (issue 6.19)
	* include/tr1/hashtable (struct node_const_iterator, struct
	hashtable_const_iterator): New, add const variants to enable separate
	overloadings for iterator and const_iterator in unordered_set and
	unordered_multiset (as required by issue 6.19).
	(class hashtable): Change the mutable_iterators template parameter
	to constant_iterators and adjust throughout the logic.
	(hashtable::insert(iterator, const value_type&), erase(iterator)
	erase(iterator, iterator)): New, as per issue 6.19.
	(hashtable::m_erase(node*, node**)): New, called by erase(iterator)
	and erase(const_iterator).
	(hashtable::Insert_Conv_Type): New, used by insert(iterator,
	const value_type&) and insert(const_iterator, const value_type&)
	to delegate the work to insert(const value_type&).
	* include/tr1/unordered_map (class unordered_map, unordered_multimap):
	Adjust typedefs.
	* include/tr1/unordered_set (class unordered_set, unordered_multiset):
	Likewise.
	* testsuite/tr1/6_containers/unordered/erase/24061-map.cc: New.
	* testsuite/tr1/6_containers/unordered/erase/24061-multimap.cc: New.
	* testsuite/tr1/6_containers/unordered/erase/24061-multiset.cc: New.
	* testsuite/tr1/6_containers/unordered/erase/24061-set.cc: New.
	* testsuite/tr1/6_containers/unordered/insert/24061-map.cc: New.
	* testsuite/tr1/6_containers/unordered/insert/24061-multimap.cc: New.
	* testsuite/tr1/6_containers/unordered/insert/24061-multiset.cc: New.
	* testsuite/tr1/6_containers/unordered/insert/24061-set.cc: New.

2005-10-08  Kazu Hirata  <kazu@codesourcery.com>

	Merge from csl-arm-branch:
	2004-12-15  Daniel Jacobowitz  <dan@codesourcery.com>
	* libstdc++-v3/config/linker-map.gnu: Add ARM EABI symbols.

2005-10-07  Paolo Carlini  <pcarlini@suse.de>

	Fix libstdc++/24196 for ext/vstring/rc by returning to the behavior
	of basic_string pre-2003-06-13; remove fully-dynamic-string stuff.
	* include/ext/rc_string_base.h (_M_refcopy): Move inside the
	_Rep class and remove code in macro.
	(__rc_string_base()): Construct with _S_empty_rep()._M_refcopy().
	(_M_dispose, _M_leak_hard): Remove code in macro.
	(_S_construct): Return _S_empty_rep()._M_refcopy() for empty string.
	(_M_grab): Adjust.

	* include/ext/rc_string_base.h (_Rep::_M_refdata()): Minor tweak,
	mark throw().

2005-10-07  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/doxygen/user.cfg.in: Update to Doyxygen 1.4.4.

2005-10-05  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/sso_string_base.h (struct __sso_string_local):
	Remove, actually POD types cannot have user defined constructors
	(being aggregates) and therefore can always be members of unions.
	(class __sso_string_base): Adjust consistently.

2005-10-05  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24198
	* testsuite/27_io/basic_filebuf/3.cc: Use __gnu_test::pod_ushort
	instead.
	* testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
	* testsuite/27_io/basic_fstream/3.cc: Likewise; run the test.
	* testsuite/27_io/basic_ifstream/3.cc: Likewise; run the test.
	* testsuite/27_io/basic_ios/3.cc: Likewise.
	* testsuite/27_io/basic_iostream/3.cc: Likewise; run the test.
	* testsuite/27_io/basic_istream/3.cc: Likewise; run the test.
	* testsuite/27_io/basic_istringstream/3.cc: Likewise; run the test.
	* testsuite/27_io/basic_ofstream/3.cc: Likewise; run the test.
	* testsuite/27_io/basic_ostream/3.cc: Likewise; run the test.
	* testsuite/27_io/basic_ostringstream/3.cc: Likewise; run the test.
	* testsuite/27_io/basic_streambuf/3.cc: Likewise.
	* testsuite/27_io/basic_stringbuf/3.cc: Likewise.
	* testsuite/27_io/basic_stringstream/3.cc: Likewise; run the test.

2005-10-05  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/11729 (DR 280, [Ready])
	* include/bits/stl_iterator.h: Add reverse_iterator global
	functions with two template parameters (operator==, !=, <,
	>, <=, >=, -).
	* testsuite/24_iterators/reverse_iterator/11729.cc: New.
	* docs/html/ext/howto.html: Add an entry for issue 280.

2005-10-03  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/hashtable
	(node_iterator::node_iterator(const node_iterator<,true,>&)): Fix to
	take a "false" (i.e., is_const == false) node_iterator.
	(hashtable_iterator::hashtable_iterator(const hashtable_iterator<,
	true,>&)): Likewise for hashtable_iterator.
	(hashtable::const_local_iterator): Fix typedef (is_const == true).
	(hashtable::const_iterator): Likewise.
	* testsuite/tr1/6_containers/unordered/types/map_iterator.cc: New.
	* testsuite/tr1/6_containers/unordered/types/multimap_iterator.cc: New.
	* testsuite/tr1/6_containers/unordered/types/set_iterator.cc: New.
	* testsuite/tr1/6_containers/unordered/types/multiset_iterator.cc: New.
 
2005-10-02  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24054
	* include/tr1/hashtable (erase(const key_type&)): Return the
	number of elements erased.
	* testsuite/tr1/6_containers/unordered/hashtable/24054.cc: New.

2005-10-01  Kenny Simpson  <theonetruekenny@yahoo.com>

	* include/tr1/tuple_iterate.h (tuple::operator=(const std::pair<>&)):
	Add missing return.

2005-09-30  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/24064
	* include/tr1/hashtable (hash_code_base<>::store_code): Add.
	(hashtable<>::insert(const value_type&)): Use it.
	* testsuite/tr1/6_containers/unordered/hashtable/24064.cc: New.

2005-09-30  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23953
	* include/bits/locale_facets.tcc (__numpunct_cache<>::_M_cache,
	__moneypunct_cache<>::_M_cache): Check that grouping()[0] > 0.
	(__verify_grouping): Do the last check only if __grouping[__min] > 0.
	(__add_grouping<>): End recursion if *__gbeg <= 0.
	* testsuite/22_locale/num_get/get/char/23953.cc: New.
	* testsuite/22_locale/num_get/get/wchar_t/23953.cc: Likewise.
	* testsuite/22_locale/num_put/put/char/23953.cc: Likewise.
	* testsuite/22_locale/num_put/put/wchar_t/23953.cc: Likewise.

2005-09-29  Chris Jefferson <chris@bubblescope.net>

	PR libstdc++/23978
	* include/tr1/tuple_iterate.h (tuple): Add operator=(std::pair).
	* testsuite/tr1/6_containers/tuple/creation_functions/23978.cc: New.
	
	* include/tr1/functional (ref, cref): Make inline.
	* include/tr1/tuple_iterate.h (tie): Correct formatting.
	(make_tuple): Make inline.

2005-09-25  Benjamin Kosnik  <bkoz@redhat.com>
	    Eric Botcazou  <ebotcazou@libertysurf.fr>

	* include/ext/mt_allocator.h
	(__per_type_pool<...true>::_S_initialize_once): Always call
	_M_initialize_once.
	(__common_pool<...true>::_S_initialize_once): Same.

2005-09-23  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/ext/mt_allocator/tune-1.cc: Clarify for single-thread.
	* testsuite/ext/mt_allocator/tune-2.cc: Same.
	* testsuite/ext/mt_allocator/tune-3.cc: Same.
	* testsuite/ext/mt_allocator/tune-4.cc: Same.

2005-09-21  Guillaume Melquiond  <guillaume.melquiond@ens-lyon.fr>

	PR libstdc++/23956
	* include/ext/mt_allocator.h: Remove excess
	policy_type::_S_get_pool calls in constructors.
	
2005-09-18  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23417 (cont)
	* include/bits/stl_tree.h (_Rb_tree_impl<true>): Use member
	initialization list for -Weffc++.

2005-09-16  Janis Johnson  <janis187@us.ibm.com>

	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/23871.cc:
	New.

2005-09-15  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/21674
	PR libstdc++/22205
	PR libstdc++/22222
	* include/bits/c++config: Set _GLIBCXX_STD regardless of __GXX_WEAK__.
	Add in check for __NO_INLINE__ for warning.
	* testsuite/lib/dg-options.exp (dg-require-debug-mode): New.
	* testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): New.
	* testsuite/21_strings/basic_string/element_access/char/21674.cc:
	Use it.
	* testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc:
	Use it.

2005-09-15  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23875
	* include/std/std_ostream.h (operator<<(short), operator<<(unsigned
	short), operator<<(int), operator<<(unsigned int), operator<<(float)):
	Don't call operator<<(long), operator<<(unsigned long), or
	operator<<(double), do the work mandated by the resolution of DR117...
	* include/bits/ostream.tcc (operator<<(short), operator<<(unsigned
	short), operator<<(int), operator<<(unsigned int), operator<<(float)):
	... here.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/pod/23875.cc: New.

2005-09-15  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/testsuite_character.h: Specialize character<>
	templates in __gnu_cxx, not in __gnu_test.

2005-09-13  Jonathan Wakely  <cow@compsoc.man.ac.uk>
	    Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/21674
	* testsuite/21_strings/basic_string/element_access/char/21674.cc: New.
	* testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc: 
	New.

2005-09-12  David Edelsohn  <dje@gcc.gnu.org>

	PR libstdc++/22554
	PR libstdc++/23734
	* include/Makefile.am (stamp-assoc): Install each subgroup
	of headers separately.
	* include/Makefile.in: Regenerate.
	
2005-09-12  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/ext/mt_allocator/22309_thread.cc: Remove dg-do run.
	* testsuite/lib/libstdc++.exp ( proc libstdc++_init): Enable
	shared only for linux.
	
2005-09-12  Benjamin Kosnik  <bkoz@redhat.com>
	    David Edelsohn  <dje@gcc.gnu.org>

	PR libstdc++/22554
	PR libstdc++/23734
	* include/Makefile.am (assoc_headers): Break into five sub values.
	(install-headers): Use them.
	(stamp-assoc): Same.
	* include/Makefile.in: Regenerate.
	
2005-09-12  Chris Jefferson  <chris@bubblescope.net>

	* include/bits/stl_algo.h (search_n): Delegate to specializations.
	(search_n(,,,,binary_predicate)): Likewise.
	(__search_n(forward_iterator_tag)): Original search_n, tweak to
	remove an unnecessary comparison.
	(__search_n(,,,,binary_predicate,forward_iterator_tag)): Likewise.

2005-09-12  Jim Xochellis  <jimxoch@yahoo.gr>

	* include/bits/stl_algo.h
	(__search_n(std::random_access_iterator_tag)): Add specialization.
	(__search_n(,,,,binary_predicate,std::random_access_iterator_tag)):
	Likewise.

2005-09-12  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/23417
	* include/bits/stl_list.h (_List_impl): Use member initialization
	list for -Weffc++.
	* include/bits/stl_tree.h (_Rb_tree_impl): Same.

2005-09-12  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23767
	* include/bits/stl_iterator.h (__normal_iterator::
	__normal_iterator<>(const __normal_iterator<_Iter, _Container>&)):
	Enable only when _Iter is equal to _Container::pointer.
	* testsuite/21_strings/basic_string/types/23767.cc: New.
	* testsuite/23_containers/vector/types/23767.cc: Likewise.
	* testsuite/ext/vstring/types/23767.cc: Likewise.

2005-09-11  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/19265
	PR libstdc++/22309
	* include/ext/mt_allocator.h
	(__gnu_cxx::__create_handler): Remove.
	(__pool<true>::_M_destroy_thread_key): Compatibility only.
	(__pool<true>::_M_initialize(__destroy): Same.
	(__pool<true>::_M_initialize): New.
	(__pool<true>::_M_initialize_once): Nothing fancy.
	(__pool<true>::_M_once): Remove.
	(__common_pool): New.
	(__common_pool_base): New.	
	(__per_type_pool): New.
	(__per_type_pool_base): New.
	* src/mt_allocator.cc: Same.
	* config/linker-map.gnu (__pool<true>::_M_initialize()): Add.
	
2005-09-11  Jakub Jelinek  <jakub@redhat.com>

	PR libstdc++/19265
	PR libstdc++/22309
	* src/mt_allocator.cc (__gnu_internal::freelist_mutex): Make static.
	(__gnu_internal::__freelist): New type.
	(__gnu_internal::freelist): New variable.
	(__gnu_internal::_M_destroy_thread_key): New function.
	(__gnu_cxx::__pool<true>::_M_destroy): Don't delete
	_M_thread_freelist_initial.
	(__gnu_cxx::__pool<true>::_M_initialize): Make argument nameless.
	Don't use _M_thread_freelist and _M_thread_freelist_initial
	__pool<true> fields, instead use __gnu_internal::freelist fields, call
	gthread_key_create just once.  Use
	__gnu_internal::_M_destroy_thread_key as key destructor.	
	(__gnu_cxx::__pool<true>::_M_get_thread_id): Store size_t id
	rather than _Thread_record* in the thread specific value.  Don't
	use _M_thread_freelist __pool<true> field, instead use
	__gnu_internal::freelist fields.
	(__gnu_cxx::__pool<true>::_M_destroy_thread_key): Do nothing.

2005-09-11  Benjamin Kosnik  <bkoz@redhat.com>
            Jakub Jelinek  <jakub@redhat.com>

	PR libstdc++/19265
	PR libstdc++/22309	
	* testsuite/testsuite_shared.cc: New.
	* testsuite/lib/dg-options.exp (dg-require-sharedlib): New.
	* testsuite/lib/libstdc++.exp (libstdc++_init): Look for shared
	library, and set v3-sharedlib based on this.
	(check_v3_target_sharedlib): New.
	(proc v3-build_support): Build shared objects.
	* testsuite/ext/mt_allocator/22309_thread.cc: New, use above.

2005-09-11  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23781
	* include/bits/stl_list.h (_List_iterator<>::
	_List_iterator(_List_node_base*), _List_const_iterator<>::
	_List_const_iterator(const _List_node_base*)): Make explicit.
	(list<>::begin(), list<>::end(), list<>::pop_back()): Adjust
	consistently.
	* include/bits/list.tcc (list<>::insert, list<>::erase): Adjust
	consistently.
	* include/bits/stl_tree.h (_Rb_tree_iterator<>::
	_Rb_tree_iterator(_Link_type), _Rb_tree_const_iterator<>::
	_Rb_tree_const_iterator(_Link_type)): Make explicit.
	(_Rb_tree<>::begin(), _Rb_tree<>::end()): Adjust consistently.
	* include/ext/slist (_Slist_iterator<>::_Slist_iterator(_Node*)):
	Make explicit.
	(slist<>::erase(iterator), slist<>::erase(iterator, iterator)):
	Adjust consistently.
	* include/tr1/hashtable (hashtable_iterator<>::
	hashtable_iterator(hash_node<>**)): Make explicit.
	* testsuite/23_containers/list/23781.cc: New.
	* testsuite/23_containers/map/23781.cc: Likewise.
	* testsuite/23_containers/multimap/23781.cc: Likewise.
	* testsuite/23_containers/multiset/23781.cc: Likewise.
	* testsuite/23_containers/set/23781.cc: Likewise.
	* testsuite/ext/slist/23781.cc: Likewise.
	* testsuite/tr1/6_containers/unordered/23781.cc: Likewise.
	* testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
	line numbers.
	* testsuite/23_containers/set/operators/1_neg.cc: Likewise.

	* include/tr1/array (array<>::begin(), array<>::end()): Adjust
	stylistically for consistency with the other containers.

2005-09-10  Joseph S. Myers  <joseph@codesourcery.com>

	* testsuite/26_numerics/cmath/c99_classification_macros_c.cc:
	XFAIL on *-*-linux*, not *-*-linux-gnu.

2005-09-09  Benjamin Kosnik  <bkoz@redhat.com>
            Jakub Jelinek  <jakub@redhat.com>

	* src/debug.cc (iterator_base_mutex): Make static for internal
	linkage.
	* src/locale_init.cc (locale_mutex): Same.
	* src/mt_allocator.cc (freelist_mutex): Same.
	* src/pool_allocator.cc (palloc_init_mutex): Same.
	
2005-09-02  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/tr1/6_containers/unordered/hashtable/23465.cc:
	Reduce maximum size and lf.

2005-09-01  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_std/std_cmath.h: Declare C99 functions and helper
	functions as inline.

2005-09-01  Benjamin Kosnik  <bkoz@redhat.com>
	    Paolo Carlini  <pcarlini@suse.de>
	
	* testsuite/lib/libstdc++.exp (check_v3_target_cxa_atexit): Fix
	comment.

2005-09-01  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/lib/libstdc++.exp (check_v3_target_cxa_atexit): New.
	* testsuite/lib/dg-options.exp (dg-require-cxa-atexit): New.
	* testsuite/ext/mt_allocator/deallocate_local-6.cc: New.
	* testsuite/ext/mt_allocator/deallocate_local-8.cc: New.
	* testsuite/ext/mt_allocator/deallocate_local_thread-5.cc: New.
	* testsuite/ext/mt_allocator/deallocate_local_thread-7.cc: New.
	* docs/html/ext/mt_allocator.html: Add link to examples.
	* testsuite/testsuite_allocator.h: Tweak.
	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
	* testsuite/ext/new_allocator/deallocate_global.cc: Same.
	* testsuite/ext/new_allocator/deallocate_local.cc: Same.

2005-08-31  Paolo Carlini  <pcarlini@suse.de>
	    Kaspar Fischer <fischerk@inf.ethz.ch> 

	PR libstdc++/23632
	* include/bits/stl_bvector.h (_Bit_iterator::operator[],
	_Bit_const_iterator::operator[]): Const-ify.
	* testsuite/23_containers/vector/bool/23632.cc: New.

2005-08-30  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23578 (cont)
	* include/bits/stl_bvector.h (class vector<bool>): Add
	a dummy data() to avoid problems in debug-mode.

2005-08-30  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/ext/hash_map/23528.cc: New.

2005-08-29  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_map.h (class map): ... and a missing @a.

2005-08-29  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_map.h (class map): Add missing % in comment.

2005-08-29  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23578 (DR 464 [Ready])
	* include/bits/stl_map.h (class map): Add at(const key_type&)
	member functions.
	* include/bits/stl_vector.h (class vector): Add data() member
	functions.
	* include/debug/map.h (class map): Adjust consistently.
	* include/debug/vector (class vector): Likewise.
	* testsuite/23_containers/map/element_access/1.cc: New.
	* testsuite/23_containers/vector/data_access/1.cc: Likewise.
	* docs/html/ext/howto.html: Add an entry for DR 464.

2005-08-26  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/20534 (contd)
	* src/debug.cc (__gnu_debug): Remove __fancy_abort definition.
	Remove cstdio and cstdlib includes.
	* include/debug/debug.h: Define inline here. Remove
	_GLIBCXX_DEBUG_ABORT.
	* include/debug/macros.h: Remove __fancy_abort declaration,
	_GLIBXX_DEBUG_ABORT definition.
	* config/linker-map.gnu: Remove export.
	
2005-08-26  Benjamin Kosnik  <bkoz@redhat.com>

	* scripts/check_compile (UNIQUE_ID): New. Use to name output files.

2005-08-26  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23081
	* include/tr1/array: Implement members back(), front(), data(),
	and the tuple interface; tidy.
	* testsuite/tr1/6_containers/array/element_access/back.cc: New.
	* testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
	* testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
	* testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
	* testsuite/tr1/6_containers/array/tuple_interface/tuple_element.cc:
	Likewise.
	* testsuite/tr1/6_containers/array/tuple_interface/tuple_size.cc:
	Likewise.

2005-08-25  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/hashtable: Use __throw_exception_again,
	not naked throw, in the catch clauses.

2005-08-24  Lawrence Lim  <llim@redhat.com>
            Jakub Jelinek  <jakub@redhat.com>
	    Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/23550
	* testsuite/21_strings/char_traits/requirements/char/1.cc
	(test01): Simplify counting.
	* testsuite/21_strings/char_traits/requirements/wchar_t/1.cc
	(test02): Same.

2005-08-24  Paolo Carlini  <pcarlini@suse.de>
	    Chris Jefferson  <chris@bubblescope.net>

	PR libstdc++/23465
	* include/tr1/hashtable (hash_code_base::m_swap): Use
	std::swap.
	(hashtable<>::hashtable(const hashtable&)): Use copy_code;
	fix m_allocate_node call.
	* testsuite/tr1/6_containers/unordered/hashtable/23465.cc: New.

2005-08-23  Kelley Cook  <kcook@gcc.gnu.org>

	PR libstdc++/23462
	* testsuite/data/sgetn.txt: Revert to previous FSF address.

2005-08-23  Thomas Kho  <tkho@ucla.edu>

	PR libstdc++/23358
	* include/bits/stl_construct.h (_Destroy(_ForwardIterator,
	_ForwardIterator, allocator<_Tp>)): Removed unused template parameter.

2005-08-22  Geoffrey Keating  <geoffk@apple.com>

	* testsuite/23_containers/vector/resize/1.cc: XFAIL on darwin8.
	* testsuite/27_io/ios_base/storage/2.cc: Likewise.

2005-08-19  J"orn Rennecke <joern.rennecke@st.com>

	* config/cpu/sh/atomicity.h: Replace broken generic code with current
	copy of generic/atomicity.h .

2005-08-17  Kelley Cook  <kcook@gcc.gnu.org>

	* All files: Update FSF address.

2005-08-09  Andrew Pinski  <pinskia@physics.uc.edu>

	* testsuite/26_numerics/cmath/c99_classification_macros_c.cc:
	xfail on *-*-darwin*.

2005-08-03  Geoffrey Keating  <geoffk@apple.com>

	* configure.ac: Don't use GCC_NO_EXECUTABLES or clear
	GLIBCXX_IS_NATIVE on Darwin crosses.
	* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't skip configuring
	the testsuite just because there's no symbol versioning.
	* configure: Regenerate.

	* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Print
	status messages.
	(GLIBCXX_CHECK_S_ISREG_OR_S_IFREG): Likewise.
	(GLIBCXX_CHECK_POLL): Likewise.
	(GLIBCXX_CHECK_WRITEV): Likewise.
	(GLIBCXX_CHECK_INT64_T): Likewise.
	(GLIBCXX_CHECK_LFS): Likewise.
	* configure: Regenerate.

2005-07-30  Andrew Pinski  <pinskia@physics.uc.edu>

	* scripts/make_exports.pl: Pass --strip-underscores to c++filt.

2005-07-29  H.J. Lu  <hongjiu.lu@intel.com>

	PR libstdc++/22284
	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Revert
	the change to info.ttype_base.
	
2005-07-28  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>

	* include/std/std_valarray.h: Fix grammar in comments.

2005-07-25  Geoffrey Keating  <geoffk@apple.com>

	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Handle darwin-export,
	and make it the default for Darwin.
	* scripts/make-exports.pl: New.
	* src/Makefile.am: Update for changes to GLIBCXX_ENABLE_SYMVERS.
	Handle darwin-export.
	* configure: Regenerate.
	* include/Makefile.in: Regenerate.
	* libmath/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

2005-07-25  Dave Odell  <evilalias@hotmail.com>

	PR libstdc++/23053
	* include/tr1/hashtable (hashtable<>::find_node): Const-ify.
	* testsuite/tr1/6_containers/unordered/hashtable/23053.cc: New.

2005-07-25  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/22515
	* include/bits/basic_string.h: Declare the specialization
	operator>>(basic_istream<char>&, basic_string<char>&).
	* include/std/std_istream.h: Declate the specialization
	operator>>(basic_istream<char>&, char*).
	* include/std/std_streambuf.h (basic_streambuf): Add friend
	declarations for the above.
	* src/istream.cc: Define the above.
	* testsuite/27_io/basic_istream/extractors_character/char/4.cc: New.
	* testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
	Likewise.
	* testsuite/performance/27_io/ifstream_extract_chars.cc: Likewise.

2005-07-20  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/streambuf.tcc (xsgetn, xsputn): Use streamsize
	instead of size_t.
	* src/streambuf.cc (__copy_streambufs): Likewise.

2005-07-18  Paolo Carlini  <pcarlini@suse.de>

	* config/locale/gnu/ctype_members.cc (do_is(mask, wchar_t)):
	Speed-up for the common case of mask == ctype_base::space;
	otherwise, exit the loop earlier if the mask is one of the
	elementary ones.

2005-07-14  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21193 (float, double, long double)
	* include/tr1/functional (hash<float>, hash<double>):
	Reimplement exploiting the Fnv_hash<>::hash helper.
	(hash<long double>): Reimplement using frexp (in this
	case, due to random padding bits, the former approach
	is not generally viable).

2005-07-13  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21193 (string & wstring)
	* include/tr1/functional (hash<string>, hash<wstring>):
	Reimplement using the FNV hash.

	* include/tr1/functional: Trivial formatting fixes.

2005-07-11  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/ostream.tcc (basic_ostream<>::operator<<(long),
	basic_ostream<>::operator<<(long long)): Don't deal with oct
	and hex and casts to unsigned here...
	* include/bits/locale_facets.tcc (__int_to_char(_CharT*, long,
	const _CharT*, ios_base::fmtflags), __int_to_char(_CharT*, long
	long, const _CharT*, ios_base::fmtflags)): ... do that here,
	instead, as per Table 57.
	(num_put<>::_M_insert_int): Tidy treatment of numeric base and
	sign.
	* include/std/std_ostream.h (operator<<(short), operator<<(int)):
	Adjust logic, as per the letter of the resolution of DR117 [WP].
	* testsuite/22_locale/num_put/put/char/10.cc: New.
	* testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
	Likewise.

2005-07-07  David Edelsohn  <edelsohn@gnu.org>

	* testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc:
	Change map_t to map_type.

2005-07-05  Paolo Carlini  <pcarlini@suse.de>

	Add class __versa_string, a versatile "basic_string-type" class:
	an additional, non-standard, template parameter allows to specify
	the preferred base class. Two are provided: __rc_string_base,
	which implements a behavior very similar to our standard string,
	and __sso_string_base, not reference-counted and optimized for
	short strings. 
	* include/ext/rc_string_base.h: New.
	* include/ext/sso_string_base.h: Likewise.
	* include/ext/vstring.h: Likewise.
	* include/ext/vstring.tcc: Likewise.
	* include/ext/vstring_fwd.h: Likewise.
	* include/ext/vstring_util.h: Likewise.
	* include/Makefile.am: Add.
	* include/Makefile.in: Regenerate.
	* testsuite/ext/vstring/explicit_instantiation/1.cc: New.
	* testsuite/ext/vstring/explicit_instantiation/2.cc: Likewise.
	* testsuite/ext/vstring/explicit_instantiation/char/1.cc: Likewise.
	* testsuite/ext/vstring/explicit_instantiation/wchar_t/1.cc: Likewise.

	* Makefile.in: Regenerate with autotools 1.9.3 (to date, the version
	officially used by v3).
	* aclocal.m4: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

2005-07-01  Paolo Carlini  <pcarlini@suse.de>

        Port from libstdcxx_so_7-branch:
	2004-10-28  Chris Jefferson  <chris@bubblescope.net>

	PR libstdc++/17441
	* include/bit/stl_algo.h (find(,,,input_iterator_tag),
	find(,,,random_access_interator_tag),
	find_if(,,,input_iterator_tag),
	find_if(,,,random_access_iterator_tag)): Uglify function name.
	(find, find_if): Use new uglified specialisation names.
	* testsuite/25_algorithms/find/17441.cc: New.

2005-06-30  Ulrich Weigand  <uweigand@de.ibm.com>

	* include/ext/pb_assoc/detail/hash_fn/mask_based_range_hashing.hpp
	(PB_ASSOC_CLASS_C_DEC::s_highest_bit_1): Cast constant 1 to target
	type before shifting.

2005-06-29  Paolo Carlini  <pcarlini@suse.de>
	    
	PR libstdc++/21244 (cont^2)
	* include/ext/bitmap_allocator.h: Convert everywhere
	bits_per_block to size_t.	

2005-06-29  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/bits/basic_string.h, include/bits/locale_facets.h: Fix
	Doxygen comments that use wrong parameter and function names.

2005-06-29  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 37.
	* docs/html/ext/howto.html: Adjust.

2005-06-29  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/22131
	* include/bits/locale_facets.tcc (num_get<>::_M_extract_int,
	num_get<>::_M_extract_float, money_get<>::_M_extract):
	Adjust to assign the result also when digit grouping is
	wrong (but the grammar is correct), as per 22.2.2.1.2, p11-12
	(NB: consistently for money_get too).
	* config/locale/generic/c_locale.cc (__convert_to_v): Do
	not check ios_base::failbit at the outset.
	* config/locale/gnu/c_locale.cc: Likewise.
	* testsuite/22_locale/money_get/get/char/22131.cc: New.
	* testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
	* testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
	* testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
	* testsuite/22_locale/num_get/get/char/12.cc: Adjust.
	* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
	Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
	Likewise.

2005-06-28  Paul Brook  <paul@codesourcery.com>

	* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Check for
	__cxa_end_cleanup.
	* libsupc++/Makefile.am (sources): Add eh_call.c and eh_arm.c.
	* libsupc++/eh_arm.cc: New file.
	* libsupc++/eh_call.cc: New file.
	* libsupc++/eh_catch.cc (__cxa_get_exception_ptr): Use
	__gxx_caught_object.
	(__cxa_begin_catch): Ditto. Use __is_gxx_exception_class. Call
	_Unwind_Complete when using the ARM EABI.
	(__cxa_end_catch): Use __is_gxx_exception_class.
	* libsupc++/eh_personality.cc: Define NO_SIZE_OF_ENCODED_VALUE when
	using the ARM EABI.
	(save_caught_exception, restore_caught_exception): New functions.
	(_throw_typet): New typedef.
	(get_ttype_entry, get_adjusted_ptr, check_exception_spec): Add ARM
	EABI implementations.
	(PERSONALITY_FUNCTION): Use new functions.  Addd support for ARM EABI
	unwinding libary.
	(__cxa_unexpected): Disable when using the ARM EABI.
	* libsupc++/eh_throw.cc (__cxa_throw): Use __GXX_INIT_EXCEPTION_CLASS.
	(__cxa_rethrow): Use __is_gxx_exception_class.  Call
	_Unwind_RaiseException when using the ARM EABI.
	* libsupc++/unwind-cxx.h (struct __cxa_exception): Add fields for ARM
	EABI semantics.
	(struct __cxa_eh_globals): Ditto.
	(__cxa_call_terminate): Add prototype.
	(__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Add
	prototypes.
	(__get_exception_header_from_obj, __get_exception_header_from_ue):
	Move earlier in file.
	(__is_gxx_exception_class, __GXX_INIT_EXCEPTION_CLASS,
	__gxx_caught_object): New functions.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libmath/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* src/Makefie.in: Regenerate.
	* testsuite/makefile.in: Regenerate.

2005-06-27  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/22102
	* include/bits/stl_tree.h (insert_unique(iterator, const _Val&),
	insert_equal((iterator, const _Val&)): Reimplement to check both
	before and after, as per the algorithm "ignore hint if wrong" of
	ISO paper N1780.

2005-06-27  Benjamin Kosnik  <bkoz@redhat.com>
	    Ami Tavory  <pbassoc@gmail.com>
	
	* docs/html/documentation.html: Add link for policy based
	associative containers docs.
	* docs/html/ext/pb_assoc/Std_hash_set_impl.jpg: New.
	* docs/html/ext/pb_assoc/acks.html: New.
	* docs/html/ext/pb_assoc/balls_and_bins.jpg: New.
	* docs/html/ext/pb_assoc/basic_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/basic_assoc_cntnr_compound_data.html: New.
	* docs/html/ext/pb_assoc/basic_assoc_cntnr_no_data.html: New.
	* docs/html/ext/pb_assoc/basic_ds_tag.html: New.
	* docs/html/ext/pb_assoc/basic_hash_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/basic_hash_ds_tag.html: New.
	* docs/html/ext/pb_assoc/basic_invalidation_guarantee.html: New.
	* docs/html/ext/pb_assoc/basic_ms_tag.html: New.
	* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/
	  basic_tree_assoc_cntnr_const_node_iterator.html: New.
	* docs/html/ext/pb_assoc/
	  basic_tree_assoc_cntnr_node_iterator.html: New.
	* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev.html: New.
	* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev_it.html: New.
	* docs/html/ext/pb_assoc/basic_tree_ds_tag.html: New.
	* docs/html/ext/pb_assoc/cc_hash_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/cc_hash_ds_tag.html: New.
	* docs/html/ext/pb_assoc/
	  cc_hash_max_collision_check_resize_trigger.html: New.
	* docs/html/ext/pb_assoc/cc_hash_policy_cd.jpg: New.
	* docs/html/ext/pb_assoc/cd.jpg: New.
	* docs/html/ext/pb_assoc/component_requirements.html: New.
	* docs/html/ext/pb_assoc/compound_data_enabled_ms_tag.html: New.
	* docs/html/ext/pb_assoc/compound_data_type.html: New.
	* docs/html/ext/pb_assoc/compound_ds_tag.html: New.
	* docs/html/ext/pb_assoc/concepts.html: New.
	* docs/html/ext/pb_assoc/contact.html: New.
	* docs/html/ext/pb_assoc/counter_update_metadata.html: New.
	* docs/html/ext/pb_assoc/counter_update_policy.html: New.
	* docs/html/ext/pb_assoc/data_enabled_ms_tag.html: New.
	* docs/html/ext/pb_assoc/design.html: New.
	* docs/html/ext/pb_assoc/different_underlying_dss.jpg: New.
	* docs/html/ext/pb_assoc/direct_mask_range_hashing.html: New.
	* docs/html/ext/pb_assoc/direct_mod_range_hashing.html: New.
	* docs/html/ext/pb_assoc/disclaimer.html: New.
	* docs/html/ext/pb_assoc/ds_gen.html: New.
	* docs/html/ext/pb_assoc/ds_tag_cd.jpg: New.
	* docs/html/ext/pb_assoc/ds_traits.html: New.
	* docs/html/ext/pb_assoc/embedded_lists_1.jpg: New.
	* docs/html/ext/pb_assoc/embedded_lists_2.jpg: New.
	* docs/html/ext/pb_assoc/examples.html: New.
	* docs/html/ext/pb_assoc/exception_guarantees_specifics.html: New.
	* docs/html/ext/pb_assoc/find_invalidation_guarantee.html: New.
	* docs/html/ext/pb_assoc/find_iterators_cd.jpg: New.
	* docs/html/ext/pb_assoc/find_iterators_range_ops_1.jpg: New.
	* docs/html/ext/pb_assoc/find_iterators_range_ops_2.jpg: New.
	* docs/html/ext/pb_assoc/generics.html: New.
	* docs/html/ext/pb_assoc/gp_hash_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/gp_hash_ds_tag.html: New.
	* docs/html/ext/pb_assoc/gp_hash_policy_cd.jpg: New.
	* docs/html/ext/pb_assoc/hash_and_probe_general.html: New.
	* docs/html/ext/pb_assoc/hash_based_containers.html: New.
	* docs/html/ext/pb_assoc/hash_cd.jpg: New.
	* docs/html/ext/pb_assoc/hash_exponential_size_policy.html: New.
	* docs/html/ext/pb_assoc/hash_fn.html: New.
	* docs/html/ext/pb_assoc/hash_load_check_resize_trigger.html: New.
	* docs/html/ext/pb_assoc/hash_policies.html: New.
	* docs/html/ext/pb_assoc/hash_policy_cd.jpg: New.
	* docs/html/ext/pb_assoc/hash_prime_size_policy.html: New.
	* docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram.jpg: New.
	* docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram2.jpg: New.
	* docs/html/ext/pb_assoc/hash_ranged_hash_range_hashing_fns.jpg: New.
	* docs/html/ext/pb_assoc/hash_standard_resize_policy.html: New.
	* docs/html/ext/pb_assoc/home.html: New.
	* docs/html/ext/pb_assoc/index.html: New.
	* docs/html/ext/pb_assoc/insert_resize_sequence_diagram1.jpg: New.
	* docs/html/ext/pb_assoc/insert_resize_sequence_diagram2.jpg: New.
	* docs/html/ext/pb_assoc/insert_resize_sequence_diagram3.jpg: New.
	* docs/html/ext/pb_assoc/insert_type_methods.html: New.
	* docs/html/ext/pb_assoc/interface.html: New.
	* docs/html/ext/pb_assoc/interval_node_invariants.jpg: New.
	* docs/html/ext/pb_assoc/introduction.html: New.
	* docs/html/ext/pb_assoc/invalidation_guarantee_cd.jpg: New.
	* docs/html/ext/pb_assoc/invalidation_guarantee_erase.jpg: New.
	* docs/html/ext/pb_assoc/lib_download.html: New.
	* docs/html/ext/pb_assoc/linear_probe_fn.html: New.
	* docs/html/ext/pb_assoc/list_updates.html: New.
	* docs/html/ext/pb_assoc/lu_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/lu_based_containers.html: New.
	* docs/html/ext/pb_assoc/lu_cd.jpg: New.
	* docs/html/ext/pb_assoc/lu_ds_tag.html: New.
	* docs/html/ext/pb_assoc/lu_ops.jpg: New.
	* docs/html/ext/pb_assoc/mmap_value_utils.html: New.
	* docs/html/ext/pb_assoc/motivation.html: New.
	* docs/html/ext/pb_assoc/move_to_front_update_metadata.html: New.
	* docs/html/ext/pb_assoc/move_to_front_update_policy.html: New.
	* docs/html/ext/pb_assoc/ms_cd.jpg: New.
	* docs/html/ext/pb_assoc/ms_gen.html: New.
	* docs/html/ext/pb_assoc/ms_tag_cd.jpg: New.
	* docs/html/ext/pb_assoc/ms_traits.html: New.
	* docs/html/ext/pb_assoc/node_invariant_invalidations.jpg: New.
	* docs/html/ext/pb_assoc/node_invariants.html: New.
	* docs/html/ext/pb_assoc/node_invariants.jpg: New.
	* docs/html/ext/pb_assoc/non_unique_mapping.html: New.
	* docs/html/ext/pb_assoc/non_unique_mapping_containers.jpg: New.
	* docs/html/ext/pb_assoc/null_data_type.html: New.
	* docs/html/ext/pb_assoc/null_hash_fn.html: New.
	* docs/html/ext/pb_assoc/null_probe_fn.html: New.
	* docs/html/ext/pb_assoc/order_by_key.html: New.
	* docs/html/ext/pb_assoc/order_statistics_key.html: New.
	* docs/html/ext/pb_assoc/order_statistics_key_cmp.html: New.
	* docs/html/ext/pb_assoc/order_statistics_node_updator.html: New.
	* docs/html/ext/pb_assoc/ov_tree_ds_tag.html: New.
	* docs/html/ext/pb_assoc/overview.html: New.
	* docs/html/ext/pb_assoc/pb_assoc_ex.html: New.
	* docs/html/ext/pb_assoc/portability.html: New.
	* docs/html/ext/pb_assoc/quadratic_probe_fn.html: New.
	* docs/html/ext/pb_assoc/range_invalidation_guarantee.html: New.
	* docs/html/ext/pb_assoc/rank_node_invariants.jpg: New.
	* docs/html/ext/pb_assoc/rationale_null_node_updator.jpg: New.
	* docs/html/ext/pb_assoc/rb_tree_ds_tag.html: New.
	* docs/html/ext/pb_assoc/reference_iterator.jpg: New.
	* docs/html/ext/pb_assoc/references.html: New.
	* docs/html/ext/pb_assoc/regression_tests.html: New.
	* docs/html/ext/pb_assoc/resize_general.html: New.
	* docs/html/ext/pb_assoc/resize_policies.html: New.
	* docs/html/ext/pb_assoc/resize_policy_cd.jpg: New.
	* docs/html/ext/pb_assoc/restoring_node_invariants.jpg: New.
	* docs/html/ext/pb_assoc/sample_node_updator.hpp: New.
	* docs/html/ext/pb_assoc/sample_probe_fn.hpp: New.
	* docs/html/ext/pb_assoc/sample_probe_fn.html: New.
	* docs/html/ext/pb_assoc/sample_range_hashing.hpp: New.
	* docs/html/ext/pb_assoc/sample_range_hashing.html: New.
	* docs/html/ext/pb_assoc/sample_ranged_hash_fn.hpp: New.
	* docs/html/ext/pb_assoc/sample_ranged_hash_fn.html: New.
	* docs/html/ext/pb_assoc/sample_ranged_probe_fn.hpp: New.
	* docs/html/ext/pb_assoc/sample_ranged_probe_fn.html: New.
	* docs/html/ext/pb_assoc/sample_resize_policy.hpp: New.
	* docs/html/ext/pb_assoc/sample_resize_policy.html: New.
	* docs/html/ext/pb_assoc/sample_resize_trigger.hpp: New.
	* docs/html/ext/pb_assoc/sample_size_policy.hpp: New.
	* docs/html/ext/pb_assoc/sample_update_policy.hpp: New.
	* docs/html/ext/pb_assoc/size_policies_general.html: New.
	* docs/html/ext/pb_assoc/splay_tree_ds_tag.html: New.
	* docs/html/ext/pb_assoc/timing_tests.html: New.
	* docs/html/ext/pb_assoc/toc.html: New.
	* docs/html/ext/pb_assoc/tree_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/
	  tree_assoc_cntnr_const_node_iterator.html: New.
	* docs/html/ext/pb_assoc/tree_assoc_cntnr_node_iterator.html: New.
	* docs/html/ext/pb_assoc/tree_based_containers.html: New.
	* docs/html/ext/pb_assoc/tree_cd.jpg: New.
	* docs/html/ext/pb_assoc/trigger_policies_general.html: New.
	* docs/html/ext/pb_assoc/tutorial.html: New.
	* docs/html/ext/pb_assoc/update_seq_diagram.jpg: New.
	* include/Makefile.am: Add assoc_srcdir, assoc_builddir, assoc_subdir,
	assoc_headers.
	* include/Makefile.in: Regenerate.
	* include/ext/typelist.h: New.
	* include/ext/pb_assoc/assoc_cntnr.hpp: New.
	* include/ext/pb_assoc/data_type.hpp: New.
	* include/ext/pb_assoc/ds_trait.hpp: New.
	* include/ext/pb_assoc/exception.hpp: New.
	* include/ext/pb_assoc/hash_policy.hpp: New.
	* include/ext/pb_assoc/lu_policy.hpp: New.
	* include/ext/pb_assoc/ms_trait.hpp: New.
	* include/ext/pb_assoc/tree_policy.hpp: New.
	* include/ext/pb_assoc/trivial_iterator_def.hpp: New.
	* include/ext/pb_assoc/detail/assoc_cntnr_base.hpp: New.
	* include/ext/pb_assoc/detail/cond_dealtor.hpp: New.
	* include/ext/pb_assoc/detail/constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ds_trait_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_types_traits.hpp: New.
	* include/ext/pb_assoc/detail/map_debug_base.hpp: New.
	* include/ext/pb_assoc/detail/mapping_level_imp.hpp: New.
	* include/ext/pb_assoc/detail/ms_category_imp.hpp: New.
	* include/ext/pb_assoc/detail/ms_trait_imp.hpp: New.
	* include/ext/pb_assoc/detail/order_statistics_imp.hpp: New.
	* include/ext/pb_assoc/detail/standard_policies.hpp: New.
	* include/ext/pb_assoc/detail/standard_sizes.hpp: New.
	* include/ext/pb_assoc/detail/type_utils.hpp: New.
	* include/ext/pb_assoc/detail/typelist.hpp: New.
	* include/ext/pb_assoc/detail/types_traits.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
     	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/d_extract_key.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  d_find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  d_insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/extract_key.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
	  resize_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  node_iteration_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  r_erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  r_range_iteration_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  range_iteration_fn_imps.hpp: New.	
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  bin_search_tree_.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  cond_dtor_entry_dealtor.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  cond_key_dtor_entry_dealtor.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/find_iterators.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/node_iterators.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  r_erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/rotate_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_hash_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/cc_ht_map_.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/cmp_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  cond_key_dtor_entry_dealtor.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  constructor_destructor_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  constructor_destructor_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  debug_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  debug_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/entry_list_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  erase_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  erase_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  find_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  find_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  insert_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  insert_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/resize_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  resize_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  resize_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/size_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/standard_policies.hpp: New.
	* include/ext/pb_assoc/detail/eq_fn/eq_by_less.hpp: New.
	* include/ext/pb_assoc/detail/eq_fn/hash_eq_fn.hpp: New.
	* include/ext/pb_assoc/detail/gp_hash_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  constructor_destructor_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  constructor_destructor_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  debug_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  debug_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  erase_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  erase_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  find_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  find_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/gp_ht_map_.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
  	  insert_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  insert_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/iterator_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/resize_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  resize_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  resize_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/
	  direct_mask_range_hashing_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/
	  direct_mod_range_hashing_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/
	  mask_based_range_hashing.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/probe_fn_base.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/ranged_hash_fn.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/ranged_probe_fn.hpp: New.
	* include/ext/pb_assoc/detail/lu_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_assoc_cntnr/
	  policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/lu_map_.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_policy/
  	  counter_lu_metadata_imp.hpp: New.
	* include/ext/pb_assoc/detail/lu_policy/counter_lu_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/lu_policy/mtf_lu_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/cond_dtor.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/node_iterators.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/ov_tree_map_.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/node.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/rb_tree_.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  cc_hash_max_collision_resize_trigger_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  hash_exponential_size_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  hash_load_check_resize_trigger_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  hash_prime_size_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  hash_standard_resize_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  ht_prime_size_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/size_base.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/node.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/splay_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/splay_tree_.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/tree_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/tree_policy/
	  null_node_updator_imp.hpp: New.
	* include/ext/pb_assoc/detail/tree_policy/
	  order_statistics_imp.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_append.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_apply.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_at_index.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_contains.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_filter.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_transform.hpp: New.
	* include/ext/pb_assoc/detail/typelist/
	  typelist_typelist_append.hpp: New.
	* include/ext/pb_assoc/detail/unordered_iterator/
	  const_find_iterator.hpp: New.
	* include/ext/pb_assoc/detail/unordered_iterator/
	  const_iterator.hpp: New.
	* include/ext/pb_assoc/detail/unordered_iterator/
	  find_iterator.hpp: New.
	* include/ext/pb_assoc/detail/unordered_iterator/iterator.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	  constructor_destructor_and_related.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	  erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	  erase_if_pred.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	invalidation_guarantee_selector.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	it_value_type_traits.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/iterator.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	iterator_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/ref_pair.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	value_type_adapter.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	value_type_traits.hpp: New.
	* testsuite/Makefile.am (CLEANFILES): Add .o, .dat, .cc.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/testsuite_common_types.h: New.
	* testsuite/testsuite_visualization.h: New.
	* testsuite/ext/pb_assoc/example/basic_map.cc: New.
	* testsuite/ext/pb_assoc/example/basic_multimap.cc: New.
	* testsuite/ext/pb_assoc/example/basic_set.cc: New.
	* testsuite/ext/pb_assoc/example/ds_traits.cc: New.
	* testsuite/ext/pb_assoc/example/erase_if.cc: New.
	* testsuite/ext/pb_assoc/example/extract_key.cc: New.
	* testsuite/ext/pb_assoc/example/hash_find_neg.cc: New.
	* testsuite/ext/pb_assoc/example/hash_illegal_resize.cc: New.
	* testsuite/ext/pb_assoc/example/hash_initial_size.cc: New.
	* testsuite/ext/pb_assoc/example/hash_load_set_change.cc: New.
	* testsuite/ext/pb_assoc/example/hash_mod.cc: New.
	* testsuite/ext/pb_assoc/example/hash_resize.cc: New.
	* testsuite/ext/pb_assoc/example/hash_resize_neg.cc: New.
	* testsuite/ext/pb_assoc/example/hash_shift_mask.cc: New.
	* testsuite/ext/pb_assoc/example/mapping_level.cc: New.
	* testsuite/ext/pb_assoc/example/mapping_level_neg.cc: New.
	* testsuite/ext/pb_assoc/example/ms_traits.cc: New.
	* testsuite/ext/pb_assoc/example/ranged_hash.cc: New.
	* testsuite/ext/pb_assoc/example/store_hash.cc: New.
	* testsuite/ext/pb_assoc/example/tree_intervals.cc: New.
	* testsuite/ext/pb_assoc/example/tree_join.cc: New.
	* testsuite/ext/pb_assoc/example/tree_order_statistics.cc: New.
	* testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc: New.
	* testsuite/ext/pb_assoc/example/tree_split.cc: New.
	* testsuite/performance/20_util/allocator/(insert.cc,
	  insert_insert.cc, list_sort_search.cc, map_mt_find.cc, map_thread.cc,
	  producer_consumer.cc): Recast to use typelists and move to...
	* testsuite/performance/23_containers/find/map.cc: New.
	* testsuite/performance/23_containers/index/map.cc: New.
	* testsuite/performance/23_containers/insert/associative.cc: New.
	* testsuite/performance/23_containers/insert/sequence.cc: New.
	* testsuite/performance/23_containers/insert_erase/associative.cc: New.
	* testsuite/performance/23_containers/producer_consumer/
	(associative.cc, sequence.cc): New.
	* testsuite/performance/23_containers/sort_search/list.cc: New.
	* testsuite/performance/23_containers/container_benchmark.cc: Remove.
	* testsuite/performance/23_containers/map_create_fill.cc: Move...
	* testsuite/performance/23_containers/create/map.cc: ...here.
	* testsuite/performance/23_containers/set_create_from_sorted.cc: Move.
	* testsuite/performance/23_containers/create_from_sorted/set.cc: here.
	* testsuite/performance/23_containers/list_create_fill_sort.cc: Move...
	* testsuite/performance/23_containers/create_sort/list.cc: ...here.
	* testsuite/performance/23_containers/set_insert_from_sorted.cc: Move.
	* testsuite/performance/23_containers/insert_from_sorted/set.cc: here.
	
2005-06-23  Jakub Jelinek  <jakub@redhat.com>

	PR libstdc++/22109
	* src/compatibility.cc (_GLIBCXX_SYMVER_COMPATIBILITY): Remove.
	(istreambuf_iterator, basic_fstream, basic_ifstream, basic_ofstream,
	_M_copy, _M_move, _M_assign, _M_disjunct, _M_check_length,
	_M_set_length_and_sharable, ignore, eq): Define to XX suffixed
	variants.
	(ignore (streamsize)): Remove _W prefixed aliases.
	(_GLIBCXX_3_4_SYMVER_SPECIAL, _GLIBCXX_3_4_5_SYMVER_SPECIAL,
	_GLIBCXX_APPLY_SYMVER_SPECIAL): Remove.
	(_GLIBCXX_3_4_SYMVER, _GLIBCXX_3_4_5_SYMVER): Add XXname argument.
	Use #XXname instead of #name as the alias argument.
	* config/abi/compatibility.h: Replace uses of
	_GLIBCXX_APPLY_SYMVER_SPECIAL with _GLIBCXX_APPLY_SYMVER.  Always
	pass 2 arguments to the _GLIBCXX_APPLY_SYMVER macro.
	* include/bits/char_traits.h (char_traits::eq): Revert 2005-06-15
	change.
	* acinclude.m4: Decrease glibcxx_min_gnu_ld_version back to 21400.
	* configure: Rebuilt.

2005-06-19  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/22111
	* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Remove
	GLIBCXX_TEST_ABI. Remove duplicate _GLIBCXX_ASM_SYMVER define.
	Don't enable abi testing unless versioned.
	* configure: Regenerate.
	* testsuite/Makefile.am (check-abi): Remove conditional.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/libstdc++-abi/abi.exp: Call build_support, then check
	v3-symver before proceeding.
	* testsuite/lib/libstdc++.exp (libstdc++-dg-test): Set v3-symvers
	if _GLIBCXX_SYMVER.
	
2005-06-17  Paolo Carlini  <pcarlini@suse.de>

        Port from libstdcxx_so_7-branch:
	2005-01-12  Christopher Jefferson <chris@bubblescope.net>

	* include/bits/stl_function.h (mem_fun_t, const_mem_fun_t,
	mem_fun_ref_t, const_mem_fun_ref_t, mem_fun1_t, const_mem_fun1_t,
	mem_fun1_ref_t, const_mem_fun1_ref_t): Remove overloads for void
	return type, just an old HP/SGI workaround.
	* testsuite/20_util/functional/binders.cc: Move to...
	* testsuite/20_util/functional/binders/3113.cc: ...here.
	* testsuite/20_util/functional/binders/1.cc: New.

2005-06-17  Jonathan Wakely  <redi@gcc.gnu.org>

	* docs/html/21_strings/gotw29a.txt: Update code to corrected version.

2005-06-17  Jakub Jelinek  <jakub@redhat.com>
            Benjamin Kosnik  <bkoz@redhat.com>

	* config/abi/alpha-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/hppa-linux-gnu/baseline_symbols.txt: Same.
	* config/abi/mips-linux-gnu/baseline_symbols.txt: Same.
	* config/abi/sparc-linux-gnu/baseline_symbols.txt: Same.

	* config/abi/alpha-freebsd5/baseline_symbols.txt: Remove.
	* config/abi/i386-freebsd4/baseline_symbols.txt: Same.
	* config/abi/i386-freebsd5/baseline_symbols.txt: Same.
	* config/abi/sparc-freebsd5/baseline_symbols.txt: Same.

	* config/abi/arm-linux-gnu/baseline_symbols.txt: Remove.
	* config/abi/m68k-linux-gnu/baseline_symbols.txt: Same.

2005-06-17  Jakub Jelinek  <jakub@redhat.com>

	* config/abi/ia64-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/s390x-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/s390-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
	* config/abi/powerpc-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/i486-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/i386-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/powerpc64-linux-gnu/baseline_symbols.txt: New file.
	* config/abi/powerpc64-linux-gnu/32/baseline_symbols.txt: New file.

2005-06-16  Jakub Jelinek  <jakub@redhat.com>

	* src/compatibility.cc: Include bits/c++config.h first.
	(_GLIBCXX_SYMVER_COMPATIBILITY): Define if _GLIBCXX_SYMVER
	and PIC are both defined.
	* include/bits/char_traits.h (char_traits::eq): Rename
	only if _GLIBCXX_SYMVER_COMPATIBILITY is defined.

2005-06-16  Jakub Jelinek  <jakub@redhat.com>

        * acinclude.m4 ((GLIBCXX_ENABLE_SYMVERS): Rename _GLIBCXX_SIZE_T_IS_INT
        to _GLIBCXX_SIZE_T_IS_UINT.  Define _GLIBCXX_PTRDIFF_T_IS_INT.
        * configure: Regenerate.
        * config.h.in: Regenerate.
        * src/compatibility.cc (istream:ignore(streamsize)): Use
        _GLIBCXX_PTRDIFF_T_IS_INT instead of _GLIBCXX_SIZE_T_IS_INT.
        * config/abi/compatibility.h: Rename _GLIBCXX_SIZE_T_IS_INT
        to _GLIBCXX_SIZE_T_IS_UINT.  Use _GLIBCXX_PTRDIFF_T_IS_INT
        instead for symbols with streamsize arguments.

2005-06-16  Jakub Jelinek  <jakub@redhat.com>

	* config/linker-map.gnu: Also export
	_ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][il].

2005-06-15  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.ac (libtool_VERSION): To 6:6:0.
	* configure: Regenerate.
	* config/linker-map.gnu: Edit.
	* src/istream.cc: Move istream::ignore(streamsize) specializations...
	* src/compatibility.cc: ...here. New.
	* include/bits/char_traits.h (char_traits::eq): Rename when
	appropriate.
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Define _GLIBCXX_SIZE_T_IS_INT.
	Bump glibcxx_min_gnu_ld_version to 21590.
	* configure: Regenerate.
	* acconfig.h: Remove _GLIBCXX_ASM_SYMVER.
	* config.h.in: Regenerate.
	* src/Makefile.am (sources): Add compatibility.cc.
	* src/Makefile.in: Regenerate.
	* include/Makefile.am (host_headers_noinst): Add compatibility.h.
	* include/Makefile.in: Regenerate.
	* testsuite/testsuite_abi.h (symbol): Add data members.
	* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.5,
	GLIBCXX_3.4.6.  Remove deprecated versions. Do a better job
	version checking.

2005-06-15  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/hashtable: Trivial formatting fixes.
	* include/tr1/unordered_map: Likewise.
	* include/tr1/unordered_set: Likewise.

2005-06-14  Tom Tromey  <tromey@redhat.com>

	PR libgcj/19877:
	* configure, aclocal.m4: Rebuilt.
	* Makefile.in, include/Makefile.in, libmath/Makefile.in,
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
	testsuite/Makefile.in: Likewise.

2005-06-08  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/21955
	* include/std/std_sstream.h (basic_stringbuf::showmanyc): Add.
	Remove unnecessary this->_M_mode decoration.
	* include/bits/fstream.tcc: Adjust line spacing.	
	* testsuite/27_io/basic_streambuf/in_avail/char/1.cc: New, test
	base class behavior.
	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc: Same.
	* testsuite/27_io/basic_stringbuf/in_avail/char/21955.cc: New.
	* testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Match
	filebuf behavior.
	* testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Same.
	* testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc: Same.
	* testsuite/27_io/basic_stringbuf/str/char/1.cc: Same.
	* testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Move...
	* testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: ...here.
	
2005-06-07  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_ENABLE_C99): Use C++ compiler for complex
	tests.
	* configure: Regenerated.

2005-06-07  Adrian Straetling  <straetling@de.ibm.com>

	* config/cpu/s390/atomicity.h: (__exchange_and_add, 
	__atomic_add): Use the builtins for atomic memory operations.

2005-06-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770 (cont: __gnu_debug::string)
	* include/debug/string: Use _Base typedefs for pointer, const_pointer,
	reference, const_reference, size_type, difference_type.
	* testsuite/21_strings/basic_string/2.cc: New.

2005-06-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770 (cont: debug-mode)
	* include/debug/deque: Use _Base typedefs for pointer, const_pointer,
	reference, const_reference.
	* include/debug/list: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/debug/multiset.h: Likewise.
	* include/debug/set.h: Likewise.
	* include/debug/vector: Likewise.

2005-06-06  Paolo Carlini  <pcarlini@suse.de>

        Port from libstdcxx_so_7-branch:
	2004-09-24  Paolo Carlini  <pcarlini@suse.de>
		    Jonathan Wakely  <redi@gcc.gnu.org>

	* include/bits/stl_list.h (list::list(size_type, value_type,
	const allocator_type&): Implement according to the letter of the
	standard, i.e., don't use two overloads, not equivalent in case
	of non default constructible T.
	(list::resize(size_type, const value_type&)): Fix the signature:
	according to the standard the second argument is by value; also,
	don't use two overloads.
	* include/bits/list.tcc (list::resize(size_type, const value_type&)):
	Adjust consistently the signature.
	* include/bits/stl_deque.h (deque::deque(size_type, value_type,
	const allocator_type&)): Likewise.
	(deque::resize(size_type, const value_type&)): Likewise.
	* include/bits/stl_vector.h (vector::vector(size_type, value_type,
	const allocator_type&)): Likewise.
	(vector::resize(size_type, const value_type&)): Likewise.
	* testsuite/testsuite_hooks.h: Add NonDefaultConstructible test type.
	* testsuite/23_containers/deque/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/list/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/map/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/multimap/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/multiset/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/set/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/vector/explicit_instantiation/2.cc: New.

	* include/bits/deque.tcc: Minor formatting fix.

2005-06-06  Peter Doerfler  <doerfler@techinfo.rwth-aachen.de>

	* include/bits/stl_function.h: ... and another one.

2005-06-06  Peter Doerfler  <doerfler@techinfo.rwth-aachen.de>

	* include/bits/stl_function.h: Fix typo in comment.

2005-06-05  Paolo Carlini  <pcarlini@suse.de>

	* acinclude.m4 ([GLIBCXX_ENABLE_C99]): Check clog, clogf, clogl
	too for ac_c99_complex.
	* configure: Regenerate.

2005-06-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770
	* include/bits/stl_deque.h: Add concept-check. In class _Deque_base
	rebind _Alloc to  _Tp_alloc_type, change _Deque_impl to inherit from
	the latter and add _M_get_Tp_allocator() which returns it. Use
	everywhere _M_get_Tp_allocator() instead of get_allocator().
	* include/bits/deque.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_list.h: Add concept-check. In class _List_base
	rebind _Alloc to _Tp_alloc_type and add _M_get_Tp_allocator(), which
	returns the allocator (of type _Node_alloc_type) converted to
	_Tp_alloc_type. Use everywhere _M_get_Tp_allocator() instead of
	get_allocator().
	* include/bits/list.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_vector.h: Add concept-check. In class _Vector_base
	rebind _Alloc to _Tp_alloc_type, change _Vector_impl to inherit from
	the latter and add _M_get_Tp_allocator() which returns it. Use
	everywhere _M_get_Tp_allocator() instead of get_allocator().
	* include/bits/vector.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_map.h: Add concept-check. Rebind _Alloc to
	_Pair_alloc_type and use it for _Rb_tree.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_multiset.h: Add concept-check. Rebind _Alloc to
	_Key_alloc_type and use it for _Rb_tree.
	* include/bits/stl_set.h: Likewise.
	* include/bits/basic_string.h: Rebind _Alloc to _CharT_alloc_type and
	use it for the allocator typedefs.
	* testsuite/21_strings/basic_string/1.cc: New.
	* testsuite/23_containers/deque/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/deque/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/deque/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/list/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/list/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/list/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/map/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/map/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/map/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/multimap/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/multimap/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/multimap/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/multiset/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/multiset/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/multiset/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/set/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/set/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/set/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/vector/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/vector/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/vector/explicit_instantiation/3.cc: New.

2005-06-02  Nathan Sidwell  <nathan@codesourcery.com>

	PR c++/21280
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust expected errors.
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.

2005-05-31  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20534 (contd)
	* include/debug/macros.h: Add _GLIBCXX_DEBUG_ABORT, using
	__gnu_debug::__fancy_abort.
	* src/debug.cc: Define the latter.
	* include/debug/debug.h: Use _GLIBCXX_DEBUG_ABORT instead of
	assert.
	* config/linker-map.gnu (__gnu_debug::__fancy_abort): Add.

2005-05-30  Paolo Carlini  <pcarlini@suse.de>

	* include/std/std_complex.h (log(const complex<_Tp>&)): When
	_GLIBCXX_USE_C99_COMPLEX, forward to __builtin_clog/clogf/clogl.

2005-05-28  Paolo Carlini  <pcarlini@suse.de>

	Revert:
	2005-05-18  Paolo Carlini  <pcarlini@suse.de>
		    Nathan Myers  <ncm@cantrip.org>

	PR libstdc++/19495
	* include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
	size_type instead of char and rename to _Raw_alloc.
	* include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
	Use the above.
	* src/bitmap_allocator.cc: Add instantiation for size_type.
	* src/mt_allocator.cc: Likewise.
	* src/pool_allocator.cc: Likewise.
	* include/ext/array_allocator.h: Tweak slightly, avoid assuming
	the existence of an _Array::begin() and size() members.
	* testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
	of size_type, instead of char, thus avoiding problems with
	rebinds, not treated correctly by array_allocator.

2005-05-27  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/abi.html: Mention 3.4.0 as the current baseline; add
	a notice about the configure options.

2005-05-27  Mark Mitchell  <mark@codesourcery.com>

	* docs/html/test.html: Mention PCH_CXXFLAGS.
	* testsuite/lib/libstdc++.exp: Set PCH_CXXFLAGS by probing for an
	available stcd++.h PCH.
	* testsuite/libstdc++-dg/normal.exp: Use PCH_CXXFLAGS.

2005-05-27  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>

	* src/misc-inst.cc: Remove unnecessary included files.

2005-05-27  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/21674
	* include/bits/c++config: Remove extern template use when in debug
	mode, disable for non-weak systems.
	
2005-05-27  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/20534 
	* include/debug/debug.h: Forwarding header, that pulls in details
	only if in debug mode.
	* include/debug/macros.h: ...transfer all the internal macros here.
	* include/debug/functions.h: ...transfer all the functions here.
	* include/debug/safe_iterator.h: Add functions.h, macros.h includes.
	* include/debug/safe_sequence.h: Same.
	* include/debug/vector: Tweak.
	* include/Makefile.am (debug_headers): Add new includes.
	* include/Makefile.in: Regenerate.
	* testsuite/17_intro/no_assert_neg.cc: Add.

	* include/ext/hash_set: Add debug mode include.
	* include/ext/hash_map: Same.
	* include/debug/hash_map: Fix included files to match actual files.
	* include/debug/hash_set: Same.
		
2005-05-26  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/13943
	* include/c_std/std_cstdlib.h: Do not open code llabs and lldiv,
	available when _GLIBCXX_USE_C99 is defined.
	* testsuite/26_numerics/cstdlib/13943.cc: New.

	* acinclude.m4 ([GLIBCXX_ENABLE_C99]): For completeness, check
	also strtoll and strtoull for ac_c99_stdlib.
	* configure: Regenerate.

2005-05-25  Benjamin Kosnik  <bkoz@redhat.com>

	* config/linker-map.gnu: Add linkage support for no extern templates.
	(std::ios_base::_M_call_callbacks): Add.
	(std::ios_base::_M_dispose_callbacks): Add.
	(std::locale::facet::_S_get_c_name): Add.
	(std::__copy_streambufs): Add.
	* configure.ac (libtool_VERSION): To 6:5:0.
	* configure: Regenerate.
	* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.5.
	
2005-05-25  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.h (_Rep::_M_set_length_and_sharable):
	Use, consistently, traits_type::assign.

2005-05-25  Paolo Carlini  <pcarlini@suse.de>

	* config/cpu/alpha/atomicity.h: Use the builtins for
	atomic memory operations.
	* config/cpu/powerpc/atomicity.h: Likewise.
	* config/cpu/ia64/atomicity.h: Do not include ia64intrin.h.

2005-05-24  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/25_algorithms/equal.cc: Move to...
	* testsuite/25_algorithms/equal: ... here.
	* testsuite/25_algorithms/lower_bound.cc: Move to...
	* testsuite/25_algorithms/lower_bound: ... here.

2005-05-24  Paolo Carlini  <pcarlini@suse.de>

        Port from libstdcxx_so_7-branch:
	2005-20-05  Chris Jefferson  <chris@bubblescope.net>

	* testsuite/25_algorithms/heap.cc: Move to...
	* testsuite/25_algorithms/heap/heap.cc: ...here.
	* testsuite/25_algorithms/partition.cc: Move to...
	* testsuite/25_algorithms/partition/partition.cc: ...here.

	2005-03-29  Christopher Jefferson  <chris@bubblescope.net>

	* testsuite/25_algorithms/includes/1.cc: Add tests.
	* testsuite/25_algorithms/search/1.cc: Likewise.
	* testsuite/25_algorithms/unique_copy/1.cc: Likewise.
	* testsuite/25_algorithms/swap_ranges/1.cc: New.
	* testsuite/25_algorithms/swap_ranges/check_type.cc: New.
	* testsuite/25_algorithms/rotate.cc: Move to...
	* testsuite/25_algorithms/rotate/rotate.cc: ... here.
	* testsuite/25_algorithms/rotate/1.cc: New.
	* testsuite/25_algorithms/rotate/check_type.cc: New.
	* testsuite/25_algorithms/search_n/iterator.cc: Fix typo.

	2005-03-14  Christopher Jefferson  <chris@bubblescope.net>

	* include/bits/stl_algo.h (replace_copy, replace_copy_if):
	Don't assume that __new_value and *__first are convertible to
	each other.	

	* testsuite/25_algorithms/find/1.cc: New.
	* testsuite/25_algorithms/find/check_type.cc: New.
	* testsuite/25_algorithms/find_if/1.cc: New.
	* testsuite/25_algorithms/find_if/check_type.cc: New.
	* testsuite/25_algorithms/replace/1.cc: New.
	* testsuite/25_algorithms/replace/check_type.cc: New.
	* testsuite/25_algorithms/replace_if/1.cc: New.
	* testsuite/25_algorithms/replace_if/check_type.cc: New.
	* testsuite/25_algorithms/replace_copy/1.cc: New.
	* testsuite/25_algorithms/replace_copy/check_type.cc: New.
	* testsuite/25_algorithms/replace_copy_if/1.cc: New.
	* testsuite/25_algorithms/replace_copy_if/check_type.cc: New.
	* testsuite/25_algorithms/remove/1.cc: New.
	* testsuite/25_algorithms/remove/check_type.cc: New.
	* testsuite/25_algorithms/remove_if/1.cc: New.
	* testsuite/25_algorithms/remove_if/check_type.cc: New.
	* testsuite/25_algorithms/count/1.cc: New.
	* testsuite/25_algorithms/count/check_type.cc: New.
	* testsuite/25_algorithms/count_if/1.cc: New.
	* testsuite/25_algorithms/count_if/check_type.cc: New.

	2005-02-27  Christopher Jefferson  <chris@bubblescope.net>
        	    Paolo Carlini  <pcarlini@suse.de>

	* testsuite/ext/is_heap/check_type.cc: New.
	
	2005-02-27  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/ext/is_heap/1.cc: New.

	2005-02-01  Christopher Jefferson  <chris@bubblescope.net>

	* testsuite/ext/median.cc: New.
	* testsuite/25_algorithms/adjacent_find/1.cc: New.
	* testsuite/25_algorithms/adjacent_find/check_type.cc: New.
	* testsuite/25_algorithms/search/1.cc: New.
	* testsuite/25_algorithms/search/check_type.cc: New.
	* testsuite/25_algorithms/unique_copy/1.cc: New.
	* testsuite/25_algorithms/unique_copy/check_type.cc: New.
	* testsuite/25_algorithms/partial_sort/1.cc: New.
	* testsuite/25_algorithms/partial_sort/check_type.cc: New.
	* testsuite/25_algorithms/partial_sort_copy/1.cc: New.
	* testsuite/25_algorithms/partial_sort_copy/check_type.cc: New.
	* testsuite/25_algorithms/lower_bound/1.cc: New.
	* testsuite/25_algorithms/lower_bound/check_type.cc: New.
	* testsuite/25_algorithms/upper_bound/1.cc: New.
	* testsuite/25_algorithms/upper_bound/check_type.cc: New.
	* testsuite/25_algorithms/merge/1.cc: New.
	* testsuite/25_algorithms/merge/check_type.cc: New.
	* testsuite/25_algorithms/inplace_merge/1.cc: New.
	* testsuite/25_algorithms/inplace_merge/check_type.cc: New.
	* testsuite/25_algorithms/stable_sort/1.cc: New.
	* testsuite/25_algorithms/stable_sort/check_type.cc: New.
	* testsuite/25_algorithms/nth_element/1.cc: New.
	* testsuite/25_algorithms/nth_element/check_type.cc: New.
	* testsuite/25_algorithms/equal_range/1.cc: New.
	* testsuite/25_algorithms/equal_range/check_type.cc: New.
	* testsuite/25_algorithms/binary_search/1.cc: New.
	* testsuite/25_algorithms/binary_search/check_type.cc: New.
	* testsuite/25_algorithms/includes/1.cc: New.
	* testsuite/25_algorithms/includes/check_type.cc: New.
	* testsuite/25_algorithms/set_union/1.cc: New.
	* testsuite/25_algorithms/set_union/check_type.cc: New.
	* testsuite/25_algorithms/set_intersection/1.cc: New.
	* testsuite/25_algorithms/set_intersection/check_type.cc: New.
	* testsuite/25_algorithms/set_difference/1.cc: New.
	* testsuite/25_algorithms/set_difference/check_type.cc: New.
	* testsuite/25_algorithms/set_symmetric_difference/1.cc: New.
	* testsuite/25_algorithms/set_symmetric_difference/check_type.cc: New.	
	* testsuite/25_algorithms/min_element/1.cc: New.
	* testsuite/25_algorithms/min_element/check_type.cc: New.
	* testsuite/25_algorithms/max_element/1.cc: New.
	* testsuite/25_algorithms/max_element/check_type.cc: New.
	* testsuite/25_algorithms/prev_permutation/1.cc: New.
	* testsuite/25_algorithms/prev_permutation/check_type.cc: New.
	* testsuite/25_algorithms/next_permutation/1.cc: New.
	* testsuite/25_algorithms/next_permutation/check_type.cc: New.
	* testsuite/25_algorithms/find_first_of/1.cc: New.
	* testsuite/25_algorithms/find_first_of/check_type.cc: New.
	* testsuite/25_algorithms/find_end/1.cc: New.
	* testsuite/25_algorithms/find_end/check_type.cc: New.
	* testsuite/25_algorithms/equal/check_type.cc: Insert iterator type.
	* testsuite/25_algorithms/lexicographical_compare/check_type.cc:
	Likewise.

	2005-01-10  Christopher Jefferson <chris@bubblescope.net>

	* testsuite/25_algorithms/lexicographical_compare/check_type.cc: New.
	* testsuite/25_algorithms/lexicographical_compare/1.cc: Likewise.
	* testsuite/25_algorithms/mismatch/check_type.cc: Likewise.
	* testsuite/25_algorithms/mismatch/1.cc: Likewise.
	* testsuite/25_algorithms/equal/check_type.cc: New.
	* testsuite/25_algorithms/equal/1.cc: New.

2005-05-24  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/allocator.h: Change ___glibcxx_base_allocator to
	__glibcxx_base_allocator.
	* config/allocator/bitmap_allocator_base.h: Same.
	* config/allocator/malloc_allocator_base.h: Same.
	* config/allocator/mt_allocator_base.h: Same.
	* config/allocator/new_allocator_base.h: Same.
	* config/allocator/pool_allocator_base.h: Same.

2005-05-24  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/debug/string (class basic_string): Add missing
	default template arguments; provide typedefs for char
	and wchar_t.
	(operator[]): Allow s[s.size()] in debug mode, but not
	pedantic mode.

2005-05-24  Paolo Carlini  <pcarlini@suse.de>

	Port from libstdcxx_so_7-branch:
	2005-04-25  Christopher Jefferson  <chris@bubblescope.net>

	* include/bits/stl_algo.h (count): Correct concept checks.
	(search_n) : Likewise.
	* testsuite/25_algorithms/search_n/check_type.cc: New.

	* testsuite/testsuite_iterators.h
	(random_access_iterator_wrapper::operator+): Move out of
	class to external function, and add symmetric version.

	2005-03-14  Christopher Jefferson  <chris@bubblescope.net>

	* testsuite/testsuite_iterators.h (WritableObject::WritableObject):
	Add const.
	
	2005-02-01  Christopher Jefferson  <chris@bubblescope.net>

	* testsuite/testsuite_iterators.h (random_access_iterator_wrapper::
	operator--): Fix typo.
	(OutputContainer::OutputContainer): Correct zeroing array.
	(WritableObject::operator==): Fix typo.
        (WritableObject::operator=): make operator= templated 
	to allow differing types to be assigned.
	(WritableObject::operator++): Fix checking if iterator is
	written to multiple times.
	(random_access_iterator_wrapper::operator+): Add const.
	(random_access_iterator_wrapper::operator-): Likewise.
	(random_access_iterator_wrapper::operator[]): Add dereference.

2005-05-23  Jonathan Wakely  <redi@gcc.gnu.org>

	* docs/html/debug.html: Explain that _GLIBXX_DEBUG_PEDANTIC
	had to be defined for pedantic mode in 3.4 and 4.0.0.

2005-05-20  Jan Beulich  <jbeulich@novell.com>

	* libmath/stubs.c: Also implement fabsf/fabsl if not present in the
	system libraries.

2005-05-20  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algo.h (__rotate<_RandomAccessIterator>):
	Don't qualify __tmp as const, _ValueType is not necessarily
	Assignable.
	* include/bits/stl_algobase.h (swap, __iter_swap<false>):
	Likewise, as an harmless extension.

2005-05-19  Richard Henderson  <rth@redhat.com>

	* libsupc++/unwind-cxx.h: Revert gcc_unreachable change.

2005-05-19  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/bits/basic_string.h (operator[]): Allow s[s.size()] in
	debug mode, but not pedantic mode.

2005-05-19  Jan Beulich  <jbeulich@novell.com>

	* libsupc++/unwind-cxx.h: Include cstdlib.
	(gcc_unreachable): #define.
	* libsupc++/eh_personality.cc (gcc_unreachable): Remove #define.

2005-05-18  Paolo Carlini  <pcarlini@suse.de>
	    Nathan Myers  <ncm@cantrip.org>

	PR libstdc++/19495
	* include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
	size_type instead of char and rename to _Raw_alloc.
	* include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
	Use the above.
	* src/bitmap_allocator.cc: Add instantiation for size_type.
	* src/mt_allocator.cc: Likewise.
	* src/pool_allocator.cc: Likewise.
	* include/ext/array_allocator.h: Tweak slightly, avoid assuming
	the existence of an _Array::begin() and size() members.
	* testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
	of size_type, instead of char, thus avoiding problems with
	rebinds, not treated correctly by array_allocator.

2005-05-18  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/22_locale/ctype/is/char/2.cc: Adjust dg-require-namedlocale.
	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/time_get/get_year/char/wrapped_env.cc: Add
	missing dg-require-namedlocale.
	* testsuite/22_locale/time_get/get_year/char/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_year/wchar_t/wrapped_env.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_year/wchar_t/wrapped_locale.cc:
	Likewise.

2005-05-18  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/testsuite_hooks.cc: Remove try_named_locale.
	* testsuite/testsuite_hooks.h: Remove try_named_locale.
	* testsuite/lib/libstdc++.exp (check_v3_target_namedlocale): New.
	* testsuite/lib/dg-options.exp (dg-require-namedlocale): New, uses
	the above.
	* testsuite/22_locale/codecvt/always_noconv/char/wrapped_env.cc: Use
	dg-require-namedlocale.
	* testsuite/22_locale/codecvt/always_noconv/char/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Likewise.
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Likewise.
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/wrapped_env.cc: 
	Likewise.
	* testsuite/22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/codecvt/encoding/char/wrapped_env.cc: Likewise.
	* testsuite/22_locale/codecvt/encoding/char/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Likewise.
	* testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Likewise.
	* testsuite/22_locale/codecvt/encoding/wchar_t/wrapped_env.cc: Likewise.
	* testsuite/22_locale/codecvt/encoding/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/codecvt/in/char/wrapped_env.cc: Likewise.
	* testsuite/22_locale/codecvt/in/char/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/codecvt/in/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/codecvt/in/wchar_t/3.cc: Likewise.
	* testsuite/22_locale/codecvt/in/wchar_t/4.cc: Likewise.
	* testsuite/22_locale/codecvt/in/wchar_t/7.cc: Likewise. 
	* testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
	* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
	* testsuite/22_locale/codecvt/in/wchar_t/wrapped_env.cc: Likewise. 
	* testsuite/22_locale/codecvt/in/wchar_t/wrapped_locale.cc: Likewise.    
	* testsuite/22_locale/codecvt/length/char/wrapped_env.cc: Likewise. 
	* testsuite/22_locale/codecvt/length/char/wrapped_locale.cc: Likewise.    
	* testsuite/22_locale/codecvt/length/wchar_t/2.cc: Likewise.   
	* testsuite/22_locale/codecvt/length/wchar_t/3.cc: Likewise.   
	* testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.   
	* testsuite/22_locale/codecvt/length/wchar_t/7.cc: Likewise.   
	* testsuite/22_locale/codecvt/length/wchar_t/wrapped_env.cc: Likewise.      
	* testsuite/22_locale/codecvt/length/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/codecvt/max_length/char/wrapped_env.cc: Likewise.
	* testsuite/22_locale/codecvt/max_length/char/wrapped_locale.cc:
	Likewise.  
	* testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Likewise.    
	* testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Likewise.    
	* testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Likewise.    
	* testsuite/22_locale/codecvt/max_length/wchar_t/wrapped_env.cc:
	Likewise.  
	* testsuite/22_locale/codecvt/max_length/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/codecvt/out/char/wrapped_env.cc: Likewise.    
	* testsuite/22_locale/codecvt/out/char/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/codecvt/out/wchar_t/2.cc: Likewise.  
	* testsuite/22_locale/codecvt/out/wchar_t/3.cc: Likewise.  
	* testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.  
	* testsuite/22_locale/codecvt/out/wchar_t/7.cc: Likewise.  
	* testsuite/22_locale/codecvt/out/wchar_t/wrapped_env.cc: Likewise. 
	* testsuite/22_locale/codecvt/out/wchar_t/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/codecvt/unshift/char/wrapped_env.cc: Likewise.   
	* testsuite/22_locale/codecvt/unshift/char/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.    
	* testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.    
	* testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.    
	* testsuite/22_locale/codecvt/unshift/wchar_t/wrapped_env.cc: Likewise.
	* testsuite/22_locale/codecvt/unshift/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/collate/compare/char/1.cc: Likewise.  
	* testsuite/22_locale/collate/compare/char/2.cc: Likewise.  
	* testsuite/22_locale/collate/compare/char/3.cc: Likewise.  
	* testsuite/22_locale/collate/compare/char/wrapped_env.cc: Likewise.        
	* testsuite/22_locale/collate/compare/char/wrapped_locale.cc: Likewise.     
	* testsuite/22_locale/collate/compare/wchar_t/1.cc: Likewise.     
	* testsuite/22_locale/collate/compare/wchar_t/2.cc: Likewise.     
	* testsuite/22_locale/collate/compare/wchar_t/3.cc: Likewise.     
	* testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Likewise.
	* testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc:
	Likewise.  
	* testsuite/22_locale/collate/hash/char/2.cc: Likewise.     
	* testsuite/22_locale/collate/hash/char/wrapped_env.cc: Likewise.   
	* testsuite/22_locale/collate/hash/char/wrapped_locale.cc: Likewise.        
	* testsuite/22_locale/collate/hash/wchar_t/2.cc: Likewise.  
	* testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Likewise.
	* testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Likewise.     
	* testsuite/22_locale/collate/transform/char/2.cc: Likewise.     
	* testsuite/22_locale/collate/transform/char/3.cc: Likewise.     
	* testsuite/22_locale/collate/transform/char/wrapped_env.cc: Likewise.      
	* testsuite/22_locale/collate/transform/char/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/collate/transform/wchar_t/2.cc: Likewise. 
	* testsuite/22_locale/collate/transform/wchar_t/3.cc: Likewise. 
	* testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc:
	Likewise.
	* testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/collate_byname/named_equivalence.cc: Likewise.
	* testsuite/22_locale/ctype/cons/char/wrapped_env.cc: Likewise.    
	* testsuite/22_locale/ctype/cons/char/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/ctype/is/char/2.cc: Likewise. 
	* testsuite/22_locale/ctype/is/char/wrapped_env.cc: Likewise.      
	* testsuite/22_locale/ctype/is/char/wrapped_locale.cc: Likewise.  
	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.   
	* testsuite/22_locale/ctype/is/wchar_t/wrapped_env.cc: Likewise.  
	* testsuite/22_locale/ctype/is/wchar_t/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/ctype/narrow/char/wrapped_env.cc: Likewise.
	* testsuite/22_locale/ctype/narrow/char/wrapped_locale.cc: Likewise.        
	* testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Likewise. 
	* testsuite/22_locale/ctype/narrow/wchar_t/wrapped_env.cc: Likewise.        
	* testsuite/22_locale/ctype/narrow/wchar_t/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/ctype/scan/char/wrapped_env.cc: Likewise.   
	* testsuite/22_locale/ctype/scan/char/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/ctype/scan/wchar_t/wrapped_env.cc: Likewise. 
	* testsuite/22_locale/ctype/scan/wchar_t/wrapped_locale.cc: Likewise.       
	* testsuite/22_locale/ctype/to/char/wrapped_env.cc: Likewise.       
	* testsuite/22_locale/ctype/to/char/wrapped_locale.cc: Likewise.    
	* testsuite/22_locale/ctype/to/wchar_t/wrapped_env.cc: Likewise.    
	* testsuite/22_locale/ctype/to/wchar_t/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/ctype/widen/char/wrapped_env.cc: Likewise.    
	* testsuite/22_locale/ctype/widen/char/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/ctype/widen/wchar_t/2.cc: Likewise.   
	* testsuite/22_locale/ctype/widen/wchar_t/3.cc: Likewise.   
	* testsuite/22_locale/ctype/widen/wchar_t/wrapped_env.cc: Likewise.
	* testsuite/22_locale/ctype/widen/wchar_t/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/facet/2.cc: Likewise.
	* testsuite/22_locale/locale/cons/12352.cc: Likewise.
	* testsuite/22_locale/locale/cons/12438.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise. 
	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise. 
	* testsuite/22_locale/locale/cons/2.cc: Likewise.
	* testsuite/22_locale/locale/cons/4.cc: Likewise.
	* testsuite/22_locale/locale/cons/5.cc: Likewise.
	* testsuite/22_locale/locale/cons/7.cc: Likewise.
	* testsuite/22_locale/locale/cons/7222-env.cc: Likewise.  
	* testsuite/22_locale/locale/global_locale_objects/14071.cc: Likewise.  
	* testsuite/22_locale/locale/global_locale_objects/2.cc: Likewise.
	* testsuite/22_locale/messages/members/char/1.cc: Likewise.
	* testsuite/22_locale/messages/members/char/2.cc: Likewise.
	* testsuite/22_locale/messages/members/char/3.cc: Likewise.
	* testsuite/22_locale/messages/members/char/wrapped_env.cc: Likewise.   
	* testsuite/22_locale/messages/members/char/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/messages_byname/named_equivalence.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/1.cc: Likewise.    
	* testsuite/22_locale/money_get/get/char/10.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/11.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/11528.cc: Likewise.
	* testsuite/22_locale/money_get/get/char/12.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/13.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/15.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/16.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/17.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/18.cc: Likewise.   
	* testsuite/22_locale/money_get/get/char/2.cc: Likewise.    
	* testsuite/22_locale/money_get/get/char/3.cc: Likewise.    
	* testsuite/22_locale/money_get/get/char/4.cc: Likewise.    
	* testsuite/22_locale/money_get/get/char/wrapped_env.cc: Likewise. 
	* testsuite/22_locale/money_get/get/char/wrapped_locale.cc: Likewise.  
	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise. 
	* testsuite/22_locale/money_get/get/wchar_t/10.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/11.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/11528.cc: Likewise.
	* testsuite/22_locale/money_get/get/wchar_t/12.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/13.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/15.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/16.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/17.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/18.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise. 
	* testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise. 
	* testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise. 
	* testsuite/22_locale/money_get/get/wchar_t/wrapped_env.cc: Likewise.      
	* testsuite/22_locale/money_get/get/wchar_t/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/money_put/put/char/1.cc: Likewise.  
	* testsuite/22_locale/money_put/put/char/2.cc: Likewise.  
	* testsuite/22_locale/money_put/put/char/3.cc: Likewise.  
	* testsuite/22_locale/money_put/put/char/9780-3.cc: Likewise.      
	* testsuite/22_locale/money_put/put/char/wrapped_env.cc: Likewise. 
	* testsuite/22_locale/money_put/put/char/wrapped_locale.cc: Likewise.  
	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise. 
	* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise. 
	* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise. 
	* testsuite/22_locale/money_put/put/wchar_t/wrapped_env.cc: Likewise.     
	* testsuite/22_locale/money_put/put/wchar_t/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/moneypunct/members/char/2.cc: Likewise.
	* testsuite/22_locale/moneypunct/members/char/wrapped_env.cc: Likewise.    
	* testsuite/22_locale/moneypunct/members/char/wrapped_locale.cc:
	Likewise. 
	* testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Likewise.   
	* testsuite/22_locale/moneypunct/members/wchar_t/wrapped_env.cc:
	Likewise.
	* testsuite/22_locale/moneypunct/members/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/moneypunct_byname/named_equivalence.cc: Likewise.
	* testsuite/22_locale/num_get/get/char/1.cc: Likewise.   
	* testsuite/22_locale/num_get/get/char/3.cc: Likewise.   
	* testsuite/22_locale/num_get/get/char/5.cc: Likewise.   
	* testsuite/22_locale/num_get/get/char/6.cc: Likewise.   
	* testsuite/22_locale/num_get/get/char/9.cc: Likewise.   
	* testsuite/22_locale/num_get/get/char/wrapped_env.cc: Likewise.
	* testsuite/22_locale/num_get/get/char/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.  
	* testsuite/22_locale/num_get/get/wchar_t/3.cc: Likewise.  
	* testsuite/22_locale/num_get/get/wchar_t/5.cc: Likewise.  
	* testsuite/22_locale/num_get/get/wchar_t/6.cc: Likewise.  
	* testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.  
	* testsuite/22_locale/num_get/get/wchar_t/wrapped_env.cc: Likewise. 
	* testsuite/22_locale/num_get/get/wchar_t/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/num_put/put/char/1.cc: Likewise.      
	* testsuite/22_locale/num_put/put/char/20909.cc: Likewise.  
	* testsuite/22_locale/num_put/put/char/20914.cc: Likewise.  
	* testsuite/22_locale/num_put/put/char/3.cc: Likewise.      
	* testsuite/22_locale/num_put/put/char/5.cc: Likewise.      
	* testsuite/22_locale/num_put/put/char/9780-2.cc: Likewise. 
	* testsuite/22_locale/num_put/put/char/wrapped_env.cc: Likewise.    
	* testsuite/22_locale/num_put/put/char/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise. 
	* testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.   
	* testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.   
	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise. 
	* testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
	* testsuite/22_locale/num_put/put/wchar_t/wrapped_env.cc: Likewise.
	* testsuite/22_locale/num_put/put/wchar_t/wrapped_locale.cc: Likewise. 
	* testsuite/22_locale/numpunct/members/char/2.cc: Likewise.
	* testsuite/22_locale/numpunct/members/char/3.cc: Likewise.
	* testsuite/22_locale/numpunct/members/char/wrapped_env.cc: Likewise.    
	* testsuite/22_locale/numpunct/members/char/wrapped_locale.cc: Likewise.
	* testsuite/22_locale/numpunct/members/wchar_t/2.cc: Likewise.    
	* testsuite/22_locale/numpunct/members/wchar_t/wrapped_env.cc: Likewise.
	* testsuite/22_locale/numpunct/members/wchar_t/wrapped_locale.cc:
	Likewise. 
	* testsuite/22_locale/numpunct_byname/named_equivalence.cc: Likewise.       
	* testsuite/22_locale/time_get/date_order/char/wrapped_env.cc: Likewise.    
	* testsuite/22_locale/time_get/date_order/char/wrapped_locale.cc:
	Likewise. 
	* testsuite/22_locale/time_get/date_order/wchar_t/wrapped_env.cc:
	Likewise. 
	* testsuite/22_locale/time_get/date_order/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_date/char/12750.cc: Likewise.
	* testsuite/22_locale/time_get/get_date/char/2.cc: Likewise.   
	* testsuite/22_locale/time_get/get_date/char/wrapped_env.cc: Likewise.      
	* testsuite/22_locale/time_get/get_date/char/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Likewise. 
	* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Likewise.     
	* testsuite/22_locale/time_get/get_date/wchar_t/4.cc: Likewise.     
	* testsuite/22_locale/time_get/get_date/wchar_t/wrapped_env.cc:
	Likewise.  
	* testsuite/22_locale/time_get/get_date/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_monthname/char/2.cc: Likewise.  
	* testsuite/22_locale/time_get/get_monthname/char/wrapped_env.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_monthname/char/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/time_get/get_monthname/wchar_t/wrapped_env.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_monthname/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_time/char/2.cc: Likewise.
	* testsuite/22_locale/time_get/get_time/char/wrapped_env.cc: Likewise.
	* testsuite/22_locale/time_get/get_time/char/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
	* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/time_get/get_time/wchar_t/wrapped_env.cc:
	Likewise. 
	* testsuite/22_locale/time_get/get_time/wchar_t/wrapped_locale.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_weekday/char/2.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/char/wrapped_env.cc:
	Likewise.
	* testsuite/22_locale/time_get/get_weekday/char/wrapped_locale.cc:
	Likewise. 
	* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/time_get/get_weekday/wchar_t/wrapped_env.cc:
	Likewise.    
	* testsuite/22_locale/time_get/get_weekday/wchar_t/wrapped_locale.cc:
	Likewise. 
	* testsuite/22_locale/time_put/put/char/17038.cc: Likewise. 
	* testsuite/22_locale/time_put/put/char/2.cc: Likewise.     
	* testsuite/22_locale/time_put/put/char/3.cc: Likewise.     
	* testsuite/22_locale/time_put/put/char/4.cc: Likewise.     
	* testsuite/22_locale/time_put/put/char/6.cc: Likewise.     
	* testsuite/22_locale/time_put/put/char/7.cc: Likewise.     
	* testsuite/22_locale/time_put/put/char/8.cc: Likewise.     
	* testsuite/22_locale/time_put/put/char/9780-1.cc: Likewise.       
	* testsuite/22_locale/time_put/put/char/wrapped_env.cc: Likewise.
	* testsuite/22_locale/time_put/put/char/wrapped_locale.cc: Likewise.  
	* testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.   
	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
	* testsuite/22_locale/time_put/put/wchar_t/wrapped_env.cc: Likewise.     
	* testsuite/22_locale/time_put/put/wchar_t/wrapped_locale.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13007.cc: Likewise.  
	* testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/2.cc: Likewise. 
	* testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Likewise.       
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: Likewise.   
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: Likewise. 
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Likewise. 
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Likewise. 
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: Likewise. 
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.       
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: Likewise.    
	* testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc: Likewise.  
	* 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.  
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: Likewise.    
	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: Likewise.    
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise. 
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: Likewise.  
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: Likewise.  
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: Likewise.  
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: Likewise.  
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: Likewise.  
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: Likewise.        
	* testsuite/27_io/basic_ios/copyfmt/char/2.cc: Likewise.   
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
	Likewise.   
	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/2.cc:
	Likewise.
	* testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: Likewise.
	* testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: Likewise.
	* testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Likewise.  
	* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: Likewise.    
	* testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: Likewise.    
	* testsuite/27_io/basic_streambuf/imbue/wchar_t/9322.cc: Likewise. 
	* testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Likewise.    
	* testsuite/27_io/basic_stringbuf/imbue/wchar_t/9322.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/10.cc: Likewise. 
	* testsuite/27_io/objects/wchar_t/11.cc: Likewise. 
	* testsuite/27_io/objects/wchar_t/12.cc: Likewise. 
	* testsuite/27_io/objects/wchar_t/13.cc: Likewise. 
	* testsuite/27_io/objects/wchar_t/9520.cc: Likewise.
	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.

2005-05-17  Nathan Sidwell  <nathan@codesourcery.com>

	* libsupc++/eh_personality.cc (gcc_unreachable): Define.

2005-05-16  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/install.html: Update list of required named
	locales, add "es_ES".

2005-05-13  Magnus Fromreide  <magfr@lysator.liu.se>

	* testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Use
	initialization instead of copying as the string is used only once.
	* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.

2005-05-12  Benjamin Kosnik  <bkoz@redhat.com>

	* scripts/create_testsuite_files: Fix.
	
2005-05-12  Kaz Kojima  <kkojima@gcc.gnu.org>

	* testsuite/18_support/numeric_limits.cc (dg-options): Add
	-mieee to options on sh*-*-*.

2005-05-10  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/debug/debug.h: Fix typo in macro name.

2005-05-09  Paolo Carlini  <pcarlini@suse.de>
	    Giovanni Bajo  <giovannibajo@gcc.gnu.org>
	    
	PR libstdc++/18604
	* include/bits/deque.tcc: Fully qualify names from namespace std.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/stl_deque.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_set.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/vector.tcc: Likewise.
	* include/std/std_bitset.h: Likewise.
	* testsuite/23_containers/bitset/18604.cc: New.
	* testsuite/23_containers/deque/18604.cc: Likewise.
	* testsuite/23_containers/list/18604.cc: Likewise.
	* testsuite/23_containers/map/18604.cc: Likewise.
	* testsuite/23_containers/set/18604.cc: Likewise.
	* testsuite/23_containers/vector/18604.cc: Likewise.	

2005-05-09  Mike Stump  <mrs@apple.com>

	* configure: Regenerate.

2005-05-09  Jonathan Wakely  <redi@gcc.gnu.org>

	DR 434. bitset::to_string() hard to use [Ready]
	* include/debug/bitset (to_string): Add three overloads, taking
	fewer template arguments.

2005-05-06  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/testsuite_hooks.cc (try_mkfifo): Remove.
	* testsuite/testsuite_hooks.h (try_mkfifo): Likewise.
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
	dg-require-fork and dg-require-mkfifo.  Replace try_mkfifo with
	mkfifo.
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
	Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
	Likewise.
	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
	Likewise.
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
	* testsuite/27_io/objects/char/7.cc: Likewise.
	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.

2005-05-04  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
	* testsuite/Makefile.am: Same.
	* scripts/create_testsuite_files: Same.	
	* Makefile.in: Regenerate.
	* configure: Same.
	* include/Makefile.in: Same.
	* libmath/Makefile.in: Same.
	* libsupc++/Makefile.in: Same.
	* po/Makefile.in: Same.
	* src/Makefile.in: Same.

2005-05-04  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/lib/libstdc++.exp (v3-build_support): Look for
	__GTHREADS, rather than _GLIBCXX_HAVE_GTHR_DEFAULT, to determine
	whether or not thread support is available.

	* docs/html/test.html: Explain how to run the testsuite on an
	installed directory. 

2005-05-01  Paolo Carlini  <pcarlini@suse.de>

	* config/os/aix/os_defines.h: Remove obsolete __off_t,
	__off64_t, __ssize_t defines.
	* config/os/djgpp/os_defines.h: Likewise.
	* config/os/hpux/os_defines.h: Likewise.
	* config/os/irix/irix5.2/os_defines.h: Likewise.
	* config/os/irix/irix6.5/os_defines.h: Likewise.
	* config/os/solaris/solaris2.5/os_defines.h: Likewise.
	* config/os/solaris/solaris2.6/os_defines.h: Likewise.
	* config/os/solaris/solaris2.7/os_defines.h: Likewise.
	* docs/html/17_intro/porting.html: Don't discuss the defines.
	* docs/html/17_intro/porting.texi: Likewise.

2005-04-29  Paolo Carlini  <pcarlini@suse.de>
	    Nathan Myers  <ncm@cantrip.org>

	PR libstdc++/21286
	* include/bits/fstream.tcc (basic_filebuf<>::xsgetn):
	Loop on short reads; remove the work-around for
	libstdc++/20806, not needed anymore.

2005-04-29  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21238
	* include/bits/locale_facets.tcc (num_get::_M_extract_float,
	num_get::_M_extract_int, num_get::do_get(bool&),
	num_put::_M_insert_int, num_put::_M_insert_float,
	num_put::do_put(bool), money_get::_M_extract,
	money_put::_M_insert): Adjust the __cache_type typedef not to
	forward to a numpunct/moneypunct typedef.
	* testsuite/testsuite_character.h: Add pod_uint and its numpunct
	and moneypunct specializations.
	* testsuite/testsuite_character.cc: Add numpunct<pod_uint>::id
	and moneypunct<pod_uint>::id.
	* testsuite/22_locale/num_get/3.cc: New.
	* testsuite/22_locale/num_put/3.cc: Likewise.
	* testsuite/22_locale/money_get/3.cc: Likewise.
	* testsuite/22_locale/money_put/3.cc: Likewise.

	* include/bits/locale_facets.tcc (money_put::_M_insert,
	time_get::_M_extract_name): Prefer operator== to operator!=
	on char_types.

2005-04-29  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (is_convertible): Adjust according
	to the resolution of TR1 issue 3.20.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_convertible/is_convertible.cc: Add tests.

2005-04-28  Paolo Carlini  <pcarlini@suse.de>
	    Gabriel Dos Reis  <gdr@integrable-solutions.net>

	PR libstdc++/21244 (cont)
	* include/bits/cpp_type_traits.h (struct __traitor): Convert
	to bool the values.
	* include/bits/stl_algo.h: Convert _S_threshold to int.
	* include/bits/stl_bvector.h: Revert previous change, convert
	_S_word_bit to int.
	* include/debug/formatter.h: Convert __max_parameters to
	size_t.
	* include/ext/mt_allocator.h: Likewise for _S_chunk_size.
	* include/ext/pool_allocator.h: Likewise for _S_max_bytes and
	_S_align.
	* include/ext/rope: Likewise for _S_alloc_granularity; convert
	_S_max_rope_depth to int.
	* include/ext/ropeimpl.h: Convert _S_path_cache_len to int;
	_S_max_rope_depth to int; _S_copy_max to size_t.

2005-04-27  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/doxygen/user.cfg.in: Update to doxygen-1.4.2.
	* docs/doxygen/doxygroups.cc: Update namespace comments.

2005-04-27  Dominik Strasser  <dominik.strasser@infineon.com>
	    Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21244
	* include/bits/stl_bvector.h: Change the anonymous enum
	at namespace scope to _S_word_bit_enum.
	* testsuite/23_containers/vector/bool/21244.cc: New.

2005-04-27  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (has_trivial_copy, has_trivial_assign,
	has_nothrow_copy, has_nothrow_assign): Adjust according to the
	resolution of TR1 issue 3.21.
	* testsuite/testsuite_tr1.h (test_copy_property,
	test_assign_property): Remove.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_nothrow_assign/has_nothrow_assign.cc: Adjust.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_nothrow_copy/has_nothrow_copy.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_trivial_assign/has_trivial_assign.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	has_trivial_copy/has_trivial_copy.cc: Likewise.

2005-04-26  Jones Desougi  <jones@ingate.com>

	PR libstdc++/21131
	* linkage.m4: Fix comments.

2005-04-26  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21209
	* include/bits/locale_facets.tcc (_M_extract_int): Avoid signed
	integer overflow, always use a suited unsigned type in the main
	parsing loop.
	(struct __to_unsigned_type): New.
	* testsuite/22_locale/num_get/get/char/16.cc: New.
	* testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.

2005-04-25  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21035
	* include/bits/basic_string.h (compare): Adjust the documentation
	to match the implementation and the standard.

2005-04-24  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 35.

2005-04-20  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/ext/bitmap_allocator/check_allocate_max_size.cpp: Add
	explicit instantiations for systems without weak symbols.
	* testsuite/ext/bitmap_allocator/check_deallocate_null.cc:
	Likewise. 

2005-04-18  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/bits/stl_algo.h (rotate_copy): Add missing std qualification.

2005-04-17  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20914
	* include/bits/locale_facets.tcc (__int_to_char(_CharT*, _ValueT,
	const _CharT*, ios_base::fmtflags, bool)): Don't deal with numeric
	base or sign here, instead...
	(_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)): ... here,
	after adding the grouping. This fixes the bug and also allows to
	clean-up the code dealing with integer types.
	(_M_group_int(const char*, size_t, _CharT, ios_base&, _CharT*,
	_CharT*, int&)): Simplify, remove bits dealing with numeric base.
	(__int_to_char(_CharT*, unsigned long, const _CharT*,
	ios_base::fmtflags), __int_to_char(_CharT*, unsigned long long,
	const _CharT*, ios_base::fmtflags)): Remove hackish fix for
	libstdc++/15565.
	(__int_to_char(_CharT*, long, const _CharT*, ios_base::fmtflags),
	__int_to_char(_CharT*, long long, const _CharT*, ios_base::fmtflags)):
	Simplify, don't pass the sign.
	(_M_insert_float(_OutIter, ios_base&, _CharT, char, _ValueT)):
	Deal with a sign at the beginning of __cs; robustify the grouping
	check.
	* testsuite/22_locale/num_put/put/char/20914.cc: New.
	* testsuite/22_locale/num_put/put/wchar_t/20914.cc: Likewise.

2005-04-14  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/bitmap_allocator.h
	(__gnu_cxx::free_list::_M_get_mutex): New.
	(__gnu_cxx::free_list::_M_get_free_list): New.
	(__gnu_cxx::free_list::_S_bfl_mutex): Remove.
	(__gnu_cxx::free_list::_S_free_list): Remove.
	* src/bitmap_allocator.cc: Same.
	* config/linker-map.gnu: Remove free_list and mutex export.

2005-04-14  Benjamin Kosnik  <bkoz@redhat.com>

	*  include/ext/pod_char_traits.h (__gnu_cxx::character): Add char_type.
	(character::to): New.
	(character::from): New.
	(operator==): Add state parameter.
	(operator<): Same.
	(char_traits::copy): Use std::copy.
	(char_traits::assign): Use std::fill_n.
	(char_traits::to_char_type): Use character::from.
	(char_traits::to_int_type): Use character::to.
	*  testsuite/testsuite_character.h (__gnu_test::character): Remove.
	(__gnu_test::conversion_state): Remove.
	(__gnu_test::pod_char): Remove.
	(pod_char): New typedef.
	(pod_uchar): New typedef.
	(pod_ushort): New typedef.
	*  testsuite/testsuite_character.cc: Fixups.
	*  testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-in.cc: Same.
	*  testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-out.cc: Same.
	*  testsuite/22_locale/numpunct/members/pod/1.cc: Same.
	*  testsuite/22_locale/numpunct/members/pod/2.cc: Same.
	*  testsuite/27_io/basic_filebuf/close/12790-1.cc: Same.
	*  testsuite/27_io/basic_filebuf/open/12790-1.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekoff/12790-1.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekoff/12790-2.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekoff/12790-3.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekoff/12790-4.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekpos/12790-1.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekpos/12790-2.cc: Same.
	*  testsuite/27_io/basic_filebuf/seekpos/12790-3.cc: Same.
	*  testsuite/27_io/basic_ios/imbue/14072.cc: Same.
	*  testsuite/27_io/basic_istream/extractors_arithmetic/pod/
	3983-1.cc: Same.
	*  testsuite/27_io/basic_istream/extractors_character/pod/
	3983-2.cc: Same.
	*  testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
	*  testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
	*  testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.

2005-04-12  Mike Stump  <mrs@apple.com>

	* configure: Regenerate.

2005-04-08  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/Makefile.am: Remove libv3test.a.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/lib/libstdc++.exp (v3_target_compile): Fix comments.
	
2005-04-08  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20909
	* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
	Don't even try to group numbers like 2e20, i.e., no decimal
	point, scientific notation.
	* testsuite/22_locale/num_put/put/char/20909.cc: New.
	* testsuite/22_locale/num_put/put/wchar_t/20909.cc: Likewise.

2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>

	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Define _GLIBCXX_ASM_SYMVER.
	* acconfig.h: Delete file.
	* Makefile.in, acinclude.m4, configure: Regenerate.

2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>

	* linkage.m4 (GLIBCXX_MAYBE_UNDERSCORED_FUNCS): New macro.
	(GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_1,
	GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_2,
	GLIBCXX_CHECK_MATH_DECL_AND_LINKAGE_3,
	GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1,
	GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_2): Use it.
	(GLIBCXX_CHECK_MATH_SUPPORT): Delete obsolete comment.
	* acconfig.h: Delete redundant macros.
	* config.h.in, configure: Regenerate.

2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>

	* linkage.m4 (GLIBCXX_CHECK_MATH_DECLS_AND_LINKAGES_1): Eliminate
	a subshell and if test fails, test for same functions with 
	leading underscore.
	(GLIBCXX_CHECK_MATH_SUPPORT): Eliminate seperate checks for _funcs.
	* configure: Regenerate.

2005-04-08  Danny Smith  <dannysmith@users.sourceforge.net>
	    Paolo Carlini  <pcarlini@suse.de>
	    		
	PR libstdc++/20806
	* config/os/mingw32/os_defines.h: Define
	_GLIBCXX_HAVE_DOS_BASED_FILESYSTEM.
	* config/os/newlib/os_defines.h: Likewise, for __CYGWIN__.
	* include/bits/fstream.tcc (basic_filebuf<>::showmanyc()):
	Use it.
	(basic_filebuf<>::xsgetn(_CharT*, streamsize)): Likewise.

2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>

	* acconfig.h: Sort the bottom section.
	* config.h.in: Regenerate.

2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>

	* acconfig.h: Remove redundant HAVE_FLOAT_H.
	* config.h.in: Regenerate.

2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Create template for PACKAGE and VERSION.
	Update comment on how to regenerate file.  Update minimum
	automake version to 1.9.3.
	* acconfig.h: Remove PACKAGE and VERSION.
	* aclocal.m4, configure, Makefile.in, po/Makefile.in, 
	src/Makefile.in, include/Makefile.in, libmath/Makefile.in, 
	testsuite/Makefile.in, config.h.in: Regenerate.

2005-04-06  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/test.html: Update.
	* testsuite/printnow.c: Remove.
	* scripts/check_survey.in: Remove.

	* testsuite/abi_check.cc: To...
	* testuite/testsuite_abi_check.cc: ...here.
	* testsuite/libstdc++-abi/abi.exp: Change abi_check.cc to
	testsuite_abi_check.cc.

	* testsuite/testsuite_hooks.h: Move character related bits to...
	* testsuite/testsuite_character.h: ...here.
	* testsuite/testsuite_character.cc: ... and here.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-in.cc: Use testsuite_character.h.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-out.cc: Same.
	* testsuite/22_locale/numpunct/members/pod/1.cc: Same.
	* testsuite/22_locale/numpunct/members/pod/2.cc: Same.
	* testsuite/27_io/basic_filebuf/2.cc: Same.
	* testsuite/27_io/basic_fstream/2.cc: Same.
	* testsuite/27_io/basic_istream/2.cc: Same.
	* testsuite/27_io/basic_istream/extractors_arithmetic/pod/
	3983-1.cc: Same.
	* testsuite/27_io/basic_istream/extractors_character/char/
	9826.cc: Same.
	* testsuite/27_io/basic_istream/extractors_character/pod/
	3983-2.cc: Same.
	* testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
	* testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
	* testsuite/27_io/basic_ostream/2.cc: Same.
	* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
	* testsuite/27_io/basic_streambuf/2.cc: Same.
	* testsuite/27_io/basic_stringbuf/2.cc: Same.
	* testsuite/27_io/basic_stringbuf/4.cc: Same.
	* testsuite/27_io/basic_stringstream/2.cc: Same.
	* testsuite/27_io/fpos/1.cc: Same.
	* testsuite/ext/mt_allocator/tune-1.cc: Same.
	* testsuite/ext/mt_allocator/tune-2.cc: Same.
	* testsuite/ext/stdio_filebuf/char/1.cc: Same.	
	* testsuite/lib/libstdc++.exp (v3-build_support): Add
	testsuite_character.cc.
	* testsuite/Makefile.am (libv3test_a_SOURCES): Add
	testsuite_character.cc.
	* testsuite/Makefile.in: Regenerate.
		
	* configure.ac: Remove use of check_survey.
	* configure: Regenerate.
	* testsuite/Makefile.am: Remove check-script and
	check-script-install rules.
	* testsuite/Makefile.in: Regenerate.

2005-04-06  Ulrich Weigand  <uweigand@de.ibm.com>

	* config/cpu/s390/atomicity.h (__exchange_and_add): Add "memory"
	clobber to inline assembly statement.

2005-04-06  Kelley Cook  <kcook@gcc.gnu.org>

	* acinclude.m4 (_GLIBCXX_USE_LONG_LONG,
	_GLIBCXX_USE_WCHAR_T, _GLIBCXX_USE_C99, _GLIBCXX_USE_C99_MATH,
	_GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_RES_LIMITS, _GLIBCXX_CONCEPT_CHECKS,
	_GLIBCXX_SYMVER, _GLIBCXX_USE_LFS, _GLIBCXX_FULLY_DYNAMIC_STRING,
	_GLIBCXX_USE_NLS, HAVE_GTHR_DEFAULT, HAVE_MBSTATE_T, HAVE_POLL,
	HAVE_S_ISREG, HAVE_S_IFREG, HAVE_WRITEV, HAVE_INT64_T,
	HAVE_LC_MESSAGES): Use long form of AC_DEFINE ...
	* acconfig.h: ... to eliminate them from here.
	(_GLIBCXX_ASM_SYMVER): Move definition below @BOTTOM@.
	* config.h.in, configure: Regenerate.
	
2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am (ACLOCAL_AMFLAGS): Define.
	* crossconfig.m4: Wrap file into new GLIBCXX_CROSSCONFIG macro.
	* configure.ac: Use it.
	* acinclude.m4: Delete explicit m4_includes and sincludes.
	* aclocal.m4, configure, Makefile.in, po/Makefile.in, 
	src/Makefile.in, include/Makefile.in, libmath/Makefile.in, 
	testsuite/Makefile.in: Regenerate.

2005-04-05  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/tr1/memory, include/tr1/boost_shared_ptr.h: Use mutex
	to make _Sp_counted_base::add_ref_lock() thread-safe. Check whether
	to destroy resources by testing for equality, not inequality. Add
	empty critical sections to solve memory visibility issues.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/auto_ptr_neg.cc: Use dg-excess-errors instead of
	explicitly listing line numbers which need to be kept in sync.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/auto_ptr_neg.cc: Same.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/auto_ptr_rvalue_neg.cc: Same.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/weak_ptr_expired.cc: Make XFAIL for consistency when
	-fno-exceptions.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared.cc: Add explanatory comments.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared2.cc: Same.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared3.cc: Same.

2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>

	* acconfig.h: Delete macros already AC_DEFINED.
	* config.h.in: Regenerate.

2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>

	* acconfig.h (HAVE_MODF): Remove.
	* linkage.m4: Check for modf.
	* config.h.in, configure: Regenerate.

2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>

	* acconfig.h (ENABLE_NLS, HAVE_CATGETS): Remove.
	(HAVE_GETTEXT, HAVE_STPCPY): Likewise.
	* config.h.in: Regenerate.
	
2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>

	* linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Use m4 translit macro 
	to convert to uppercase instead of shelling out to tr.
	* acconfig.h: Remove now redundant HAVE__BUILTINS_*.
	* configure, config.h.in: Regenerate.

2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>

	* acconfig.h (HAVE_TANL): Correct cut-and-paste typo.
	* config.h.in: Regenerate.

2005-04-04  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/Makefile.am (check-local): Remove.
	(curent_symbols.txt): Likewise.
	(check-abi): Do not depend on current_symbols.txt.
	* testsuite/Makefile.in: Regenerated.
	* testsuite/libstdc++-abi/abi.exp: Build current_symbols.txt.

2005-04-02  Douglas Gregor  <doug.gregor@gmail.com>
	
	* include/tr1/tuple_iterate.h (tuple_element): Use new macro
	_GLIBCXX_T_NUM_ARGS_PLUS_1 because _T is a macro on Darwin.
	* include/tr1/repeat.h (_GLIBCXX_T_NUM_ARGS_PLUS_1): Define for
	each iteration.
	* scripts/gen_includers.h: Define _GLIBCXX_T_NUM_ARGS_PLUS_1 for
	each iteration.
	
2005-04-01  Douglas Gregor  <doug.gregor@gmail.com>

	* include/tr1/functional (_Maybe_wrap_member_pointer): Wrap up
	member pointers in _Mem_fn but let other function objects pass
	through unchanged.
	* include/tr1/functional_iterator (bind): Reduce number of bind()
	overloads to two to eliminate ambiguities. Use
	_Maybe_wrap_member_pointer to handle member pointers gracefully.
	
2005-04-01  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/Makefile.am (noinst_PROGRAMS): Remove.
	(site.exp): Write out the path to the baseline file.
	(check-abi): Use DejaGNU.
	(check-abi-verbose): Remove.
	* testsuite/Makefile.in: Regenerated.
	* testsuite/abi_check.cc (main): Check the return value from
	compare_symbols.
	* testsuite/testsuite_abi.cc (compare_symbols): Return a value.
	* testsuite/testsuite_abi.h (compare_symbols): Adjust prototype.
	* testsuite/libstdc++-abi/abi.exp: New file.

2005-03-31  Chris Jefferson  <chris@bubblescope.net>

        * include/tr1/tuple: Support iteration via tuple_iterate.h.
        * include/tr1/tuple_iterate.h: Iteration file for tuple.

2005-03-31  Douglas Gregor  <doug.gregor@gmail.com>

        * include/Makefile.am (tr1_headers): Add bind and mu repetition
        headers and reference_wrapper<> forwarding header.
        * include/Makefile.in: Regenerate.
        * include/tr1/bind_iterate.h: Implementation of function call
        operators for the function object returned from tr1::bind().
        * include/tr1/bind_repeat.h: Bind-specific repetition header,
        akin to include/tr1/repeat.h.
        * include/tr1/functional (_Mem_fn): Bug fix: declare result member
        template for use with result_of.
        (is_bind_expression): New.
        (is_placeholder): New.
        (_Placeholder): New. Placeholder type for bind.
        (_Mu): New. Implementation detail of bind.
        (_Bind, _Bind_result): New. Function objects returned by bind.
        (_GLIBCXX_JOIN): New. Required to create bind placeholders.
        * include/tr1/functional_iterate.h (_Bind, _Bind_result, bind):
        New. Implementation of tr1::bind.
        * include/tr1/mu_iterate.h (_Mu): result template and operator()
        for the _Mu helper to bind.
        * include/tr1/ref_fwd.h (reference_wrapper): Forward declaration
        used by tuple header.
        (ref): Ditto.
        (cref): Ditto.
        * include/tr1/repeat.h: Add bind-specific repetition macros.
        * include/tr1/tuple: Use reference_wrapper forwarding header for
        initial definitions, then include <tr1/functional> at the end, to
        make the circular dependencies work.
        (tie): Support zero-argument tie() function.
        * testsuite/tr1/3_function_objects/bind/all_bound.cc: New test of
        bind() functionality with parameters bound.
        * testsuite/tr1/3_function_objects/bind/nested.cc: New test of
        nested bind() expressions.
        * testsuite/tr1/3_function_objects/bind/placeholders.cc: New test
        of bind() placeholders.
        * testsuite/tr1/3_function_objects/bind/ref.cc: New test of bind()
        with arguments bound via reference_wrapper<>.
        * scripts/gen_includers.pl: Generate the repetitive part of
	include/tr1/repeat.h.
	* scripts/gen_bind_includers.pl: Generate the repetitive part of
	include/tr1/bind_repeat.h. 
	
2005-03-30  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>

	* testsuite/Makefile.am (CXX): Use ${SHELL}.
	(GLIBCXX_INCLUDES): Same.
	(AM_CXXFLAGS): Same.
	* testsuite/Makefile.in: Regenerate.

2005-03-25  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/lib/libstdc++.exp (libstdc++_init): Define LOCALEDIR
	when testing an installed compiler.
	
	* testsuite/lib/libstdc++.exp (v3-build_support): Pass -w when
	compiling support objects.

2005-03-24  Benjamin Kosnik  <bkoz@redhat.com>

	* include/tr1/memory: Forward to...
	* include/tr1/boost_shared_ptr.h: ...here. Add Boost Software License.
	* include/Makefile.am (tr1_headers): Add boost_shared_ptr.h.
	* include/Makefile.in: Regenerate.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
	auto_ptr_neg.cc: Adjust line numbers.

2005-03-23  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/Makefile.am (all-local): Do not build testsuite_files.
	* testsuite/Makefile.in: Regenerated. 

2005-03-23  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies
	using _GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_USE_C99_MATH, and
	_GLIBCXX_USE_C99_WCHAR.
	Remove GLIBCXX_ENABLE_C_MBCHAR, consolidate in GLIBCXX_ENABLE_C99
	and GLIBCXX_ENABLE_WCHAR_T.
	Take C99 bits from GLIBCXX_CHECK_WCHAR_T_SUPPORT and put in 
	GLIBCXX_ENABLE_C99.
	Change remaining parts of GLIBCXX_CHECK_WCHAR_T_SUPPORT to
	GLIBCXX_CHECK_ICONV_SUPPORT.
	* configure.ac: Remove GLIBCXX_ENABLE_C_MBCHAR, use
	GLIBCXX_CHECK_ICONV_SUPPORT and GLIBCXX_ENABLE_WCHAR_T.
	* crossconfig.m4: Same.
	* acconfig.h: Same, adjust comments.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* docs/html/configopts.html: Change --enable-c-mbchar to
	--enable-wchar_t.

	* config/locale/gnu/c++locale_internal.h: Guard wide functions
	with _GLIBCXX_USE_WCHAR_T.
	* include/c_std/std_cwctype.h: Alphabetize, remove duplicates.
	* include/c_std/std_cstdio.h: Spacing.

	* config/locale/gnu/c_locale.h: Tweaks for unused warnings.
	* src/debug.cc: Same.

2005-03-23  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/libstdc++-dg/normal.exp: Read testsuite_files, if it
	exists.

	* testsuite/lib/libstdc++.exp (libstdc++_wchar_t): Rename to ...
	(v3-wchar_t): ... this.
	(libstdc++_threads): Rename to ...
	(v3-threads): ... this.
	(libstdc++_test_objs): Rename to ...
	(v3-test_objs): ... this.
	(libstdc++_build_support): Rename to ...
	(v3-build_support): ... this.
	* testsuite/libstdc++-dg/normal.exp: Adjust to use new names.

	* testsuite/lib/libstdc++.exp (libstdc++_init): Improve handling
	of compilers not in the build directory.
	(libstdc++_wchar_t): New variable.
	(libstdc++_threads): Likewise.
	(libstdc++_test_objs): Likewise.
	(v3_target_compile): Use libstdc++_test_objs.
	(v3-list-tests): Remove.
	(listdc++_build_support): New function.
	* testsuite/libstdc++-dg/normal.exp: Rework to dynamically
	generate list of tests.

2005-03-21  Chris Jefferson  <chris@bubblescope.net>

	PR libstdc++/20577
	* include/bits/stl_algobase.h (iter_swap): Only delegate iter_swap
	to swap when the iterator's reference_type is a reference to its
	value_type.
	* testsuite/25_algorithms/iter_swap/20577.cc: New.

2005-03-21  Zack Weinberg  <zack@codesourcery.com>

	* acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
	(GLIBCXX_EXPORT_INSTALL_INFO): Adjust quotation so ${gcc_version}
	is expanded by the Makefiles, not by configure.
	* fragment.am: Set gcc_version.
	* libmath/Makefile.am: Likewise.
	* configure, Makefile.in, include/Makefile.in, libmath/Makefile.in
	* libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in
	* testsuite/Makefile.in: Regenerate.

2005-03-16  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/20_util/functional/binders.cc: Remove explicit
	instantiations for non-weak systems.
	* testsuite/20_util/memory/allocator/1.cc: Likewise.
	* testsuite/20_util/memory/allocator/10378.cc: Likewise.
	* testsuite/20_util/memory/allocator/10416.cc: Likewise.
	* testsuite/20_util/memory/allocator/8230.cc: Likewise.
	* testsuite/20_util/utility/rel_ops.cc: Likewise.
	* testsuite/22_locale/ctype/is/char/2.cc: Likewise.
	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
	* testsuite/23_containers/deque/cons/1.cc: Likewise.
	* testsuite/23_containers/deque/cons/2.cc: Likewise.
	* testsuite/23_containers/deque/invalidation/1.cc: Likewise.
	* testsuite/23_containers/deque/invalidation/2.cc: Likewise.
	* testsuite/23_containers/deque/invalidation/3.cc: Likewise.
	* testsuite/23_containers/deque/invalidation/4.cc: Likewise.
	* testsuite/23_containers/deque/modifiers/swap.cc: Likewise.
	* testsuite/23_containers/deque/operators/1.cc: Likewise.
	* testsuite/23_containers/list/capacity/1.cc: Likewise.
	* testsuite/23_containers/list/cons/1.cc: Likewise.
	* testsuite/23_containers/list/cons/2.cc: Likewise.
	* testsuite/23_containers/list/cons/3.cc: Likewise.
	* testsuite/23_containers/list/cons/4.cc: Likewise.
	* testsuite/23_containers/list/cons/5.cc: Likewise.
	* testsuite/23_containers/list/cons/6.cc: Likewise.
	* testsuite/23_containers/list/cons/7.cc: Likewise.
	* testsuite/23_containers/list/cons/8.cc: Likewise.
	* testsuite/23_containers/list/cons/9.cc: Likewise.
	* testsuite/23_containers/list/invalidation/1.cc: Likewise.
	* testsuite/23_containers/list/invalidation/2.cc: Likewise.
	* testsuite/23_containers/list/invalidation/3.cc: Likewise.
	* testsuite/23_containers/list/invalidation/4.cc: Likewise.
	* testsuite/23_containers/list/modifiers/1.cc: Likewise.
	* testsuite/23_containers/list/modifiers/2.cc: Likewise.
	* testsuite/23_containers/list/modifiers/3.cc: Likewise.
	* testsuite/23_containers/list/operators/1.cc: Likewise.
	* testsuite/23_containers/list/operators/2.cc: Likewise.
	* testsuite/23_containers/list/operators/3.cc: Likewise.
	* testsuite/23_containers/list/operators/4.cc: Likewise.
	* testsuite/23_containers/map/insert/1.cc: Likewise.
	* testsuite/23_containers/map/invalidation/1.cc: Likewise.
	* testsuite/23_containers/map/invalidation/2.cc: Likewise.
	* testsuite/23_containers/map/modifiers/swap.cc: Likewise.
	* testsuite/23_containers/map/operators/1.cc: Likewise.
	* testsuite/23_containers/multimap/invalidation/1.cc: Likewise.
	* testsuite/23_containers/multimap/invalidation/2.cc: Likewise.
	* testsuite/23_containers/multimap/modifiers/swap.cc: Likewise.
	* testsuite/23_containers/multiset/insert/1.cc: Likewise.
	* testsuite/23_containers/multiset/insert/2.cc: Likewise.
	* testsuite/23_containers/multiset/invalidation/1.cc: Likewise.
	* testsuite/23_containers/multiset/invalidation/2.cc: Likewise.
	* testsuite/23_containers/multiset/modifiers/swap.cc: Likewise.
	* testsuite/23_containers/priority_queue/members/7161.cc: Likewise.
	* testsuite/23_containers/queue/members/7157.cc: Likewise.
	* testsuite/23_containers/set/insert/1.cc: Likewise.
	* testsuite/23_containers/set/invalidation/1.cc: Likewise.
	* testsuite/23_containers/set/invalidation/2.cc: Likewise.
	* testsuite/23_containers/set/modifiers/swap.cc: Likewise.
	* testsuite/23_containers/stack/members/7158.cc: Likewise.
	* testsuite/23_containers/vector/bool/6886.cc: Likewise.
	* testsuite/23_containers/vector/capacity/1.cc: Likewise.
	* testsuite/23_containers/vector/capacity/8230.cc: Likewise.
	* testsuite/23_containers/vector/cons/1.cc: Likewise.
	* testsuite/23_containers/vector/cons/2.cc: Likewise.
	* testsuite/23_containers/vector/cons/3.cc: Likewise.
	* testsuite/23_containers/vector/cons/6513.cc: Likewise.
	* testsuite/23_containers/vector/element_access/1.cc: Likewise.
	* testsuite/23_containers/vector/invalidation/1.cc: Likewise.
	* testsuite/23_containers/vector/invalidation/2.cc: Likewise.
	* testsuite/23_containers/vector/invalidation/3.cc: Likewise.
	* testsuite/23_containers/vector/invalidation/4.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/1.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/2.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/swap.cc: Likewise.
	* testsuite/23_containers/vector/resize/1.cc: Likewise.
	* testsuite/24_iterators/back_insert_iterator.cc: Likewise.
	* testsuite/24_iterators/front_insert_iterator.cc: Likewise.
	* testsuite/24_iterators/insert_iterator.cc: Likewise.
	* testsuite/24_iterators/iterator.cc: Likewise.
	* testsuite/25_algorithms/copy/1.cc: Likewise.
	* testsuite/25_algorithms/copy/2.cc: Likewise.
	* testsuite/25_algorithms/copy/3.cc: Likewise.
	* testsuite/25_algorithms/copy/4.cc: Likewise.
	* testsuite/25_algorithms/equal.cc: Likewise.
	* testsuite/25_algorithms/fill/1.cc: Likewise.
	* testsuite/25_algorithms/fill/2.cc: Likewise.
	* testsuite/25_algorithms/min_max.cc: Likewise.
	* testsuite/25_algorithms/rotate.cc: Likewise.
	* testsuite/25_algorithms/unique/1.cc: Likewise.
	* testsuite/25_algorithms/unique/2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
	* testsuite/ext/concept_checks.cc: Likewise.
	* testsuite/ext/hash_map/1.cc: Likewise.
	* testsuite/ext/hash_set/1.cc: Likewise.
	* testsuite/ext/rope/1.cc: Likewise.
	* testsuite/ext/rope/2.cc: Likewise.
	* testsuite/ext/rope/3.cc: Likewise.
	* testsuite/thread/pthread1.cc: Likewise.
	* testsuite/thread/pthread4.cc: Likewise.
	* testsuite/thread/pthread5.cc: Likewise.
	* testsuite/thread/pthread6.cc: Likewise.
	* testsuite/thread/pthread7-rope.cc: Likewise.

2005-03-15  Zack Weinberg  <zack@codesourcery.com>

	* include/Makefile.am (c++config.h): Depend on DATESTAMP from gcc
	subdirectory.  Generate #define of __GLIBCXX__ from contents of
	that file.
	* include/Makefile.in: Regenerate.
	* include/bits/c++config: Do not define __GLIBCXX__.

2005-03-15  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20352
	* include/std/std_complex.h (pow(const complex<_Tp>&,
	const _Tp&)): On non-c99 platforms, don't try to compute
	log of complex zero.

2005-03-10  Ben Elliston  <bje@au.ibm.com>

	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Don't XFAIL
	on GNU/Linux.

2005-03-07  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (is_polymorphic): Don't forget
	the virtual destructor, thus avoiding warnings.
	* testsuite/testsuite_tr1.h (class AbstractClass,
	class PolymorphicClass): Likewise.

2005-03-07  Paolo Carlini  <pcarlini@suse.de>

	* include/std/std_complex.h (pow(const complex<_Tp>&,
	const complex<_Tp>&)): Dispatch to either __complex_pow(__x.__rep(),
	__y.__rep()) or __complex_pow(__x, __y) depending on the macro
	_GLIBCXX_USE_C99_COMPLEX.

2005-03-07  Paolo Carlini  <pcarlini@suse.de>

	* include/std/std_fstream.h (basic_fstream<>::open,
	basic_ifstream<>::open, basic_ofstream<>::open): Implement the
	resolution of DR 409 [Ready], call clear() on success.
	* docs/html/ext/howto.html: Add an entry for DR 409.
	* docs/html/faq/index.html (4_4): Clarify the new behavior.
	* testsuite/27_io/basic_ifstream/open/char/1.cc: Adjust.
	* testsuite/27_io/basic_ofstream/open/char/1.cc: Likewise.

2005-03-05  Joseph S. Myers  <joseph@codesourcery.com>

	* testsuite/22_locale/collate/compare/wchar_t/2.cc,
	testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
	testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
	testsuite/22_locale/collate/hash/wchar_t/2.cc,
	testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
	testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
	testsuite/22_locale/collate/transform/wchar_t/2.cc,
	testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
	testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
	XFAIL on *-*-hpux11.23.

2005-03-04  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Add is_base_of.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_base_of/is_base_of.cc: New.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_base_of/typedefs.cc: Likewise.

2005-03-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/tr1/functional: Convert relative path.

	* docs/doxygen/user.cfg.in: Add tr1 includes.

2005-03-03  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Implemenet is_polymorphic.
	(is_empty): Minor tweaks.
	* testsuite/testsuite_tr1.h: Add test types.
	* testsuite/tr1/4_metaprogramming/type_properties/
	is_polymorphic/is_polymorphic.cc: New.
	* testsuite/tr1/4_metaprogramming/type_properties/
	is_polymorphic/typedefs.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/composite_type_traits/
	is_union_or_class/is_union_or_class.cc: Add tests.

2005-03-02  Douglas Gregor  <doug.gregor@gmail.com>

	* include/tr1/functional (_Has_result_type): Cleanup.
	(_Result_of_impl): Handle member data pointers correctly.
	(reference_wrapper): Support invocation.
	Move repetition code into new file include/tr1/repeat.h.
	* include/tr1/functional_iterate.h (reference_wrapper): Support
	invocation.  Cleanup long lines.
	* include/tr1/ref_wrap_iterate.h (reference_wrapper): Declare
	invocation operators.
	* include/tr1/repeat.h: Code repetition header.
	* include/Makefile.am: Add ref_wrap_iterate.h, repeat.h.
	* include/Makefile.in: Add ref_wrap_iterate.h, repeat.h.
	* testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
	New test of reference_wrapper invocation.
	* testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
	New test of reference_wrapper typedefs and base classes.
	* testsuite/tr1/3_function_objects/result_of.cc: Trivial cleanup
	(e-mail address).

2005-03-02  Douglas Gregor  <doug.gregor@gmail.com>

	* include/tr1/function (result_of): New class template.
	* include/tr1/functional/iterator.h: Implementation of TR1
	result_of.
	* testsuite/tr1/3_function_objects/result_of.cc: New test

2005-03-01  Vladimir Merzliakov  <wanderer@rsu.ru>

	* testsuite/26_numerics/cmath/c99_classification_macros_c.cc: Tweak.

2005-02-28  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/tr1/2_general_utilities/memory/shared_ptr/
	cons/auto_ptr_neg.cc: Correct line numbers.

	* testsuite/testsuite_abi.cc: Add CXXABI_1.3.1.

2005-02-28  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/tr1/memory: Replace checked_deleter with (unchecked)
	_Sp_deleter as GCC warns about delete on incomplete types anyway.

2005-02-28  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/tr1/memory: Add missing "inline" to __throw_bad_weak_ptr.

2005-02-28  Hans-Peter Nilsson  <hp@axis.com>

	PR target/19065
	* config/cpu/cris/atomicity.h (__exchange_and_add): In asm, use
	'Q' constraint, not 'm'.

2005-02-26  Earl Chew  <earl_chew@agilent.com>
	    Christopher Jefferson  <chris@bubblescope.net>

	* include/bits/stl_tree.h (_Rb_tree<>::_M_insert): Don't leak
	memory if _M_key_compare throws.

2005-02-25  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Add the trivial is_union and is_class;
	add the __is_union_or_class extension.
	(is_enum, is_empty): Use the latter.
	* include/tr1/type_traits_fwd.h: Add __is_union_or_class.
	* testsuite/testsuite_tr1.h: Add UnionType; trivial formatting
	fixes.
	* testsuite/tr1/4_metaprogramming/composite_type_traits/
	is_union_or_class/is_union_or_class.cc: New.
	* testsuite/tr1/4_metaprogramming/composite_type_traits/
	is_union_or_class/typedefs.cc: Likewise.

2005-02-24  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Guard
	wchar_t use with _GLIBCXX_USE_WCHAR_T.

2005-02-24  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/std_complex.h: _GLIBCXX_USE_C99_COMPLEX_MATH to
	_GLIBCXX_USE_C99_COMPLEX.
	* acinclude.m4: Same.
	* acconfig.h: Same.
	* configure: Regenerate.
	* config.h.in: Same.

2005-02-24  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/functional (mem_fn): Avoid _T, badname on
	Darwin.

2005-02-23  Douglas Gregor  <doug.gregor@gmail.com>

	* include/tr1/functional (function): New class template.
	(mem_fn): New function template.
	Implementations of TR1 function and mem_fn facilities.
	* include/tr1/functional_iterate.h: Implementations of TR1
	function and mem_fn facilities.
	* testsuite/tr1/3_function_objects/function/1.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/function/2.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/function/3.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/function/4.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/function/5.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/function/6.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/function/7.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/function/8.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/function/9.cc: New
	test of std::tr1::function.
	* testsuite/tr1/3_function_objects/mem_fn.cc: New test of
	std::tr1::mem_fn.

2005-02-23  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Implement is_convertible.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_convertible/is_convertible.cc: New.
	* testsuite/tr1/4_metaprogramming/relationships_between_types/
	is_convertible/typedefs.cc: Likewise.
	* testsuite/testsuite_tr1.h: Add class DerivedType.

	* include/tr1/type_traits (is_function): Don't mistake references
	to function types for function types.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/
	is_function/is_function.cc: Add testcase.

2005-02-22  Benjamin Kosnik  <bkoz@redhat.com>

	* scripts/check_performance: Tweaks.

	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/2.cc: Name
	output file with extension that clean rules can find.

2005-02-22  Richard Henderson  <rth@redhat.com>

	PR libstdc++/20091
	* libsupc++/eh_catch.cc (__cxa_begin_catch): Don't special case
	decrement of uncaughtExceptions for rethrow.

2005-02-22  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/functional: Fix License to GPL with exception.
	* include/tr1/hashtable: Likewise.
	* include/tr1/tuple: Likewise.
	* include/tr1/type_traits: Likewise.
	* include/tr1/type_traits_fwd.h: Likewise.
	* include/tr1/unordered_map: Likewise.
	* include/tr1/unordered_set: Likewise.
	* include/tr1/utility: Likewise.

2005-02-22  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
	auto_ptr_neg.cc: Add missing dg-do compile directive.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
	auto_ptr_rvalue_neg.cc: Likewise.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/assign/
	shared_ptr_neg.cc: Likewise.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/cons/
	auto_ptr_neg.cc: Likewise.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
	reset_neg.cc: Likewise.
	* testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
	swap_neg.cc: Likewise.

2005-02-22  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/Makefile.am, include/Makefile.in: Fix accidental extra
	change from previous commit.

2005-02-21  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/tr1/memory: New file.
	* include/Makefile.am, include/Makefile.in: Add new TR1 header.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared2.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/not_shared3.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/shared.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	enable_shared_from_this/still_shared.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/assign.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/auto_ptr.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/auto_ptr_neg.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/auto_ptr_rvalue_neg.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/shared_ptr.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/assign/shared_ptr_neg.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/comparison/cmp.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/auto_ptr.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/auto_ptr_neg.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/copy.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/default.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/pointer.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/weak_ptr.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/cons/weak_ptr_expired.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/dest/dest.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/misc/io.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/misc/swap.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/modifiers/reset.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/modifiers/reset_neg.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/modifiers/swap.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/modifiers/swap_neg.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/observers/bool_conv.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/observers/get.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/observers/unique.cc: New test.
	* testsuite/tr1/2_general_utilities/memory/
	shared_ptr/observers/use_count.cc: New test.

2005-02-21  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (is_member_function_pointer):
	Remove ugly workaround for c++/19076.

2005-02-21  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.tcc (_Rep::_M_destroy): Don't
	check for this == &_S_empty_rep, it's always false, here.

2005-02-19  Matt Austern  <austern@gmail.com>

	* include/tr1/functional (tr1_hashtable_define_trivial_hash): Make
	hash<T>::operator() a const member function for T a fundamental type
	* include/tr1/hashtable (extract1st::operator()): Declare const.
	(hash_code_base): Declare all member functions const
	(hashtable::find): fix call to this->bucket_count()
	(hashtable::count): Likewise.
	(hashtable::equal_range): m_incr_bucket applies to iterator, not node.
	* testsuite/tr1/6_containers/unordered/find/set1.cc: New test.
	* testsuite/tr1/6_containers/unordered/find/map1.cc: New test.
	* testsuite/tr1/6_containers/unordered/find/multimap1.cc: New test.
	* testsuite/tr1/6_containers/unordered/find/multiset1.cc: New test.

2005-02-19  Hans-Peter Nilsson  <hp@axis.com>

	PR libstdc++/20071
	* include/tr1/functional (hash<std::wstring>): Wrap in #ifdef
	_GLIBCXX_USE_WCHAR_T.

2005-02-18  Richard Henderson  <rth@redhat.com>

	PR libstdc++/10606
	* config/linker-map.gnu (CXXABI_1.3.1): Add __cxa_get_exception_ptr.
	* libsupc++/eh_alloc.cc (__cxa_allocate_exception): Increment
	uncaughtExceptions here instead of ...
	* libsupc++/eh_throw.cc (__cxa_throw) ... here.
	(__cxa_rethrow): Increment uncaughtExceptions here instead of ...
	* libsupc++/eh_catch.cc (__cxa_end_catch): ... here.
	(__cxa_get_exception_ptr): New.
	* libsupc++/unwind-cxx.h (__cxa_get_exception_ptr): Declare.

2005-02-18  Matt Austern  <austern@apple.com>

	* testsuite/tr1/6_containers/unordered/insert/array_syntax.cc: Fix
	test case to use assignment instead of ==
	* testsuite/tr1/6_containers/unordered/insert/map_range.cc: New test.
	* testsuite/tr1/6_containers/unordered/insert/multimap_range.cc: New test.
	* testsuite/tr1/6_containers/unordered/insert/multiset_range.cc: New test.
	* testsuite/tr1/6_containers/unordered/insert/set_range.cc: New test.

2005-02-18  Eric Botcazou  <ebotcazou@libertysurf.fr>

	* testsuite/thread/pthread1.cc: Do not invoke pthread_setconcurrency
	on Solaris 2.6 and below.
	* testsuite/thread/pthread2.cc: Likewise.
	* testsuite/thread/pthread3.cc: Likewise.
	* testsuite/thread/pthread4.cc: Likewise.
	* testsuite/thread/pthread5.cc: Likewise.
	* testsuite/thread/pthread6.cc: Likewise.
	* testsuite/thread/pthread7-rope.cc: Likewise.

2005-02-17  Matt Austern  <austern@apple.com>

	* include/tr1/functional (hash): New function object.
	* include/tr1/hashtable: New file.
	* include/tr1/unordered_set: New file.
	* include/tr1/unordered_map: New file.
	* include/Makefile.am: Add three new TR1 headers.
	* include/Makefile.in: Likewise.
	* testsuite/tr1/6_containers/unordered/insert/array_syntax.cc: New test.
	* testsuite/tr1/6_containers/unordered/insert/map_single.cc: New test.
	* testsuite/tr1/6_containers/unordered/insert/multimap_single.cc: New test.
	* testsuite/tr1/6_containers/unordered/insert/multiset_single.cc: New test.
	* testsuite/tr1/6_containers/unordered/insert/set_single.cc: New test.
	* testsuite/tr1/6_containers/unordered/instantiate/hash.cc: New test.
	* testsuite/tr1/6_containers/unordered/instantiate/map.cc: New test.
	* testsuite/tr1/6_containers/unordered/instantiate/multimap.cc: New test.
	* testsuite/tr1/6_containers/unordered/instantiate/multiset.cc: New test.
	* testsuite/tr1/6_containers/unordered/instantiate/set.cc: New test.

2005-02-16  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/23_containers/set/modifiers/16728.cc:
	Remove redundant include <testsuite_performance.h>.

2005-02-16  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/19829
	* testsuite/21_strings/basic_string/find/char/3.cc: Fix the test
	at line #66 to not access str_lit01 beyond its end.
	* testsuite/21_strings/basic_string/find/wchar_t/3.cc: Likewise.

2005-02-15  Paolo Carlini  <pcarlini@suse.de>
	    Jon Grimm  <jgrimm2@us.ibm.com>

	PR libstdc++/19955
	* include/bits/locale_facets.h (ctype<char>::_M_narrow_init()):
	Fix the logic setting _M_narrow_ok: first check whether the
	transformation is trivial with a dflt == 0, then deal with the
	special case of zero.
	* testsuite/22_locale/ctype/narrow/char/19955.cc: New.

	* include/bits/locale_facets.h (ctype<char>::_M_widen_init()):
	Tweak consistently to use memcmp; minor formatting fixes.

2005-02-15  Jakub Jelinek  <jakub@redhat.com>

	PR libstdc++/19946
	* testsuite/demangle/abi_examples/01.cc (main): Adjust for 2005-02-13
	demangler change.
	* testsuite/demangle/abi_examples/02.cc (main): Likewise.

2005-02-13  Richard Guenther  <rguenth@gcc.gnu.org>
	    Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/11706
	* include/c_std/std_cmath.h (pow): Use __builtin_powi[lf]
	for integer overloads.

	* testsuite/26_numerics/cmath/powi.cc: New.

2005-02-11  Janis Johnson  <janis187@us.ibm.com>

	* testsuite/26_numerics/complex/13450.cc: Fix XFAIL selector.
	* testsuite/26_numerics/complex/complex_value.cc: Ditto.
	* testsuite/26_numerics/complex/pow.cc: Ditto.

	* testsuite/lib/libstdc++.exp: Load target-supports-dg.exp.
	* testsuite/26_numerics/complex/13450.cc: XFAIL for broken_cplxf_arg.
	* testsuite/26_numerics/complex/complex_value.cc: Ditto.
	* testsuite/26_numerics/complex/pow.cc: Ditto.

2005-02-09  Mike Stump  <mrs@apple.com>

	* libsupc++/del_op.cc: Don't include cstdlib when !_GLIBCXX_HOSTED.

2005-02-09  Janis Johnson  <janis187@us.ibm.com>

	* testsuite/ext/array_allocator/2.cc: XFAIL for powerpc*-*-linux*.

2005-02-08  Mark Mitchell  <mark@codesourcery.com>

	* config/linker-map.gnu (GLIBCXX_3.4): Add _ZNSdC* and _ZNSdD*.

2005-02-07  Loren J. Rittle  <ljrittle@acm.org>

	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc: Make buf static.
	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Make ref and
	src static.

2005-02-02  Brad Spencer  <spencer@infointeractive.com>

	* debug.html: Fix broken tags.
	* documentation.html: Same.

2005-02-02  Andreas Jaeger  <aj@suse.de>

	* testsuite/lib/libstdc++.exp: Revert Geoffrey Keating's patch
	from 2005-01-28.
	* testsuite/Makefile.am: Likewise.
	* testsuite/Makefile.in: Likewise.

2005-02-01  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/cpp_type_traits.h: Rename _M_type fields to
	__value, except for __enable_if, _M_type -> __type, consistently
	with the other traits.
	* include/bits/stl_algobase.h: Tweak consistently.
	* include/bits/stl_tree.h: Likewise.
	* include/bits/valarray_array.h: Likewise.
	* include/c_std/std_cmath.h: Likewise.
	* include/debug/safe_iterator.h: Likewise.
	* include/std/std_complex.h: Likewise.

2005-01-31  Brad Spencer  <spencer@infointeractive.com>

	* crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
	* configure: Regenerated.

2005-01-31  Mark Mitchell  <mark@codesourcery.com>

	* include/std/std_limits.h (numeric_limits<float>::has_denorm):
	Add required cast.
	(numeric_limits<double>::has_denorm): Likewise.
	(numeric_limits<long double>::has_denorm): Likewise.

2005-01-31  Paolo Carlini  <pcarlini@suse.de>
	    Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* include/bits/cpp_type_traits.h: Add types to the structs thus
	making type_traits.h redundant; exploit new __truth_type and
	__traitor helpers.
	* include/bits/type_traits.h: Remove.
	* include/Makefile.am: Update.
	* include/Makefile.in: Regenerate.
	* include/backward/tempbuf.h: Include cpp_type_traits.h instead.
	* include/bits/basic_string.h (replace(iterator, iterator,
	_InputIterator, _InputIterator), _S_construct(_InIterator,
	_InIterator, const _Alloc&)): Use __is_integer instead.
	* include/bits/stl_bvector.h (vector(_InputIterator,
	_InputIterator, const allocator_type&), assign(_InputIterator,
	_InputIterator), insert(iterator, _InputIterator, _InputIterator)):
	Likewise.
	* include/bits/stl_construct.h (_Destroy(_ForwardIterator,
	_ForwardIterator)): Use __is_scalar.
	* include/bits/stl_deque.h (deque(_InputIterator, _InputIterator,
	const allocator_type&), assign(_InputIterator, _InputIterator),
	insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
	* include/bits/stl_list.h (assign(_InputIterator, _InputIterator),
	insert(iterator, _InputIterator, _InputIterator)): Likewise.
	* include/bits/stl_tempbuf.h (_Temporary_buffer(_ForwardIterator,
	_ForwardIterator)): Use __is_scalar.
	* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
	_InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
	_ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
	_Size, const _Tp&)): Likewise.
	* include/bits/stl_vector.h (vector(_InputIterator, _InputIterator,
	const allocator_type&), assign(_InputIterator, _InputIterator),
	insert(iterator, _InputIterator, _InputIterator)): Use __is_integer.
	* include/debug/debug.h (__valid_range(const _InputIterator&,
	const _InputIterator&)): Use __is_integer.
	* include/ext/slist (assign(_InputIterator, _InputIterator)): Likewise.
	* include/std/std_string.h: Include cpp_type_traits.h instead.

2005-01-30  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/19642
	* config/locale/generic/c_locale.h (__convert_from_v): Switch only
	LC_NUMERIC, and only when actually != "C".

2005-01-28  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (is_function): Minor consistency tweaks.

2005-01-28  Geoffrey Keating  <geoffk@apple.com>

	* testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
	for the compiler.  Don't set cxxflags.
	(v3_target_compile): Search for libv3test.a relative to $objdir.
	(lsearch_all_inline): New.
	(lsearch_all_inline_not): New.
	(v3-list-tests): Rewrite to not need generated files.
	* testsuite/Makefile.am (IGNORE_WCHAR_T): New.
	(IGNORE_THREAD): New.
	(TESTS_TO_IGNORE): New.
	(site.exp): Set tests_to_ignore, cxxflags.
	* aclocal.m4: Regenerate.
	* Makefile.in: Regenerate.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

2005-01-28  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Implement is_empty.
	* testsuite/tr1/4_metaprogramming/type_properties/is_empty/
	is_empty.cc: New.
	* testsuite/tr1/4_metaprogramming/type_properties/is_empty/
	typedefs.cc: Likewise.

	* include/tr1/type_traits (__is_abstract_helper): Simplify a bit.

2005-01-28  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Implement is_abstract, by exploiting the
	resolution of DR core/337.
	* testsuite/testsuite_tr1.h: Add AbstractClass.
	* testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
	is_abstract.cc: New.
	* testsuite/tr1/4_metaprogramming/type_properties/is_abstract/
	typedefs.cc: Likewise.

	* include/tr1/type_traits (is_function): Rewrite, use the conversion
	F& -> F* instead, thus avoiding problems with abstract classes.
	* testsuite/tr1/4_metaprogramming/primary_type_categories/
	is_function/is_function.cc: Add a test for tricky AbstractClass.

2005-01-26  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/mt_allocator.h
	(struct __per_type_pool_policy<,, false>::_S_get_pool,
	struct __per_type_pool_policy<,, true>::_S_get_pool): Scale
	_M_chunk_size too with sizeof(_Tp), otherwise the allocator
	breaks down as soon as sizeof(_Tp) >~ _S_chunk_size / 128;
	reduce to 64 the multiplier for _M_max_bytes (safer wrt
	_Binmap_type being a short); trivial reformattings.
	* testsuite/ext/mt_allocator/check_allocate_big_per_type.cc: New.

2005-01-26  Paolo Carlini  <pcarlini@suse.de>

	* acinclude.m4 ([GLIBCXX_ENABLE_C99]): Add ac_c99_complex
	to the final test for enable_c99, thus robustifying it; remove
	duplicate final test on ac_99_math.
	* configure: Regenerate.

	* include/std/std_complex.h: Remove usages of the dead
	_GLIBCXX_BUGGY_COMPLEX macro.

	* testsuite/26_numerics/cmath/19322.cc: Protect with
	_GLIBCXX_USE_C99_MATH instead of the stronger _GLIBCXX_USE_C99,
	since only C99 math facilities are involved.
	* testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
	Likewise.

2005-01-25  Loren J. Rittle  <ljrittle@acm.org>

	* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin
	instead of generic.  Change autoconf report to "darwin or freebsd".
	* configure: Regenerate.
	* config/os/bsd/freebsd/ctype_inline.h (ctype<wchar_t>::do_is): Add.
	(ctype<wchar_t>::do_scan_is): Likewise.
	(ctype<wchar_t>::do_scan_not): Likewise.

2005-01-25  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_ENABLE_C99): Test for complex math
	functions, and enable _GLIBCXX_USE_C99_COMPLEX_MATH if they exist.
	* acconfig.h: Add _GLIBCXX_USE_C99_COMPLEX_MATH.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* include/std/std_complex.h: Protect complex builtins with
	_GLIBCXX_USE_C99_COMPLEX_MATH.

2005-01-24  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Implement is_signed and is_unsigned.
	* testsuite/tr1/4_metaprogramming/type_properties/
	is_signed/is_signed.cc: New.
	* testsuite/tr1/4_metaprogramming/type_properties/
	is_signed/typedefs.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	is_unsigned/is_unsigned.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	is_unsigned/typedefs.cc: Likewise.

2005-01-23  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 34.

2005-01-23  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/27_io/basic_ostream/cons/wchar_t/9827.cc: New.
	* testsuite/27_io/basic_ostream/endl/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/ends/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/ends/wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/exceptions/wchar_t/9561.cc: Likewise.
	* testsuite/27_io/basic_ostream/flush/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/flush/wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/flush/wchar_t/
	exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/3.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/4.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/4402.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/5.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/6.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/9555-oa.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	wchar_t/exceptions_failbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/
	wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/
	wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/
	wchar_t/3.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/
	wchar_t/4.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/
	wchar_t/5.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/
	wchar_t/6.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/
	wchar_t/9555-oc.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/
	wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/
	wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/
	wchar_t/3.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/
	wchar_t/4.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/
	wchar_t/5.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/
	wchar_t/9318-out.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/
	wchar_t/9424-out.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/
	wchar_t/9555-oo.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
	error_failbit.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
	exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
	exceptions_failbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
	exceptions_null.cc: Likewise.
	* testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/put/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/seekp/char/
	exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/seekp/wchar_t/
	2346-fstream.cc: Likewise.
	* testsuite/27_io/basic_ostream/seekp/wchar_t/
	2346-sstream.cc: Likewise.
	* testsuite/27_io/basic_ostream/seekp/wchar_t/
	exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/sentry/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/sentry/wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/tellp/wchar_t/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/tellp/wchar_t/
	exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/write/wchar_t/1.cc: Likewise.

	* testsuite/data/wostream_inserter_char-1.tst: Likewise.
	* testsuite/data/wostream_inserter_char-1.txt: Likewise.
	* testsuite/data/wostream_inserter_other-1.tst: Likewise.
	* testsuite/data/wostream_inserter_other-2.tst: Likewise.
	* testsuite/data/wostream_seeks-1.tst: Likewise.

	* testsuite/27_io/basic_ostream/endl/char/1.cc: Minor tweaks.
	* testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/exceptions/char/9561.cc: Likewise.
	* testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/flush/char/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/flush/char/
	exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	char/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	char/3.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	char/4.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	char/4402.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	char/5.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/
	char/6.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_character/
	char/4.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/char/
	2.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/char/
	5.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/char/
	error_failbit.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/char/
	exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/char/
	exceptions_failbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/char/
	exceptions_null.cc: Likewise.
	* testsuite/27_io/basic_ostream/put/char/1.cc: Likewise.
	* testsuite/27_io/basic_ostream/seekp/char/
	exceptions_badbit_throw.cc: Likewise.
	* testsuite/27_io/basic_ostream/sentry/char/2.cc: Likewise.
	* testsuite/27_io/basic_ostream/write/char/1.cc: Likewise.

2005-01-23  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (aligned_storage): Use __aligned__ instead
	of aligned.

2005-01-23  Paolo Carlini  <pcarlini@suse.de>
	    Andreas Jaeger  <aj@suse.de>

	PR libstdc++/19343
	* include/bits/functexcept.h: Mark the helpers as 'noreturn'.

2005-01-21  Loren J. Rittle  <ljrittle@acm.org>

	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Allow
	lseek on fifo to succeed.  Thus, check for consistent report.

2005-01-21  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>

	PR libstdc++/19510
	* include/bits/stl_list.h (_List_iterator): Initialize _M_node
	in constructor.
	(_List_const_iterator): Likewise.
	* include/bits/stl_tree.h (_Rb_tree_iterator): Likewise.
	(_Rb_tree_const_iterator): Likewise.

	* testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
	* testsuite/23_containers/set/operators/1_neg.cc: Likewise.

2005-01-20  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/Makefile.am (check-compile): New.
	* testsuite/Makefile.in: Regenerate.
	* scripts/check_compile_time: New.
	* scripts/check_performance: Tweaks.

2005-01-19  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/19535
	* include/tr1/utility (struct __pair_get<1>::__get, __const_get):
	Fix typo in the return type.
	* testsuite/tr1/6_containers/utility/19535.cc: New.

2005-01-19  Loren J. Rittle  <ljrittle@acm.org>

	* include/ext/array_allocator.h (array_allocator<>::allocate):
	Avoid __used.  Use __array_used instead.
	* docs/html/17_intro/BADNAMES: Add list for FreeBSD.

2005-01-18  David Edelsohn  <edelsohn@gnu.org>

	* config/os/aix/os_defines.h (_XOPEN_SOURCE): Delete.
	(_XOPEN_SOURCE_EXTENDED): Delete.

2005-01-18  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/testsuite_performance.h (time_counter::start):
	Clear. Tweaks.
	(clear_counters): Inline.
	(start_counters): Inline.
	(stop_counters): Inline.
	* testsuite/performance/20_util/allocator/map_thread.cc: Return.
	* testsuite/performance/20_util/allocator/insert.cc: Remove bogus
	return, add return.
	* testsuite/performance/20_util/allocator/map_thread.cc: Same.

2005-01-17  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/19433
	* include/bits/stl_tree.h (_Rb_tree<>::insert_unique(iterator,
	const _Val&), _Rb_tree<>::insert_equal(iterator, const _Val&)):
	Obtain amortized constant complexity if t is inserted right after
	p - not before p - as per Table 69.
	* testsuite/performance/23_containers/set_insert_from_sorted.cc: New.

	* testsuite/23_containers/multiset/insert/2.cc: New.
	* testsuite/23_containers/set/insert/1.cc: Likewise.

	* testsuite/performance/23_containers/set_create_from_sorted.cc:
	Simplify.

	* include/bits/stl_tree.h: Add a few missing std:: qualifications.

2005-01-16  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/ext/rope: Qualify calls to std::copy() by sequence_buffer.
	* testsuite/ext/rope/4.cc: Add.

2005-01-16  Lorenz Minder  <lminder@gmx.net>
	    Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/19322
	* include/c_std/std_cmath.h: Define the C99 classification facilities
	directly inside namespace std:.
	* testsuite/26_numerics/cmath/19322.cc: New.

2005-01-15  David Edelsohn  <edelsohn@gnu.org>

	* config/os/aix/os_defines.h (_G_USING_THUNKS): Delete.

2005-01-14  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/19422
	* include/bits/stl_tree.h (_Rb_tree<>::insert_equal(_II, _II),
	_Rb_tree<>::insert_unique(_II, _II)): Use insert_equal (insert_unique,
	respectively) with hint (end()).
	* testsuite/performance/23_containers/set_create_from_sorted.cc: New.

2005-01-13  Geoffrey Keating  <geoffk@apple.com>

	* configure.host (darwin): On darwin8 or later, no need to build
	libstdc++ with -flat_namespace.

2005-01-13  Jonathan Wakely  <redi@gcc.gnu.org>

	* docs/doxygen/user.cfg.in: Set HAVE_DOT back to YES.

2005-01-13  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/26_numerics/cmath/c99_classification_macros_c++.cc:
	Re-enable commented-out test for double type.

2005-01-11  Paolo Carlini  <pcarlini@suse.de>
	    Benjamin Kosnik  <bkoz@redhat.com>

	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): In case
	more than numeric_limits<streamsize>::max() chars are skipped,
	set _M_gcount = max().
	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Likewise; keep simple, don't forward.

2005-01-11  Paolo Carlini  <pcarlini@suse.de>

	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): Revert
	2005-01-05 change: actually, the previous behavior is conforming
	and consistent with that of get(char_type*, streamsize, char_type),
	albeit slightly different from that of 3.3/3.4 in a corner case
	due to the use of snextc.
	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Likewise.
	* testsuite/27_io/basic_istream/ignore/char/4.cc: Remove.
	* testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.

2005-01-11  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits: Implement alignment_of and aligned_storage.
	* testsuite/tr1/4_metaprogramming/other_transformations/
	aligned_storage/aligned_storage.cc: New.
	* testsuite/tr1/4_metaprogramming/other_transformations/
	aligned_storage/typedefs.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	alignment_of/alignment_of.cc: Likewise.
	* testsuite/tr1/4_metaprogramming/type_properties/
	alignment_of/typedefs.cc: Likewise.

2005-01-10  Paolo Carlini  <pcarlini@suse.de>

	* Makefile.in: Regenerate.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

2005-01-10  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (lexicographical_compare):
	Fix concept check.

2005-01-07  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: Remove CCODECVT_H.
	* configure: Regenerate.
	* include/Makefile.am (host_headers_extra): Move to...
	(ext_headers): ...here.
	* include/Makefile.in: Regenerate.
	* include/ext/enc_filebuf: Remove enc_filebuf, consolidate
	enc_traits to...
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
	* include/ext/codecvt_specializations.h: ...here. Remove
	_GLIBCXX_USE___ENC_TRAITS.
	(__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
	(enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
	namespace.
	* config/locale/generic/codecvt_specializations.h: Remove.
	* include/bits/codecvt.h: Remove codecvt_specializations.h include.
	* src/codecvt.cc: Remove __enc_traits::_S_max_size.

2005-01-06  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/fstream.tcc: Remove unnecessary qualifications for
	uglified data members of basic_filebuf, including _M_buf,
	_M_buf_size, _M_mode, _M_pback_init.
	* include/std/std_fstream.h: Same.

2005-01-05  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/testsuite_hooks.h:
	(copy_constructor::mark_call):  Use __throw_runtime_error.
	(assignment_operator::mark_call): Same.
	* testsuite/testsuite_hooks.cc (verify_demangle): Same.
	(locale_data): Remove, just use runtime_error directly.
	(environment_variable): Same.
	(not_found): Same.
	(run_tests_wrapped_locale): Use __throw_runtime_error.
	(run_tests_wrapped_env): Same.
	(semaphore::semaphore): Same.
	(semaphore::signal): Same.
	(semaphore::wait): Same.
	* testsuite/testsuite_abi.h (symbol_error): Remove, use logic_error.
	* testsuite/testsuite_abi.cc (get_symbol): Use __throw_logic_error.
	(create_symbols): Use __throw_runtime_error.
	* src/bitmap_allocator.cc: Use __throw_bad_alloc.

2005-01-05  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Remove child
	process.

2005-01-05  Paolo Carlini  <pcarlini@suse.de>

	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): At the end,
	first check _M_gcount vs __n.
	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Likewise.
	* testsuite/27_io/basic_istream/ignore/char/4.cc: New.
	* testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.

2005-01-03  Mark Mitchell  <mark@codesourcery.com>

	* testsuite/testsuite_hooks.cc: Use __throw_exception_again
	instead of just throw.

	* testsuite/testsuite_hooks.cc: Update coypright and follow style
	guidelines.
	* testsuite/testsuite_hooks.h: Likewise.
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
	semaphores, not sleep.
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
	Likewise.
	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
	* testsuite/27_io/objects/char/7.cc: Likewise.
	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.

	* configure.ac: Check for sys/ipc.h and sys/sem.h.
	* config.h.in: Regenerated.
	* configure: Likewise.
	* testsuite/testsuite_hooks.cc (_GLIBCXX_SYSV_SEM): Conditionally
	define.
	(sys/types.h): Include.
	(sys/ipc.h): Likewise.
	(sys/sem.h): Likewise.
	(__gnu_test::semun): New type.
	(__gnu_test::semaphore::sempaphore): New function.
	(__gnu_test::semaphore::~semaphore): Likewise.
	(__gnu_test::semaphore::wait): Likewise.
	(__gnu_test::semaphore::signal): Likewise.
	* testsuite/testsuite_hooks.h (__gnu_test::semaphore): New class.
	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use
	semaphores, not sleep.
	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: Likewise.
	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc:
	Likewise.
	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
	* testsuite/27_io/objects/char/7.cc: Likewise.
	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.

2005-01-03  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Reset _M_gcount to numeric_limits<streamsize>::min().
	* src/istream.cc (basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): Likewise.
	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize)): Likewise; fix a typo.

2005-01-02  Paolo Carlini  <pcarlini@suse.de>

	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): Avoid
	_M_gcount overflows.
	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Likewise; use snextc in the main loop, consistently
	with the specializations above.

2005-01-02  Chris Jefferson  <chris@bubblescope.net>

	* include/bits/stl_algobase.h (mismatch): Correct concept check.

2005-01-01  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/ext/enc_filebuf/char/13189.cc: Fix, first include
	testsuite_hooks.h, to know whether including ext/enc_filebuf.h.
	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.

2005-01-01  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/27_io/basic_istream/extractors_character/char/1.cc: Fix,
	null-terminate array1 at the outset.
	* testsuite/27_io/basic_istream/extractors_character/wchar_t/1.cc:
	Likewise.
