2005-07-07  Release Manager

	* GCC 4.0.1 released.

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-22  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  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  Paolo Carlini  <pcarlini@suse.de>
	
	PR libstdc++/21726
	* configure.host (abi_baseline_pair switch): Add an entry
	for powerpc64-linux.
	
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:5: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.
	Remove deprecated versions. Do a better job version checking.
	
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-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-06-02  Paolo Carlini  <pcarlini@suse.de>

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

2005-06-02  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-26  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-23  Jonathan Wakely  <redi@gcc.gnu.org>

	* include/debug/string (class basic_string): Add missing
	template arguments; provide typedefs for char and wchar_t.
	(operator[]): Allow s[s.size()] in debug mode, but not
	pedantic mode.
	
2005-05-22  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-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  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-16  Paolo Carlini  <pcarlini@suse.de>

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

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

	Backport:
	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-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/testsuite_abi.cc (compare_symbols): Return a value.
	* testsuite/testsuite_abi.h (compare_symbols): Adjust prototype.
	* testsuite/libstdc++-abi/abi.exp: New file.

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-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  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-05-09  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-05-09  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/testsuite_abi.h (compare_symbols): Return int.
	* testsuite/testsuite_abi.cc: Same.
	
	* 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-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  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.

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

	Backport:
	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-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-05-03  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-05-03  Jonathan Wakely  <redi@gcc.gnu.org>

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

2005-04-30  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>

	* 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-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-25  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-25  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-04-24  Paolo Carlini  <pcarlini@suse.de>

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

2005-04-20  Release Manager

	* GCC 4.0.0 released.

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-17  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Set default for linux
	and bsd to new_allocator.
	* configure: Regenerate.

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-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  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-06  Ulrich Weigand  <uweigand@de.ibm.com>

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

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-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-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-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-22  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  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-17  Benjamin Kosnik  <bkoz@redhat.com>

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

2005-03-08  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-08  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-08  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-06  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-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: Implement 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-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/tr1/functional: Convert relative path.

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

2005-03-02  Jonathan Wakely  <redi@gcc.gnu.org>
	    Benjamin Kosnik  <bkoz@redhat.com>

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

2005-03-02  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-03-02  Jonathan Wakely  <redi@gcc.gnu.org>

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

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  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-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.
